Connect AppsFlyer

AppsFlyer answers the question Firebase can't: which campaign drove this install? It's the attribution layer (an MMP) that connects ad spend to installs and in-app revenue. VibesFlyer connects AppsFlyer and maps its events to your canonical taxonomy so ROAS reports correctly by campaign.

Before you start

  • An AppsFlyer account with your app registered and its dev key available.
  • Your VibesFlyer project already created.

Connect

Have your agent call connect_provider with provider appsflyer for your project. VibesFlyer auto-discovers your apps and reads the attribution configuration.

Event mappings

Canonical events map to AppsFlyer's rich in-app events:

  • signup_completedaf_complete_registration
  • trial_startedaf_start_trial
  • purchase_completedaf_purchase (with value and currency)

The integration contract specifies the SDK setup and the APPSFLYER_DEV_KEY env var to inject.

iOS privacy

On iOS, attribution is shaped by App Tracking Transparency (ATT) and SKAdNetwork. The contract accounts for this — you'll see deterministic attribution where consent allows and SKAN-based aggregates elsewhere. Don't treat SKAN's delayed, aggregated numbers as a tracking gap.

Verify

Use AppsFlyer's in-app-event testing to confirm events arrive and attribute, then call validate_tracking in VibesFlyer. Campaign spend, installs, and ROAS then flow into your normalized metrics.

Pairing

Keep Firebase for product analytics and AppsFlyer for attribution, with the same canonical events feeding both — see Owned Events vs Provider Events.