AppsFlyer to Databricks: How to Move Your Data
Move AppsFlyer into Databricks with Airbyte. The 90 day raw report lookback, one source per app, and why the timezone setting shifts your daily numbers.

Moving AppsFlyer into Databricks puts mobile attribution data where it can be joined to everything else and modelled properly. AppsFlyer tells you where installs came from. It does not know what those users went on to spend, how long they stayed, or what they cost to support, and every question worth asking needs all four.
This guide covers the managed path with Airbyte. Three things shape the build and none of them are about Databricks: raw reports reach back only so far, one source covers one app, and a timezone setting quietly decides which day your events belong to.
AppsFlyer to Databricks at a glance:
Why move data from AppsFlyer to Databricks?
Two situations account for most of these pipelines.
The first is true return on ad spend. Attribution tells you a channel produced installs. Your own data knows which of those users subscribed, churned or generated support cost, and the number marketing is actually measured on lives in the join. A lakehouse is a comfortable place for that because raw attribution data is event-shaped and semi-structured.
The second is modelling and machine learning. Cohort analysis, lifetime value prediction and media mix work all want notebooks and Spark rather than a reporting interface. If you only need last month's campaign performance, the AppsFlyer dashboard already shows you that and this pipeline earns you nothing.
What do you need before you start?
Two of these depend on your AppsFlyer subscription rather than on anything you configure:
A V2 API token and an app ID. The token is generated from the AppsFlyer Security Center and generally requires account admin access. The app ID is the identifier shown in your dashboard, which differs by platform: a reverse-domain package name for Android and an ID beginning with a prefix for iOS. The AppsFlyer source documentation lists every field.
The right API access on your AppsFlyer account. Raw data reports and aggregate performance reports are separate permissions, and raw data is a premium AppsFlyer capability rather than something every account has. Confirm what your subscription includes before scoping the project, because this determines which streams return anything.
Your project timezone. Found in the app settings in the AppsFlyer console. The connector has a timezone setting describing the zone in which datetimes are stored, and it needs to match, for reasons covered below.
A list of your apps. Because the app ID is a single required field, one source covers one app. A portfolio of six apps across two platforms is twelve source configurations, and that is worth knowing before you promise a delivery date.
On the Databricks side each stream becomes a table in Unity Catalog and the connector needs permission to create Volumes for Avro staging. Agree the catalog and schema before the first sync, particularly if you are creating a dozen sources that will all write into it.
How do you build an AppsFlyer to Databricks pipeline in Airbyte?
Step 1: Confirm subscription and gather app IDs
Check with whoever owns the AppsFlyer account which API access you have, since raw data reports are a premium capability and aggregate reports are a separate permission. Then collect the app IDs, taking care with platform differences. Doing both first turns the rest into configuration rather than investigation.
Step 2: Configure the AppsFlyer source
Click Sources in the left navigation, then New Source, and select AppsFlyer, following adding a source. Supply the API token, app ID, start date and timezone. Repeat once per app, and name each source clearly, because a workspace containing twelve near-identical AppsFlyer sources is easy to create and difficult to maintain.
Step 3: Configure the Databricks destination
Click Destinations, then New Destination, and select Databricks, following adding a destination. Supply your workspace details, the catalog and schema, and authentication. If you are running several app sources, decide whether they share a schema with the app distinguished by a column, or get their own, because retrofitting that choice across a dozen connections is tedious.
Step 4: Create connections and schedule daily
Click Connections, then New connection, select your streams and a sync mode. Daily is the natural cadence, because attribution data settles over hours as networks report back rather than arriving instantly. Use incremental where available so raw reports accumulate rather than being re-pulled.
Note also what this connector does not extract: ad revenue, postback and fraud protection data are outside its scope. If your attribution analysis depends on any of those, plan a separate route for them rather than expecting this pipeline to cover it.
Why does the raw report lookback matter?
Raw reports have a historical lookback limited to 90 days. That makes the raw half of this pipeline an archive rather than a replication: your lakehouse accumulates event-level detail from the day of your first sync, and anything older is not retrievable through this route.
Aggregate reports are not bound the same way, which produces a slightly odd shape: you can have years of daily campaign totals and only three months of the event-level detail underneath them. Analysts will notice this the first time they try to recompute an aggregate from raw data for last year and cannot.
So set the pipeline up before you need the detail, and tell your analysts where the raw history begins. A dated note in the catalogue saves the conversation where somebody assumes a gap is a pipeline fault rather than a source limitation.
Why is the timezone setting more important than it looks?
Because it determines which day an install or event belongs to, and attribution reporting is almost entirely a daily grain. The setting describes the zone in which datetimes are stored, and your AppsFlyer project has its own timezone configured in the app settings.
Get them out of step and events near midnight land on the wrong day. Nothing errors, the totals still look plausible, and your daily figures simply disagree with what the AppsFlyer dashboard shows by a small margin that nobody can explain. On a metric marketing reports upward, that is a credibility problem rather than a technical one.
Check the project timezone in the AppsFlyer console, set the connector to match, and then reconcile one day's totals against the dashboard after the first sync. Twenty minutes of verification is much cheaper than discovering the discrepancy during a quarterly review.
Frequently asked questions
Can one source sync several apps?
No. The app ID is a single required field, so create one source per app. Name them clearly, because a portfolio quickly produces a dozen near-identical sources.
How far back can I backfill raw data?
Raw reports have a 90 day historical lookback, so an earlier start date does not recover older event-level data. Aggregate reports are not bound in the same way.
Why do my daily numbers differ slightly from the AppsFlyer dashboard?
Most likely a timezone mismatch. Set the connector's timezone to match your AppsFlyer project timezone, found in the app settings, or events near midnight land on the wrong day.
Does this include ad revenue or fraud data?
No. Ad revenue, postback and fraud protection data are not extracted by this connector, so plan a separate route if your analysis depends on them.
Can I do this without writing code?
Yes. The setup above is entirely UI-driven. You will want Spark or SQL models over the landed tables, particularly to union several apps into one view for portfolio-level reporting.
Get your AppsFlyer data into Databricks
Confirm which API access your subscription includes, create one source per app with clear names, match the timezone to your AppsFlyer project, and reconcile a day against the dashboard after the first sync. Then set the pipeline up sooner rather than later, because the raw event detail only reaches back 90 days.
Airbyte's connector catalog includes 600+ pre-built connectors, so attribution data can sit beside product and revenue sources in one lakehouse. For the same source feeding a warehouse, see AppsFlyer to BigQuery, and for another attribution source with its own reporting model, Adjust to BigQuery.
Integrate with 700+ apps using Airbyte
Move data from 700+ sources into warehouses, lakes, and beyond. Set up pipelines in minutes with pre-built connectors and the Connector Builder.
