ASOhack
Back to Blog
Methodology

The Hard Truth About Mobile App Revenue Attribution (2026)

Every attribution system lies a little. The framework indie developers can use to interpret SKAN, MMP data, and per-network reporting honestly — without overclaiming or underclaiming.

ASOhack TeamMay 19, 20266 min read

Mobile attribution is messy in 2026. Apple's SKAdNetwork shows you aggregated cohorts. MMPs combine multiple signals. Network dashboards each claim credit. The result: you can't precisely tell which channel drove which dollar.

This is the working framework for thinking about attribution honestly.

The fundamental attribution problem

Three users install your app from different channels:

  • User A: clicks Meta ad → installs → pays $9.99.
  • User B: clicks TikTok video → searches App Store → installs → pays $19.99.
  • User C: hears about app from friend → searches App Store → installs → pays $9.99.

Attribution systems:

  • Meta says: 1 install, $9.99 revenue.
  • TikTok says: 1 install, $19.99 revenue (or thinks it didn't drive).
  • App Store organic: 1 install, $9.99 revenue.

But who actually drove each install? The full truth is messier:

  • User A might have been "ready" anyway; ad just timed it.
  • User B was driven by TikTok content but converted via search.
  • User C found the friend's recommendation valuable but searched separately.

Single-touch attribution misses the messy reality.

The three attribution models

Last-click attribution

The most common model. Whoever delivered the final click gets credit.

  • Meta clicked → installed: Meta gets credit.
  • TikTok viewed → searched → installed: App Store gets credit.

What it captures: short, single-channel funnels. What it misses: multi-channel + brand effects.

First-touch attribution

The original channel gets credit, regardless of intermediate.

  • TikTok viewed → searched → installed: TikTok gets credit.

What it captures: upper-funnel + brand-driving channels. What it misses: short attribution windows.

Multi-touch attribution

Distribute credit across all channels touched.

  • Meta + TikTok + organic: each gets partial credit.

What it captures: more realistic. What it misses: requires sophisticated tracking; SKAN doesn't enable this well.

SKAdNetwork specifically

Apple's SKAN system (since iOS 14.5):

What SKAN gives you

  • Aggregated cohort-level data per ad network.
  • Conversion-value mapping (your defined 0-63 values).
  • Postbacks at conversion windows.

What SKAN doesn't give you

  • Per-user attribution.
  • Revenue precise per user.
  • Cross-channel attribution.

What this means

You see "Meta delivered 100 installs with conversion value distribution: 50 = 0, 30 = 1, 20 = 4." But you can't tie revenue to specific users from specific ads.

For most indie apps: this is acceptable. You optimize cohorts, not users.

Per-network attribution (Apple Search Ads, etc.)

Within each network's dashboard:

  • Apple Search Ads: accurate (Apple controls the entire chain).
  • Meta SKAN reporting: based on SKAN postbacks.
  • TikTok SKAN reporting: same.
  • Google App Campaigns: SKAN + Android first-party.

Each network claims credit for installs it can attribute. Sum across networks = often > actual installs (multi-claim).

MMP (Adjust, AppsFlyer, Singular) attribution

MMPs aggregate signals:

  • SKAN postbacks.
  • Probabilistic attribution (for some).
  • First-party post-install events.
  • Custom tracking.

MMPs deduplicate cross-network attribution. Best for advertiser-side truth.

See MMP comparison.

What "true" attribution would require

If you could see everything:

  • Every user's pre-install touchpoints.
  • Causal weight of each touchpoint.
  • Counterfactual ("would user have installed without this touchpoint?").

This is impossible (privacy, technical, philosophical).

So all attribution is approximation. The question: how much error is acceptable?

How to reason about your attribution

Step 1: pick a model

Last-click is most common for indie scale. Multi-touch requires MMP + more setup.

Step 2: trust within a channel; doubt across channels

Apple Search Ads' internal attribution: trust it. Meta's reported installs: trust them for Meta-driven users. But: sum of all network claimed installs > actual installs. Deduplicate.

Step 3: account for organic uplift

If your blended CPI is X, but you suspect 30% of "paid" installs would have come organically anyway, your "incremental" CPI is higher.

Hard to measure precisely. Use incrementality testing or back-of-envelope estimation.

Step 4: focus on directional signals

Don't obsess over precise attribution. Look at:

  • Channel X CPI moving up: investigate.
  • Channel Y ROAS strong: scale.
  • Organic baseline growing: ASO working.

Directional > precise.

What attribution honesty looks like

Honest claim

"Apple Search Ads drove 200 paid installs at $8 CPI, with D30 ROAS of 80%."

Inflated claim

"We doubled our installs this month thanks to Meta."

Without baseline + attribution methodology, the second claim is noise.

Honest framing

"We saw a 50% increase in installs. We invested in Meta (40% of which we attribute to Meta), refreshed our App Store listing (~30% of which we attribute to ASO improvements), and shipped a major feature (~30% of which we attribute to product). Causality is partial; attribution is approximate."

This is what real ASO retrospective looks like.

Common attribution mistakes

Mistake 1: trusting any single source

App Store Connect, Meta dashboard, MMP — each has biases.

Mistake 2: ignoring SKAN limits

SKAN gives aggregate; some founders treat as per-user. Off.

Mistake 3: double-counting

Summing across networks without deduplication.

Mistake 4: ignoring organic baseline

Treating all paid acquisition as fully incremental. Often 20-40% would have come organically.

Mistake 5: trusting probabilistic attribution

Some MMPs offer probabilistic attribution despite Apple restrictions. Gray area; risks.

Mistake 6: stopping channels based on weak signal

A channel with "no SKAN postbacks yet" isn't necessarily failing — SKAN postbacks come days/weeks after install.

The right level of investment

For indie scale ($5-50k MRR):

  • Trust App Store Connect for organic.
  • Trust Apple Search Ads dashboard for ASA.
  • Per-network dashboards for paid channels.
  • Don't worry about precise multi-touch attribution.

At larger scale ($50k+ MRR):

  • Add MMP for deduplication.
  • Layer in cohort retention analysis.
  • Worry less about per-channel precision.

What to actually act on

Despite attribution complexity:

  • CPI per channel: trust each network's reporting; don't combine.
  • D30+ retention per cohort: more reliable than install attribution.
  • LTV/CAC: rough but actionable.
  • Trend lines: more reliable than absolute numbers.

Optimize based on these, not on attribution claims.

Run an audit

ASO contributions are easier to attribute than paid acquisition. Listing changes affect conversion measurably. Run free ASO audit and track conversion changes.

Try the tools

Ready to Optimize Your App Store Listing?

Try our free ASO tools — no signup required.