Agency attribution and credit for the campaigns you run
How agencies get credit for installs from the campaigns they run: AppsFlyer af_prt, Branch agency IDs, Kochava agency trackers and Singular agency links.
An MMP credits an install to your agency only when the campaign carries your agency's tag: af_prt on AppsFlyer links, the automatic agency ID on Branch links, agency trackers on Kochava, or the agency ID on links built in a Singular Agency Account. Build the links from your own agency access, not the client's, and follow each vendor's naming rule for Meta and other self-attributing networks.
What is agency attribution?
Agency attribution is the MMP recording which agency ran the campaign that drove an install, alongside the ad network, so the agency's results can be reported and paid for.
Agency credit: an install or event counted against your agency in the client's MMP. Without it, your work shows up only as the ad network's traffic, and nobody can tell it apart from campaigns the client or another agency ran.
The common thread across vendors: credit follows the link or tracker, and the link has to come from your agency's own access. A campaign the client builds for you is usually the client's.
How each MMP credits agency campaigns
AppsFlyer: af_prt
- The agency ID is the af_prt parameter, set to the agency name in lower case. With af_prt on the attribution link, installs can be attributed to the agency; without it they go straight to the ad network.
- Agencies must use attribution links from their own agency account.
- For non-SRN integrations, the ad network must already list your agency as authorised.
- Meta ads and X Ads: campaign names must start with your agency account name followed by an underscore, or your agency cannot see them. The same naming rule applies to SKAdNetwork and Android Sandbox agency campaigns.
- Transparency: since 14 Aug 2023 the transparency toggle is permanently on for new agencies, and since 12 Mar 2025 all agencies are transparent: the media source shows the real ad network, and data can still be grouped by agency.
Branch: automatic agency ID
- Branch states that all agency-created links and Journeys automatically have an agency ID attached.
- The client's Only show agency-tagged data filter is on by default, so you see the traffic your links drove.
- A separate agency transparency setting is not documented.
Kochava: agency trackers
- Activity on an agency's Controlled trackers is tagged as belonging to the agency.
- Agency postbacks send only traffic attributed to that agency.
- Self-attributing networks: append the tracker ID to the campaign name.
Singular: agency ID on links
- Tracking links built in the Agency Account contain an agency ID, and activity is reported under an Agency dimension.
- Agencies must give mutual advertisers transparency on the media sources they use.
- Self-attributing networks use campaign-name attribution for agencies.
Linkrunner: campaigns from the agency workspace
- Campaigns an agency creates from its own workspace are attributed to the agency, and the client sees the agency on them.
- A link the client creates on the agency's behalf is not credited to the agency.
Adjust, Airbridge and Tenjin
- Adjust: no agency attribution field or transparency setting is documented. Agencies typically get link-level or keyword-scoped access to the campaigns they run.
- Airbridge: agency users see attribution data from tracking links created within their agency, and can create links at any access level.
- Tenjin: agency attribution is not documented.
Why self-attributing networks need extra care
Meta, Google and similar networks report their own installs to the MMP rather than sending clicks through a tracking link. Self-attributing network: an ad network that claims installs itself and shares them with the MMP. With no link to carry an agency tag, vendors fall back on naming rules:
- AppsFlyer: agency account name plus an underscore at the start of the campaign name.
- Kochava: tracker ID appended to the campaign name.
- Singular: campaign-name attribution for agencies.
Agree the naming convention with the client before the first campaign goes live. Renaming later rarely fixes past data. For a fuller explanation of why these networks report differently, see this chapter on self-attributing networks.
A pre-launch credit check
- Build every link or tracker from your own agency access.
- Name Meta, X and other self-attributing campaigns using the vendor's rule.
- Ask the client to confirm your agency is authorised with each ad network where the vendor requires it.
- Run a test install and confirm it appears under your agency, not just the ad network.
- Check the client's view shows your agency on the campaign.
- Write the convention into your client access checklist so new team members follow it.
What happens when the engagement ends
- AppsFlyer: when the client switches off agency permissions, new installs and events stop being attributed to the agency, postbacks to its media sources stop, and its historical data becomes non-transparent.
- Kochava: turning the agency's Active toggle off stops new tracker creation but keeps existing trackers.
- Airbridge: removing an agency revokes access and expires its API token; collected data stays.
Export your results before access ends if you need them for case studies or invoices.
To compare credit rules side by side with sources, use the agency MMP comparison or the AppsFlyer agency profile.
Sources
Questions
What is af_prt?
af_prt is AppsFlyer's agency ID parameter on an attribution link, set to the agency name in lower case. With it on the link, installs can be attributed to the agency; without it, they are credited straight to the ad network.
Why are my Meta campaigns not showing under my agency?
Meta reports installs itself, so there is no link to carry your agency tag. On AppsFlyer, the campaign name must start with your agency account name and an underscore; on Kochava, append the tracker ID to the campaign name.
Can a client hide which ad network an agency used?
Not on AppsFlyer any more. Since 12 Mar 2025 all agencies are transparent, so the media source shows the actual ad network while data can still be grouped by agency. Singular also requires agencies to give advertisers transparency on media sources.
Is a link the client builds for us credited to our agency?
Usually not. AppsFlyer requires agencies to use attribution links from their own account, and Linkrunner credits only campaigns created from the agency workspace, so build your own links wherever you can.
Does every MMP support agency attribution?
No. AppsFlyer, Branch, Kochava and Singular are among those that document it. Adjust and Tenjin do not document an agency attribution field, and Airbridge documents data access from agency-created links rather than a separate credit field.
What is an MMP?
A mobile measurement partner (MMP) is the tool an app uses to record which ad, link or campaign led to each install and in-app event. Agencies work inside the client's MMP to build tracking links, read results and prove which campaigns they ran.
More guides
- How agencies should choose an MMP for client workHow an agency should pick an MMP for client apps: one login across clients, client-set permissions, credit for agency campaigns, seats, cost and reporting.
- Client access and permissions checklist for agenciesWhat an agency should ask a client to grant in their MMP, what to leave switched off, and how the main MMPs name each permission. A kick-off checklist.