Skip to content

AppsFlyer integration validation ​

Audience: UA managers, advertisers, agencies, anyone signing off a launch

Run this page before you launch, and again whenever someone changes the AppsFlyer tile, the landing page, or your event list.

Rules come in two tiers:

  • Required — the integration does not work, or delivers data RevoSurge cannot use. Launch is blocked.
  • Recommended — the integration works, but optimization or support is degraded. Launch is not blocked.

NOTE

Every setting listed in Required settings at a glance is required by RevoSurge. This page adds a second axis: which failures stop the integration from functioning, and which quietly cost you performance. A rule in the recommended tier is still a setting you are expected to fix — it just does not hold up a launch.

Each rule has a stable ID. RevoSurge dashboard errors reference these IDs and link to the matching resolution below, and the IDs are identical in every language of this page.

Required rules ​

IDRuleWhat breaks if it fails
AF-R-01Partner is activated on the RevoSurge tileNo attribution, no postbacks — nothing reaches RevoSurge
AF-R-02Probabilistic attribution is on (app-level)Most RevoSurge installs land as organic; see the resolution for why this is severe here
AF-R-03Advanced Privacy is off (iOS apps)Postbacks arrive without the device and click IDs, so they cannot be tied to the click that earned them
AF-R-04Click-through lookback is 7 daysInstalls outside the shortened window are attributed elsewhere or to organic
AF-R-05The default install postback is enabledRevoSurge receives no installs
AF-R-06In-app event postbacks are enabledNo post-install signal, so no conversion measurement and no optimization
AF-R-07AppsFlyer event names map exactly to RevoSurge partner event namesPostbacks are delivered and then dropped as unrecognised — indistinguishable from no conversions
AF-R-08Revenue events are set to Values & revenueEvents arrive without amounts; ROAS and value-based optimization are impossible
AF-R-09The web tracker is live on the landing page and the product shows ActiveNo click is forwarded, and the product cannot be selected in AdWave
AF-R-10An AppsFlyer App ID is set for every platform you promoteNo click is forwarded for that platform; AppsFlyer records the installs as organic
AF-R-11The product's MMP source in AdWave is AppsFlyerNo click is forwarded, whatever the landing page carries
IDRuleWhat it costs
AF-O-01In-app event postback window is Lifetime (floor: 6 months)Later-funnel events fall outside the window and never train the model
AF-O-02Default postbacks send all media sources, including organicOptimization runs against RevoSurge's own output, with no baseline to compare against
AF-O-03In-app postbacks send all media sources, including organicSame, for post-install events
AF-O-04View-through attribution is on, with a 24-hour view-through lookbackNothing today — configuration hygiene; see the resolution
AF-O-05RevoSurge holds the three aggregate read permissionsEvery discrepancy becomes an exchange of screenshots
AF-O-06RevoSurge holds the two configure permissionsEvery fix routes through your team as written instructions
AF-O-07RevoSurge holds View validation rulesA misconfiguration is found after it has cost spend, not before
AF-O-08RevoSurge has Protect360 access, if you own Protect360Fraudulent installs look like installs that never happened, so the source keeps getting bought

Required resolutions ​

AF-R-01 — Partner is not activated ​

Fix: Collaborate → Partner Marketplace → RevoSurge tile → Integration → set Activate partner to ON.

Leave it on for as long as campaigns run. Switching it off is a disconnect, not a pause.

AF-R-02 — Probabilistic attribution is off ​

Fix: App Settings for the app → enable probabilistic attribution (formerly "fingerprinting"). This is app-level, not inside the RevoSurge tile.

Why this is required rather than recommended: RevoSurge clicks reach AppsFlyer from your landing page in a browser, and a browser cannot supply the device advertising ID a deterministic match needs. With this off, deterministic matching catches a small fraction of genuine installs and the rest arrive as organic — the integration is technically working and materially useless.

AF-R-03 — Advanced Privacy is on ​

Fix: RevoSurge tile → Integration → set Advanced Privacy, and Aggregated Advanced Privacy if your account shows it, to OFF. iOS apps only.

If your legal or compliance team owns this setting, resolve it with them before launch rather than at go-live.

AF-R-04 — Click-through lookback is shorter than 7 days ​

Fix: RevoSurge tile → attribution settings → set click-through lookback to 7 days.

If your other partners run different windows, raise it with your RevoSurge account manager instead of changing this unilaterally — mismatched windows surface as a discrepancy between dashboards, not as an error.

AF-R-05 — The default install postback is off ​

Fix: RevoSurge tile → Default postbacks → enable Install.

Also enable Re-engagement while you are here. For the sending option, see AF-O-02.

AF-R-06 — In-app event postbacks are off ​

Fix: RevoSurge tile → turn in-app event postbacks to ON, then map your funnel events.

AdWave campaigns optimize toward a target event (Register or Deposit). Without in-app postbacks that event never arrives, so the campaign has nothing to optimize against.

AF-R-07 — Event names do not match ​

Fix: RevoSurge tile → in-app event postback mapping → map each AppsFlyer event to the exact RevoSurge partner event name your account manager gave you.

Matching is exact and case-sensitive: deposit and Deposit are two different events. A mismatch does not error — the postback is delivered, then dropped as unrecognised, which looks identical to "no conversions" on your dashboard. If your app has never fired an event, it will not appear in the mapping screen at all; fix that on your side first.

AF-R-08 — Revenue events carry no values ​

Fix: RevoSurge tile → in-app event postback mapping → for every purchase, deposit, or revenue event, set the value option to Values & revenue.

Required for any campaign with a deposit, purchase, or revenue goal. Non-monetary events can stay on values-only.

AF-R-09 — The web tracker is not live ​

Fix: Install the tracker on your landing page — see Install the Web Tracker — and confirm the product reads Active under Manage Product.

A product stays Inactive until its tracker receives its first event, and an inactive product cannot be selected in the AdWave campaign flow. Check the tracker also fires on every route that RevoSurge traffic can land on, not just the page you tested.

AF-R-10 — An AppsFlyer App ID is missing ​

Fix: In the web tracker init on your landing page, set androidAppsFlyerId and/or iOSAppsFlyerId — see Click forwarding.

Set the platforms you actually promote; the two fields are independent. This failure is silent on both dashboards: RevoSurge shows clicks, AppsFlyer shows the installs as organic.

AF-R-11 — The MMP source in AdWave is not AppsFlyer ​

Fix: In RevoSurge, open the product in AdWave and set MMP source to AppsFlyer.

Product-level, set once per product. Unset — or set to a different MMP — and the App ID on your landing page is never used.

AF-O-01 — Postback window is shorter than Lifetime ​

Fix: RevoSurge tile → set the in-app event postback window to Lifetime. If your account cannot select it, the floor is 6 months.

AF-O-02 — Default postbacks are restricted to this partner ​

Fix: RevoSurge tile → Default postbacks → set the sending option on Install and Re-engagement to all media sources, including organic (AppsFlyer wording: events attributed to any partner or organic).

Restricting postbacks to RevoSurge-attributed events leaves our models optimizing against their own output, with no unattributed or organic baseline to separate the volume we caused from the volume that would have happened anyway.

AF-O-03 — In-app postbacks are restricted to this partner ​

Fix: Same screen, in-app event section — set the sending option to all media sources, including organic.

AF-O-04 — View-through attribution is off ​

Fix: RevoSurge tile → set Install view-through attribution to ON and the view-through lookback to 24 hours.

RevoSurge forwards clicks only, so this changes nothing about how your current RevoSurge traffic is attributed. It is in the set so the tile does not need revisiting later. View-through installs attributed to RevoSurge should be zero — that is expected, not a failure.

AF-O-05 — RevoSurge lacks aggregate read access ​

Fix: RevoSurge tile → Permissions → grant Access aggregate conversions, in-app events, and revenue. See Partner permissions.

Without it we see only what postbacks delivered, so we cannot tell a genuine attribution gap from a postback that never arrived.

AF-O-06 — RevoSurge cannot configure the tile ​

Fix: RevoSurge tile → Permissions → grant Configure integration and Configure in-app event postbacks.

AF-O-07 — RevoSurge cannot see validation rules ​

Fix: RevoSurge tile → Permissions → grant View validation rules.

AF-O-08 — RevoSurge has no Protect360 access ​

Fix: RevoSurge tile → Permissions → grant Access Protect360 dashboard and raw data. Applies only if you own Protect360.

Two things this page cannot check ​

  • Whether real traffic flows end to end. Every rule above is a configuration check. Passing all of them proves the setup is correct, not that a click produced an install postback. That test belongs to Handoff & go-live.
  • Discrepancies between the two dashboards. Some difference is by design — see Reconciling AppsFlyer against RevoSurge before opening a ticket.

Next steps ​

Rules green? Continue to Handoff & go-live — it lists what to send your account manager, the end-to-end test that proves real traffic works, and the later changes that will silently break this setup.