Retention and growth economics

How do you track a mobile app from ad click to company revenue?

A work app's revenue often arrives months after the install, through a company invoice that no ad platform ever sees. This page lays out a measurement stack that connects the ad or store visit to activation, paid plans and company accounts, with the attribution options that still work on iOS and Android.

By the ShoutEx Team · Updated October 2026 · Facts checked October 6, 2026
Install counts tell you what the ads did. Revenue by account tells you whether they worked.Mobile App Marketing · Updated October 2026
4 layers
Store analytics, attribution, product analytics, billing and CRM
iOS 17.4+
Where AdAttributionKit provides privacy-preserving attribution without the tracking prompt
3 fields
Referrer URL, click time and install time from the Play Install Referrer API

How should a work app measure marketing from ad to revenue?

How should a work app measure marketing from ad to revenue?

Use four connected layers. Store analytics show impressions, page views and installs by source. Attribution links installs to campaigns, within the limits each platform allows. Product analytics record activation, the core action and invites. Billing and the CRM hold paid plans, company accounts and renewals.

The connection is an account ID created at sign-up, stored with the acquisition source, and carried into billing and the CRM. Without it, you can count installs by channel but not revenue by channel.

Example · educational mock-up of a fictional app
From ad to company revenue, one quarterIllustrative example written by ShoutEx for this guide, not a benchmark.
Store product page views24,000Store analytics
Installs7,200Store analytics, attribution
Sign-ups with account ID4,300Product analytics
Activated (first report filed)1,900Product analytics
Paying individuals or teams230Billing
Company accounts14CRM, billing
The chain you need to see. Each row comes from a different tool. The biggest leak in this invented example is between install and sign-up, which store analytics alone would never show.

What does a mobile app analytics stack look like?

Each layer answers different questions, and no single tool covers all of them. Small teams can start with the free store consoles, one product analytics tool and their billing system, then add a mobile measurement partner when paid spend justifies it.

A hand holding a phone showing an analytics dashboard in front of a monitor

The layers below are listed in the order a user passes through them. The column on the right is the question you should be able to answer from that layer alone; if you cannot, the layer is not set up properly yet.

LayerTools (examples)What it recordsQuestion it answers
Store analyticsApp Store Connect, Play ConsoleImpressions, page views, conversion rate, installs by source, subscriptionsIs the listing converting visitors?
AttributionAdAttributionKit and SKAdNetwork, Play Install Referrer, ad platform reports, a mobile measurement partnerCampaign or source for each install, within privacy limitsWhich channels bring installs?
Product analyticsGoogle Analytics for Firebase, or another event toolSign-up, activation, core actions, invites, paywall viewsWhich installs become active users and teams?
Billing and CRMStore subscription reports, your billing system, CRMPlans, seats, invoices, renewals, company accountsWhich sources bring revenue and company accounts?

In Google Analytics, app data streams connect to Firebase and log automatic events such as first_open, plus in_app_purchase for store purchases. Company plans invoiced outside the stores will not appear there, so send a server-side event or import them from billing. The general method is in event tracking plans.

How does app attribution work on iOS and Android now?

Attribution is the step most teams overestimate. On both platforms, user-level matching across apps and websites is limited, so plan for aggregated or partial data.

PlatformMain optionsWhat you getLimits
iOSAdAttributionKit (iOS 17.4+), working alongside SKAdNetworkPrivacy-preserving postbacks that credit ad networks for installs and later conversionsAggregated, delayed; no user-level path
iOSApp Tracking Transparency promptPermission to track across other companies' apps and sites, for users who allow itMany users decline; never rely on it alone
AndroidPlay Install Referrer APIReferrer URL, click timestamp and install timestamp for installs from Google PlayOnly what you put in the referrer link
BothYour own sign-up sourceHow the user says they found you, plus web-to-app linksSelf-reported; useful for word of mouth and partners

AdAttributionKit does not require the tracking permission, which is why it matters for paid campaigns on iOS. On Android, the Install Referrer is the most reliable link between a tagged web or partner link and the install, as long as every link you control carries UTM-style parameters. More on campaign tags for apps is on web or app store first.

Which events should a work app track?

A minimal event plan for a work appTen events that connect acquisition to company revenue
EventWhen it firesWhy it matters
first_openFirst launch (automatic in Firebase)Install baseline
sign_upAccount created; store source and account IDJoins product data to acquisition
core_action_doneFirst report, work order or checklist completedActivation
output_sharedPDF or link sent to someone elseSpread inside companies
invite_sent / invite_acceptedTeammate invited and joinedTeam formation
paywall_viewedUpgrade screen shown, with triggerUpgrade demand
in_app_purchase / plan_startedStore or web plan boughtIndividual revenue
team_createdShared space createdTeam stage
company_plan_requestedIn-app or web company formSales signal
company_plan_signedSent from CRM or billingCompany revenue by source
Source: ShoutEx event plan for this guide; rename to your own conventions.
ShoutEx rule

Join on the account, not the device.

Device-level attribution is partial on both platforms. The link you control is the account: capture where each account came from at sign-up, then follow that account through billing and the CRM to company revenue.

What does the stack show in practice?

AuditTrail Safety, a fictional inspection app, ran Apple Ads and LinkedIn campaigns plus a partnership with a safety association. Installs looked similar across the three. Joining sign-up source to the CRM told a different story.

Source to revenue for one quarterFictional inspection app; installs vs what they became
SourceInstallsActivatedPayingCompany accounts
Apple Ads (search)2,100640612
LinkedIn campaigns1,800390241
Safety association partner links1,500720586
Source: Illustrative example written by ShoutEx for this guide, not a benchmark.

The partner channel had the fewest installs but the most company accounts, because safety coordinators who came through it brought their whole team. Store analytics or ad dashboards alone would have ranked it last. See communities and partners for how such channels work.

What analytics mistakes are common in mobile apps?

  • Judging channels on installs. Install counts say nothing about activation or company revenue.
  • No account ID across tools. Without it, product, billing and CRM data cannot be joined.
  • Hundreds of untidy events. Track the ten that answer business questions, then add more deliberately.
  • Ignoring off-store revenue. Company invoices never reach ad platforms unless you send them.
  • Relying on the tracking prompt. Plan attribution that works when most users decline.
  • Trade-off: a mobile measurement partner saves engineering time but costs money and adds an SDK; below modest ad budgets, store consoles, referrer data and sign-up source are often enough.

What should the analytics stack report each month?

Monthly marketing report for a work appOne row per question
MetricQuestion it answersWhere to find it
Product page conversion rateIs the listing working?App Store Connect, Play Console
Installs and sign-ups by sourceWhere do new users come from?Attribution, sign-up source
Activation rate by sourceWhich sources bring real users?Product analytics
Paying users and revenue by sourceWhich sources pay back?Billing joined to sign-up source
Company accounts by first sourceWhich channels start company deals?CRM
Cost per paying user and per companyWhat does growth cost?Ad spend ÷ billing results
Source: ShoutEx measurement framework for this guide.

Bring these numbers into unit economics and the growth calculator.

Frequently asked questions

What is the difference between store analytics and product analytics?

Store analytics cover the listing and installs. Product analytics cover what people do inside the app after installing.

Does AdAttributionKit need the tracking prompt?

No. It provides privacy-preserving attribution without the App Tracking Transparency permission, from iOS 17.4.

What does the Play Install Referrer API return?

The referrer URL, the click timestamp and the install timestamp for installs from Google Play.

Do I need a mobile measurement partner?

Not at first. Store consoles, the Install Referrer, AdAttributionKit postbacks and sign-up source can cover early stages.

How do I attribute company invoices to marketing?

Store the acquisition source on the account at sign-up and carry the account ID into billing and the CRM.

Which events matter most for a work app?

Sign-up, the first core action, output shared, invites, paywall views, plan started and company plan requested.

Can GA4 track app purchases?

Yes. App data streams linked to Firebase log in_app_purchase for store purchases; send off-store revenue separately.

Sources & further reading

Regulator rules, platform policies and local data change. These sources let you check the facts on this page, last checked October 6, 2026.