Frequently asked questions

How attribution works without an SDK, how accurate it is, and what happens to personal data along the way.

How can you attribute an install with no SDK in the app?

Your ad links to your own click endpoint instead of straight to the store. That request records the platform click ID, the IP address, the user agent and any campaign parameters, then redirects to the App Store or Play Store. When your app posts its first event, the service matches that event back to the stored click — exactly if your app can pass the click ID, otherwise by hashing IP plus operating system, OS major version and device model and looking for a recent click with the same fingerprint.

How accurate is fingerprint matching?

It is probabilistic, and it is worth being clear about that. Two devices of the same model behind one household NAT can be confused with each other. Exact click-ID matching is always preferred and is used whenever your app can pass a click ID through a deep link. This tradeoff is inherent to server-side deferred deep linking without a mobile measurement partner.

What happens to installs that do not match a click?

They are recorded as organic and are never forwarded to Meta or TikTok. Only conversions traced back to a real ad click are reported to the ad platforms.

Does an event ever go to more than one platform?

No. An event is forwarded only to the platform whose click it was matched to — Meta, TikTok or Pinterest, never more than one. Fanning a single conversion out to several platforms would inflate all of their reported results.

What happens to email addresses and phone numbers?

They are normalised and hashed with SHA-256 on the server, and the hash is sent only to the matched platform. Raw values are never logged and never stored. Your app can also send values it has already hashed, in which case raw personal data never leaves the device at all.

Where are the platform access tokens kept?

In Google Secret Manager. The per-app configuration document stores only the name of the secret, never the token itself. The same rule applies to the dead-letter records written when a platform rejects an event: the payload is stored for replay with the token stripped out.

What happens if Meta, TikTok or Pinterest is down when an event arrives?

Your app still gets a success response. Forwarding is retried inline, and if it still fails the payload is written to a dead-letter collection for replay. Apps should never retry-loop because of a problem on the reporting side, and every event carries a deduplication ID so a replay cannot double-count.

Do I need to change my app to add another product to it?

No. One deployment serves many apps. Adding an app is a configuration document plus an API key, created from the dashboard — no code changes to the service and no redeploy.

Can I track influencer posts and bio links, not just paid ads?

Yes. The dashboard issues named short links, one per influencer or campaign, and reports clicks, installs, signups, purchases and revenue per link. A link can be track-only, which counts everything for reporting but never forwards anything to an ad platform.

Ready to wire up an app?

Two steps: create the app in the dashboard, then send events from the app.