← Blog

AppsFlyer Integration: Events, Costs and Partner Checks

An AppsFlyer integration needs three separate checks: the app records the intended events, each advertising partner receives the permitted signals, and cost data imports for the right accounts. Meta, Google, Apple Ads and X have different requirements. A connected account alone does not establish reliable ROAS.

An install can appear in AppsFlyer while its purchase event is missing from Google Ads. Apple Ads attribution can work while campaign costs remain absent. Treating either connection as complete can lead to decisions based on an incomplete funnel.

This guide is for the developer and acquisition manager setting up those connections together. It follows official documentation reviewed on October 9, 2026. The steps below are documentation-based guidance, with acceptance checks you can apply to your own app.

Define the events before connecting partners

Create a short event specification with the action, trigger, parameters, owner and intended recipients. Separate a trial start, first paid purchase and renewal. Decide how cancellations, refunds and duplicate server/client notifications will be handled before assigning revenue to a campaign.

Use the SDK integration guide for your app framework. Confirm the app ID, SDK startup and consent flow. AppsFlyer counts revenue sent in af_revenue; an arbitrary parameter called price is insufficient. Its purchase-validation flow can send a purchase event automatically, so also sending that event manually can duplicate reporting.

For a hypothetical USD 9.99 test purchase, record the event time, currency and transaction reference. Trace it through the app, AppsFlyer and each configured recipient. Check that revenue is recorded once and that a trial has not been counted as a payment. Register the test device according to AppsFlyer’s instructions so repeated installation tests are recognized appropriately.

Connect each partner according to its own requirements

The current entry point is Collaborate > Partner Integrations, then the Marketplace tab. Select the partner and activate its integration. Existing connections appear in the separate active-integrations tab. Keep a dated record of app IDs, account scope, event mappings and attribution windows.

Meta Ads: check the app ID, event mappings and data access

Enter the matching Facebook App ID and map the AppsFlyer events to the intended Meta events. Review which users’ events and which values may be shared under your consent design. Follow the Meta integration instructions for the current settings.

For Android, check the Meta install-referrer requirements, including the supported SDK and decryption key. Do not assume that enabling this option makes every historical attribution record available.

AppsFlyer’s current Meta guide also documents Advanced Mobile Measurement (AMM). Acceptance of the terms affects access to device-level attribution for subsequently attributed users. Previously restricted conversions are not backfilled, and their later in-app events can retain the original restriction. Investigate that distinction before treating missing raw-data fields as an SDK failure.

Create a third-party app-analytics link in Google Ads with AppsFlyer as the provider. Use the correct app and operating system, then add its link ID to the Google Ads integration in AppsFlyer. Android and iOS require separate links.

Next, verify the conversion actions in Google Ads. Import first_open, session_start for re-engagement, and the mapped in-app events you need. Trigger the events before expecting them to be available for import. AppsFlyer documents a possible delay of up to six hours. Follow the Google Ads integration guide, including its platform-specific test instructions.

The September 2026 guide includes additional SDK and Google measurement prerequisites for iOS on-device measurement. Check the supported implementation for your app, including the Firebase or standalone path, before assuming a link ID enables it. Connect cost reporting separately and verify the authorized Google Ads account.

Apple Ads: attribution and cost reporting are separate connections

Apple Ads attribution uses an AdServices token obtained by the SDK and exchanged with Apple’s attribution service. The reporting API supplies campaign metadata and cost data. In AppsFlyer, cost data requires ROI360 access; successful attribution alone does not establish that access. Authorize all required campaign groups in the reporting connection. See the Apple Ads setup guide.

The standard Apple Ads integration has no partner postback settings. Its acceptance check therefore cannot be the same as Meta’s event-delivery check. Marketing-partner integrations are a separate configuration.

There is also a dated reporting change to consider. AppsFlyer documents that, from September 1, 2026, Apple Ads provides engagement timestamps on all attribution claims, allowing configured lookback windows and last-touch rules to apply more consistently. Its change bulletin also says age- or gender-targeted ad groups return a false attribution response. Check that scope when investigating a reporting change around September 1; the change alone does not prove a change in customer acquisition.

X Ads: verify account authorization and migration scope

Follow the X Ads integration guide: accept the Mobile App Conversion Tracking terms, authorize AppsFlyer, select the intended accounts and save the active integration. X requires an account payment method. Set the agreed click and view windows and inspect the event-sharing options. Cost reporting has a separate connection and requires ROI360.

For a migration, X supports only one MMP connection at a time. Plan that handover explicitly using the multiple-MMP limitations. Do not assume two active SDKs provide two comparable, complete datasets.

Accept the integration with evidence from each stage

Keep the test’s app build, device, consent state, timestamp and expected event in one record. These checks answer different questions:

ConnectionEvidence to inspectWhat it establishes
App to AppsFlyerInstall and event records, currency and revenueThe implemented app flow is being measured
MetaEvent mapping and eligible recipient-side event receiptThe permitted signal reaches the configured destination
GoogleLink scope, imported action and its reporting statusThe intended conversion is available to Google Ads
Apple AdsAttribution response and separate reporting-account coverageAttribution and cost/metadata access work independently
XSelected accounts, partner-event settings and cost import statusThe required account and reporting connections are active

An SDK test passing does not establish incremental campaign impact. Nor should a missing cost import be diagnosed by changing event mappings. Resolve the specific failed stage, then repeat that stage’s test.

Read the reports within their measurement limits

Document the date range, timezone, click/view windows and install-versus-event-date basis when reconciling reports. Apple Ads downloads and AppsFlyer first opens can differ. Network claims can also differ from AppsFlyer’s cross-network attribution decision.

For SKAdNetwork, record the conversion-value mapping and the SDK responsible for updating it. AppsFlyer’s SKAN guide describes delayed, aggregated postbacks and privacy-limited detail. A missing conversion value is not necessarily a missing purchase. Check current SDK, network and framework support for your specific iOS setup; a general claim of AdAttributionKit compatibility is not an implementation test.

Keep reporting delay separate from cohort maturity. A complete report for yesterday’s installs still cannot contain their next month’s renewals. Compare cohorts at the same age, and identify observed revenue separately from any lifetime-value forecast.

Budget for the plan and features you need

On the pricing page checked October 9, 2026, Zero covers owned-media measurement. The 12,000 free conversions in the first year belong to Growth’s welcome allowance. Growth then lists US$0.07 per billable conversion, including applicable installs, re-engagements and re-attributions. Organic installs and actions are excluded. Enterprise pricing is quoted separately.

Confirm ROI360, Protect360, raw-data exports and API access in your proposed package. A working trial feature does not establish that it is included after the trial. Forecast billable conversions and required add-ons together.

If you are still choosing a provider, use our Adjust and AppsFlyer comparison and Adjust setup guide. If the measurement is working but growth is not, our free 90-second growth diagnostic helps assess all four funnel stages. Our paid advertising and mobile data and attribution services cover implementation and reporting work when you need help tracing a specific gap.

Growing an app? We do this all day.

One client added 242,279 installs in 16 weeks. Another's ASO overhaul lifted downloads more than 900%. Store listing, paid UA, and retention, run as one loop.

Teegan Johnson, Founder & Chief Growth Officer, will follow up by email about your request. Unsubscribe anytime. Privacy

Prefer to talk first? Book a 30-minute call instead.

See mobile app marketing →

Add us as a preferred source on Google

A free Google setting to see more of our relevant articles in your own search experience. You can change it any time.