Amplitude learning guide
By the end of this chapter
  • You can explain how the integration works and how both tools recognise the same person.
  • You will know which analyses the integration enables and where its limits are.
  • You can break an Adjust–Amplitude gap into independent causes and classify them.

How the integration works

Adjust finds the source; Amplitude stores it as a property of the user Ad networkclick / impression AppAdjust SDK +Amplitude SDK Adjustassigns install to sourcenetwork, campaign, … Amplitudeattribution written to the sameuser as user properties integration behaviour events come straight from the Amplitude SDK; a shared ID ties both sides to the same person
Adjust does attribution on its side and sends the result to Amplitude. For this to work, the data Adjust sends has to match the right user in Amplitude.

The critical point of the integration is identity matching. Adjust works with its own device identifiers, Amplitude with its own device_id and user_id. For the attribution data Adjust sends to land on the right Amplitude user, the two sides need to share an identifier; usually the app passes Amplitude's ID to the Adjust SDK as a parameter.

Verify

Which ID is passed to Adjust with which parameter, how to enable the Amplitude module in the Adjust dashboard, and which fields arrive in Amplitude under which names are described in Adjust's Amplitude partner documentation. There may be differences per platform (iOS, Android, web). Check both sets of documentation before setting it up.

What the integration makes possible

Once the acquisition channel is a user property in Amplitude, every chart can be split by channel. The UA team's question "which channel brings better users?" gets answered with behaviour, not just installs and revenue.

Two quality metrics by acquisition channel. sample data TikTok may bring the cheapest installs, but if onboarding completion and day-7 return rates are low, cost per install is misleading.
QuestionAmplitude chartField from Adjust
Which channel's users complete onboarding more often?Funnel, broken down by channelNetwork
Users from which creative are more loyal?Retention, broken down by creativeCreative / adgroup
Which features do campaign users use?Segmentation or Journeys, with a cohort filterCampaign
How much do paid channels contribute to the active audience?Lifecycle, "new" group by channelNetwork

Limits

  • Unattributed users: users Adjust cannot assign to a channel at device level (e.g. part of iOS users who decline ATT) appear in Amplitude as organic or with an empty channel. Channel breakdowns don't include this audience.
  • SKAN data: SKAdNetwork data is aggregated, so it cannot be tied to individual users and cannot be carried into user-level analysis in Amplitude.
  • Reattribution: if a user is later reattributed to another campaign, whether the Amplitude user property keeps the first or the latest source depends on how the integration is set up.
On the Adjust side

These are limits you already know from Adjust; the integration doesn't remove them, it just carries them into Amplitude. When presenting channel-level Amplitude analysis to a client, state the size of the unattributed audience too.

Why don't the numbers match?

When a client compares Adjust installs with Amplitude new users, they see a gap. The right approach is the same as in Adjust discrepancy work: don't average the gap away; break it into independent causes and classify each.

Source of differenceAdjustAmplitudeClass
Counting unitInstall (device and attribution rules)Unique person (merged identity)Definition
Multiple devicesEach device is a separate installOne person with the same user_idDefinition
User who came via web firstNew install when the app is installedAlready known userDefinition
SDK init timingFirst sessionIf the app starts Amplitude late, early leavers are lostIntegration
Consent / opt-outIts own consent rulesDepends on when the app disables AmplitudePolicy
TimezoneDashboard / report settingProject settingSetting
Test devices and internal trafficSandbox split, test devicesSeparate project or filterSetting
RevenueAdjust revenue event, purchase verificationAmplitude revenue field or propertyDefinition / integration

Example breakdown

The waterfall below shows, cause by cause, how 10,000 Adjust installs in one week turn into Amplitude's new user count.

Definition Integration (fixable) Policy Setting Unexplained
A one-week example breakdown. made-up numbers The vertical axis starts at 8,000 so small differences are visible. Each bar is one independent cause and its class. In a real analysis each cause comes with its own evidence (query, export, SDK configuration), and the unexplained remainder is stated separately.
Don't write causes without evidence

Only draw a bar if you can measure it. For example, you can measure the multi-device effect by counting user_ids linked to more than one device_id. Write a cause you can't measure separately as "possible" and leave the rest as unexplained.

A frame for explaining it to the client

  1. Define what each tool counts in one sentence: an install is device-based, a new user is person-based.
  2. Break the gap into measured causes and give the size of each.
  3. Classify each cause: definition (expected), policy (deliberate choice), integration (fixable).
  4. For fixable ones, propose a concrete action (e.g. initialising the Amplitude SDK earlier).
  5. Recommend which tool's number to use for which decision: Adjust for channel budgets, Amplitude for product decisions.
Exercise

Take the Adjust install count and Amplitude new user count for the same week in your test app. First sketch an estimated waterfall, then try to measure each bar with a query. List the ones you can't measure separately.