Send AppIn clicks to AppsFlyer
If your link already points at a OneLink, AppsFlyer is recording your clicks today. This page is about the case where it is not.
First, the good news: you may not need to do anything
If your AppIn link’s target is a OneLink (*.onelink.me), the visitor passes through
it on the way to the store and AppsFlyer records the click itself. That is the
strongest attribution path there is, because the device’s own address and browser
reach AppsFlyer directly. Nothing on this page is required for it.
When you do need this
If you would rather send visitors straight to the store — one hop fewer — AppIn can report the click to AppsFlyer from its own servers instead. Then you need:
| Field | Value | Notes |
|---|---|---|
| iOS app ID | id123456789 | The id prefix is required. See below |
| Android app ID | com.example.app | Your Play package name |
| Media source | appin by default | Any label you want this traffic filed under |
iOS and Android are two records, not two spellings
AppsFlyer holds the same product as two separate apps: iOS as id123456789, Android
as the package name. Enter both, or clicks from the platform you left out will never
arrive.
The one that bites: the id prefix
An iOS app ID without its id prefix is accepted and silently ignored. AppsFlyer’s
own developer reference
says to prefix iOS apps with id; we measured what happens if you don’t, against a
real account on 2 September 2026: an invented but well-formed id0000000000 is
answered 200 OK exactly like the correct ID, while an invented Android package is
answered 404. On iOS there is no signal at all telling you the ID is wrong.
That is why AppIn refuses to save an iOS app ID without the prefix. It is the only place the mistake can be caught.
You do not need to be an AppsFlyer partner
Approved-partner status exists so postbacks can flow back to an ad network. Nothing flows back here: the click is recorded in your AppsFlyer account, under an ordinary non-integrated media source.
How to check it worked
AppsFlyer, Raw Data → Clicks, filtered to your media source. If your plan does
not include the raw clicks report, use Overview or the
partners_by_date_report — a row for your media source with a click count is the
confirmation.
Two things to expect while checking: the aggregate reports lag, so allow around
twenty minutes; and an empty report on its own does not prove the click failed, in
the same way that a 200 does not prove it succeeded.
Branch, Adjust and Singular
Pointing your link at their link works today, exactly like the OneLink case above. Server-side click reporting is currently AppsFlyer only.