Deeplinkly

Glossary/Attribution mechanics

Self-attributing network

Definition

A self-attributing network is an advertising platform that performs attribution on its own servers and reports the installs it claims to have caused, rather than passing a click identifier for a third party to match.

Google, Meta, Apple Search Ads, TikTok, Snap and X all work this way. The distinction matters because a SAN does not send you a click you can match — it sends you an answer. Your measurement stack's job with a SAN is not to attribute the install but to ask the network whether it wants to claim one, and then to decide what to do when several say yes.

How a SAN handshake differs from a tracking link

With an ordinary network you own the click. The ad points at a link you control, that link carries a click ID, and the install is matched against your own record — deterministic attribution in the plain sense. With a SAN, the click never touches your infrastructure. The ad opens the store directly, and the matching happens inside the network's own logged-in graph.

The two integration shapes, step by step.
StepTracking-link networkSelf-attributing network
Click lands onYour link, then the storeThe store, directly
Click ID stored byYouThe network only
Install detected byYouYou
Match performed byYouThe network
What you sendNothingAn install probe with device identifiers
What you receiveA matched click recordA yes or no, plus campaign metadata
Can you audit the match?Yes, row by rowNo — you get the conclusion

That final row is the whole trade. You gain access to inventory that no tracking link can reach, and you give up the ability to check the working. This is why the SAN relationship is normally mediated by a certified measurement partner: certification is the network's mechanism for trusting the probe, and the industry's mechanism for the answers being applied consistently.

Which platforms are SANs, and what each requires

The major self-attributing networks and the integration each expects. Programme names and requirements change — verify against the network's current documentation before building.
NetworkSignal it matches onIntegration route
MetaIts own logged-in graph, plus the Meta install referrer on AndroidCertified MMP, or direct app-events API
Google AdsGoogle account graph and Play install referrerCertified partner, Firebase, or Google Analytics
Apple Search AdsApple's own attribution API on deviceAdServices framework, first-party, no MMP required
TikTokIts own graphCertified partner or Events API
SnapIts own graphCertified partner
XIts own graphCertified partner

Apple Search Ads is the outlier worth knowing about: attribution runs through the on-device AdServices framework, which returns a token your own server exchanges with Apple. No third party is required, and the response is first-party data you can audit — closer to a tracking link than to a classic SAN handshake despite Apple performing the match.

Apple Search Ads attribution without a measurement partner
import AdServices

// The token is generated on device and is valid briefly.
// Exchange it server-side; never trust a client-reported attribution result.
func fetchAttributionToken() -> String? {
    do {
        return try AAAttribution.attributionToken()
    } catch {
        // Simulator, missing entitlement, or the API being unavailable
        // on this OS version all land here. Fail open: report unattributed
        // rather than guessing a campaign.
        return nil
    }
}

We are not a certified MMP, and say so

Deep link infrastructure and SAN certification are different products with different obligations. If your growth model depends on Meta or Google claiming installs, you need a certified measurement partner for that relationship. What we provide is the link layer underneath it — the routing, the deferred hand-off and the first-party click record that stays yours regardless of which network claims the install.

When two networks claim the same install

They will. A user can see a Meta ad, search on Google, and install — and both graphs contain a plausible touch. Because each SAN answers only about itself, the tie is broken by a priority order applied outside them, normally by the measurement partner, using each network's declared attribution window and touch type.

A typical resolution order. The ranking is a policy choice, and changing it moves budget between channels without any change in user behaviour.
RankTouchRationale
1Deterministic click on your own tracking linkYou hold the evidence
2SAN click within its click windowExplicit user action, network-attested
3Apple Search Ads tokenFirst-party, verifiable server-side
4SAN view-throughWeakest causal claim
5Nothing qualifiesReport as organic, not as a guess

The rows that cause arguments are 2 and 4. A SAN reporting a view-through install inside a generous window will out-claim a genuine organic install every time it is ranked above nothing, which is why the view-through share per network is worth monitoring as its own metric rather than folded into a campaign total.

Expect network dashboards to sum to more than your install count, permanently. Each SAN is answering "did I plausibly cause this?" in isolation, and several can honestly answer yes. The reconciliation is not a bug to fix — it is the arithmetic of asking several parties the same question.

What to keep under your own control

  • Your own click record for every link you own, so at least one column in the report is auditable.
  • A single install definition, applied identically to SAN-claimed and organic installs.
  • The priority order, written down and version-controlled, because it is a budget policy.
  • Per-network view-through share, tracked over time.
  • A periodic holdout, since no SAN's self-report can measure its own incrementality.

None of this makes SANs untrustworthy. It makes them what they are: parties with an interest in the answer, reporting on themselves under rules they publish. The failure mode is not deception — it is a team treating six self-reports as if they were one ledger.

UTM builder

The one column in a SAN-heavy report you can actually audit is the one from links you own. This builds correctly-encoded campaign URLs whose parameters survive the redirect chain, so every non-SAN touch has a first-party record to check the network's claim against.

Open the utm builder

Frequently asked questions

What is a self-attributing network?
It is an ad platform such as Meta, Google Ads or TikTok that performs attribution on its own servers and tells you which installs it believes it caused, instead of handing you a click identifier to match yourself. Your stack sends the network an install probe and receives a claim, so the matching logic stays inside the network.
Which networks are self-attributing networks?
The main ones are Meta, Google Ads, Apple Search Ads, TikTok, Snap and X. Apple Search Ads is a partial exception because attribution runs through the on-device AdServices framework and returns a token your own server can exchange with Apple directly, which makes the result first-party and auditable without a third party.
Why do two networks claim the same install?
Because each one answers only about itself. A user who saw a Meta ad and later clicked a Google ad appears in both graphs, and both can honestly report a qualifying touch inside their own window. A priority order applied outside the networks decides who gets the credit, which is why network dashboards will always sum to more than your actual install count.
Do I need a certified MMP to advertise on a SAN?
For Meta, Google, TikTok, Snap and X, attribution reporting generally runs through a certified measurement partner or the platform's own analytics product, because certification is how the network decides to trust an install probe. Apple Search Ads is the exception: the AdServices framework lets you attribute first-party with no third party involved.
Can I audit a self-attributing network's claims?
Not row by row, because you never see the click that produced the match. What you can do is measure the shape of the claims — the view-through share, the click-to-install time distribution, and the movement in your organic line when a campaign starts — and run periodic geo holdouts, which is the only method that tests a network's incrementality rather than its self-report.

Related terms

  • Deterministic attributionDeterministic attribution credits an install to a specific click by matching an identifier that is present in both records, producing a one-to-one link rather than a statistical estimate.
  • View-through attributionView-through attribution credits an install or conversion to an ad impression the user saw but never clicked, provided the conversion happens inside a view window that is usually much shorter than the click window.
  • Attribution windowAn attribution window is the length of time after an ad click or impression during which a resulting install or conversion is still credited to that ad interaction.
  • Meta Install ReferrerThe Meta Install Referrer is an encrypted campaign payload that Meta places in the Google Play install referrer string, allowing an advertiser's Android app to decrypt deterministic attribution data for installs driven by Facebook and Instagram ads.