Privacy
What the SDK sends, what it stores on the device, and what it never touches.
The SDK is built to collect as little as possible. This page lists exactly what it does, so you can fill in your App Store privacy details and Google Play data safety form with confidence.
What the SDK sends
Every request goes to the Lander API (api.golander.link) over HTTPS.
| Data | When |
|---|---|
| The install ID (a random UUID v4) | Every request |
Platform (ios or android), app version, OS version, SDK version | Each launch report (POST /v1/sdk/init) |
| Whether this is the first launch | Each launch report |
| The Play Install Referrer string | Android first launch only |
| The URLs that opened the app | When a link is resolved |
| The events you track, with the properties you pass | When the event queue flushes |
| The short links you create, with the fields you pass | createLink |
The user ID you pass to claimHandoff | claimHandoff (Lander stores only a salted hash) |
The device model, locale, advertising IDs (IDFA, GAID) and any device fingerprint are not collected. The SDK never reads the pasteboard.
What the SDK stores on the device
A few small files: the install ID, a first launch marker and the event queue. They live in Application Support on iOS and noBackupFilesDir on Android, excluded from iCloud and Android backups, so they never move to another device. They are deleted when the app is uninstalled.
Deferred links without fingerprinting
- Android uses the Play Install Referrer, which Google Play provides for exactly this purpose.
- iOS deterministic flows depend on an explicit tap (the Continue in app page) or on your own sign in (authenticated handoff).
- Probabilistic matching is off unless the project turns it on. It compares only OS major version, country and click time. IP matching is a second opt in that compares a keyed hash of the network, never the IP address, deleted within 7 hours. The SDK itself sends nothing extra for either.
If you turn on probabilistic matching, and IP matching in particular, make sure your privacy policy and store disclosures cover it. See Deferred deep linking.
iOS privacy manifest
The plugin ships PrivacyInfo.xcprivacy, which Xcode merges into your app's privacy report:
| Collected data type | Linked to the user | Used for tracking | Purposes |
|---|---|---|---|
| Device ID | No | No | Analytics, App Functionality |
| Product Interaction | No | No | Analytics |
NSPrivacyTracking is false, NSPrivacyTrackingDomains is empty and no required reason APIs are used. The SDK never reads the advertising identifier, so it never asks for App Tracking Transparency permission. If you turn on IP matching, check that your use of it is consistent with Apple's App Tracking Transparency rules.