Measure Paying Subscribers Beyond App Installs

A busy week of Google App campaigns can produce a clear install count and still leave the important question unanswered: which campaigns brought in…

Measure Paying Subscribers Beyond App Installs

For Google App campaigns, measure the event that matches the business decision.

  • An attributed install or first open counts app acquisition, not a paying subscriber.
  • Choose a trial start, first payment, or renewal event according to the outcome you need to judge.
  • Connect that event to Google Ads through your analytics or measurement provider, then map the event and any value deliberately.
  • Use billing-backed cross-channel reporting when you need subscription outcomes tied to spend across Google and other channels.
  • Airbridge Core connects spend to subscriber revenue across supported channels and links RevenueCat, Adapty, or Superwall billing events back to campaigns.

A busy week of Google App campaigns can produce a clear install count and still leave the important question unanswered: which campaigns brought in subscribers who paid? The practical fix is to keep acquisition events, subscription events, and subscription revenue distinct. Then choose which of those signals should inform campaign bidding and which view you need for the business decision.

For a small team, the useful path is straightforward: select the outcome, connect its event, check how its value is sent, and compare it with billing records by campaign and cohort. Google Ads conversion reporting can support the event signal used in its own campaign workflow. A separate, billing-backed view answers a broader question: how much subscription revenue came from paid acquisition across channels?

1. Why installs do not tell you which ads brought paying subscribers

An install is an acquisition milestone, while a paid subscription is a later business result. AppsFlyer’s Google Ads integration guide tells advertisers to configure first_open as a conversion event when measuring installs. The event records that the app was opened after acquisition.

A trial app records its signals at different times: an install appears first, a trial start later, and a completed payment after the trial converts. Compare users acquired in the same period and allow each cohort time to reach the subscription milestone you are evaluating.

Suppose two campaigns each report 100 attributed installs. Campaign A brings 12 trials and 3 first payments; Campaign B brings 8 trials and 5 first payments. If the team reviews only installs, both campaigns look equal. If it reviews trials, Campaign A leads. If the decision is paid subscribers, Campaign B leads. The numbers are illustrative, but the decision changes because the event changes.

Google’s campaign measurement can use events that happen after install when the event is configured and made available through the chosen integration. Adjust’s Universal App Campaigns explainer describes campaigns aimed at installs and campaigns aimed at selected post-install actions, and notes that an in-app action can be assigned a value.

A clean measurement model therefore has at least three layers:

Measurement layerExample event or valueThe question it answers
AcquisitionAttributed install or first_openWhich campaign brought app users?
Subscription milestoneTrial start or first paymentWhich campaign brought users to this subscription step?
Subscription revenuePayment amount, renewal, or refundWhat billing outcome is associated with the acquired cohort?

For acquisition pacing, install volume and cost per install remain useful measures. For the paying-subscriber decision, keep cost per first payment beside them so a low install cost does not stand in for subscriber economics.

2. Choose the subscription event that matches the decision

Pick one primary event for the decision at hand, then retain earlier and later events for diagnosis. A trial, first payment, and renewal are not interchangeable: they happen at different times and describe different stages of a subscriber’s journey.

  1. Use trial start for an early read on trial acquisition. Compare it with later paid conversions to see how many trial starts reach payment.
  2. Choose first_payment when evaluating paid acquisition.
  3. Use renewal to compare continuing subscription activity. Review renewal events by acquisition cohort as those billing events arrive.
  4. Use revenue when payment amount matters as well as event count. Apply one revenue definition across campaigns and retain refunds as a separate billing outcome.

AppsFlyer’s in-app events overview describes SDK and server-to-server methods for sending events that record actions in an app. AppsFlyer’s purchase and subscription validation overview describes validating one-time and subscription purchases with Apple App Store or Google Play to confirm that the reported transaction took place.

Keep each event name and its definition in a shared event map, then use that definition in the app, billing setup, and measurement provider.

A useful event map might look like this:

Event nameDefine it asUse it to answer
trial_startedA user’s first confirmed start of a free trialWhich campaigns create trial starts?
first_paymentA successfully completed first subscription chargeWhich campaigns acquire first-time paying subscribers?
subscription_renewedA completed recurring charge after the initial billing periodWhich cohorts continue paying at renewal?
subscription_refundedA refund recorded by the billing systemHow much reported payment value was later returned?

3. Connect app events to Google Ads reporting

AppsFlyer, Adjust, and Branch each document a different Google Ads connection and event-sharing setup. Choose the route that matches the measurement provider already collecting the app events, then map only the conversion events that answer the campaign question.

AppsFlyer’s Google Ads integration instructions list creating a Google Ads Link ID, setting up the Google Ads integration in AppsFlyer, and importing app conversions as required setup steps. For install measurement, the guide says to set first_open as a conversion event, then add each in-app event you want to measure. The mapped partner event is the unique event name or ID defined in Google Ads.

When an app enables AppsFlyer event mapping for the first time, the guide says to select “All media sources, including organic” for each event so Google Ads can receive the events. AppsFlyer’s “including” setting sends the event without its value, with all parameters including revenue when present, or with parameters but without revenue.

Adjust’s Google Ads setup guide lists a sequence for its integration: generate a Google Ads Link ID, enable Google Ads in Campaign Lab, and import conversions to Google Ads. Adjust’s Google Ads account guide says Adjust sends app installs, sessions, and post-install events through Google’s Mobile Apps Conversion Tracking and Remarketing API for Google’s attribution and campaign optimization. For detailed in-app purchase revenue sharing, Adjust says to map at least one revenue event and select its in-app revenue option. Adjust maps app events to Google Ads names in the event_{AdjustEventName} format.

Branch’s Google Ads integration guide describes connecting through an MMP API endpoint, configuring events to send, and using the Branch SDK to capture installs and downstream app events such as purchases. Branch’s Google Ads data-reporting guide maps revenue to Google Ads value and event_data_currency to currency_code; it specifies a three-character ISO 4217 currency code, such as USD.

Use this practical setup sequence to define, map, and verify the event:

  1. Define the outcome and its source. Use a trial-start event to measure trial acquisition and a completed billing transaction to measure first-payment acquisition. Write the event definition beside its name so the app, billing system, and measurement provider use the same meaning.
  2. Generate the event in the app or billing path. Trigger the defined action and compare the event name, status, amount, and currency with the source app or billing record. For a paid event, use a completed charge as the event meaning.
  3. Connect the chosen measurement provider to Google Ads. AppsFlyer and Adjust both document a Google Ads Link ID in their setup sequences, with their own integration settings in the respective provider.
  4. Map each event to its conversion action. Keep trial start and first payment as separate actions so their counts retain distinct meanings.
  5. Choose the event-sharing and value settings. Compare each mapped event’s selected value-sharing option with the amount and currency you expect to inspect in the resulting report.
  6. Confirm the event appears in the destination. AppsFlyer says to launch the app and perform each mapped event at least once before Google Ads registers the conversion; its guide lists third-party conversion events in Google Ads under Conversions > Summary. AppsFlyer says a new event conversion can take up to six hours to enter the import queue.

When an AppsFlyer event is missing from the list, its guide recommends activating it on a device with a non-organic install and checking again, or entering the name and selecting “Create custom.”

4. Choose an optimization goal that matches the available signal

Use install count, a subscription action, or a value-based measure as three decision lenses. The table is an analysis framework for choosing what to judge, rather than a claim about the current bid strategies available in every Google Ads account.

Decision lensEvent or signal to reviewUse it whenWhat the result tells you
App acquisitionInstall or first_openYou are building an acquisition baselineApp-user volume and acquisition cost
Subscription progressTrial start or first paymentYou want to see how many users reach a defined subscription milestoneCount and cost of that milestone
Payment valueEvent with a billing-backed amountPayment amounts differ and the event carries a consistent valueReported value associated with the configured event

For Google Ads App campaigns using Target ROAS (tROAS), Airbridge’s Google Ads integration guide states that the Firebase SDK is required, and that events used for bidding with values should come from the Firebase SDK.

Signal quality depends on event timing and implementation. A first-payment event gives a direct paid outcome when the app reliably records it; a trial event gives an earlier read while the team waits for paid conversions to arrive. Use install counts to monitor acquisition volume, then evaluate subscription events separately.

Event optimization and value analysis answer different questions: an event count measures how often the selected action occurs, while a value measure distinguishes events by their assigned amounts. Use a value comparison when the event and currency have a consistent meaning across the campaigns being compared.

5. Set values for trials, first payments, and renewals

Give each event the value its business definition supports. A trial can carry a modeled proxy for an early estimate; a first payment or renewal can use the amount recorded by the billing system. Label modeled trial value separately from collected payment revenue.

AppsFlyer’s ROI360 revenue attribution overview says revenue can be recorded through customized in-app events and shared with ad networks using postbacks. Its ROI360 store revenue documentation describes store revenue from in-app purchases and subscriptions managed through App Store Connect on iOS and Google Play Console on Android. These describe AppsFlyer product capabilities; they illustrate why an app event and a billing-backed transaction can be different sources of revenue information.

Set values in this order:

  1. For a trial event, choose whether to send no value or an estimate. Calculate an estimate from your own historical trial-to-paid rate and expected payment amount, and record the assumptions beside it.
  2. For a first payment, use the completed transaction amount and currency. Use the billing record for the initial charge, including any discount that changed the amount paid.
  3. For a renewal, record a separate event and amount. Keep recurring revenue distinguishable from the initial payment.
  4. For a refund, record the returned amount as a separate billing outcome. Report gross collections and refunds separately, or use one clearly defined net-of-refund figure.

Illustrative calculation, using assumed inputs rather than a benchmark: if 20% of trial starters make a first payment of $30, the expected first-payment value per trial is 0.20 × $30, or $6, before later renewals, refunds, taxes, and other adjustments.

The event-forwarding settings deserve the same care as the value formula.

Monthly and annual plans produce different payment amounts and timing. Choose whether the report uses gross revenue, net revenue, first payments only, or later renewals, then apply that same definition and currency basis to each acquisition cohort.

6. Decide when Google Ads reporting is enough

The decision depends on whether your measurement task ends with Google campaign conversions or needs billing-backed subscription revenue tied to spend across paid channels.

Measurement jobGoogle Ads conversion setupAirbridge Core
Review Google App campaign conversionsConfigure and review the conversion actions selected for the Google campaign through the chosen event integrationConnect Google campaign spend to subscription revenue in a cross-channel campaign view
Compare subscription outcomes across paid channelsFocus on Google campaign conversion reportingCompare campaign-linked subscription outcomes across supported channels
Inspect subscriber milestones and payment valueReview the events and values made available to the Google Ads integrationReview billing-backed trial, payment, renewal, and refund outcomes by campaign

Airbridge’s Core Plan page says the plan connects campaign spend to subscription revenue for Google, Meta, TikTok, and Apple campaigns. With RevenueCat, Adapty, or Superwall connected, trial conversions, first payments, renewals, and refunds tie back to the campaign that brought the user in. The Funnel Report shows subscription rate and cost by channel, campaign, and creative.

Use the two measurement layers for their separate jobs: configure Google Ads conversion actions through the selected Google integration, then use Airbridge Core to compare billing-backed subscription outcomes with campaign spend across supported channels.

Airbridge Core is listed at $40+/mo after a 30-day free trial, with usage-based billing. The plan includes 500,000 data points per month, then $0.0001 per additional data point, with no annual contract. For a team choosing cross-channel subscription reporting, compare the included volume and billing terms with its expected event volume.

7. Compare campaign results with subscription outcomes

Compare campaign outcomes by keeping the acquisition cohort, event stage, spend period, and revenue definition consistent. Put Google Ads conversion events beside billing-backed outcomes as separate measures, then trace differences to the event mapping, timing, value, or attribution settings.

  1. Choose the acquisition cohort. Group users by attributed install or first open during the same dates. Compare cohorts with similar time to reach the trial, first payment, or renewal milestone.
  2. Compare the same event stage. Put trial starts beside trial starts and first payments beside first payments, using the same event definition in each report.
  3. Set a shared revenue basis. Mark whether the figure includes first payments, renewals, and refunds; keep currency and reporting period consistent.
  4. Calculate cost per first payment. Divide campaign spend by first-payment count for the same campaign and cohort. For example, $1,000 in spend divided by 25 first payments equals an illustrative $40 per first payment.
  5. Refresh the cohort as later billing events arrive. Review trial counts first, then add first payments, renewals, and refunds as those outcomes are recorded.

Keep the attribution window consistent when comparing results from the same provider. AppsFlyer’s lookback-window guide lists a 30-day default click-through window and a 24-hour default view-through window for Google in its self-reporting network setup. The guide describes configuring each window in the integration settings.

A weekly campaign report can include spend, attributed installs, trial starts, first payments, paid conversion rate from installs, first-payment revenue, renewals, and refunds. When two reports disagree, compare the event name and count first, then the cohort dates, amount, currency, and refund treatment against the billing record.

For example, if one creative brings more first payments at a higher cost, compare first-payment rate and cost for the same acquisition cohort before moving more budget to it.

8. Choose the next measurement step

  • For acquisition volume: compare attributed installs and cost per install.
  • For trial acquisition: report trial starts, then add first payments for the same cohort as they arrive.
  • For paid-subscriber acquisition: use a completed first-payment event with a clear billing definition.
  • For payment value: compare consistently defined billing amounts, with renewals and refunds visible in the report.
  • For campaign-spend-to-subscription reporting across channels: Airbridge Core connects supported ad spend and subscription billing outcomes, with campaign-level Funnel Report views.

FAQS

FAQ

Is an app install the same as a new subscriber?

No. An install or first open measures app acquisition, while a subscriber event records a later step such as a trial start or completed payment.

Should I optimize for trials or first payments?

Choose first payments when the campaign decision is paying-subscriber acquisition and that event is correctly configured. Choose trials as an earlier signal when you need a sooner read, then compare the same cohort with first-payment results as they arrive.

Does connecting RevenueCat, Adapty, or Superwall to Airbridge configure Google Ads bidding?

No. The documented Airbridge connection ties billing events back to the campaign in Airbridge. Configure Google Ads conversion actions through the Google Ads event integration you use; the billing connection serves the separate cross-channel subscription-reporting need.

What should I count as subscription revenue?

Use the billing event and revenue definition that match the decision, and state whether the view includes first payments, renewals, and refunds. Keep any estimated trial value separate from collected payment revenue.

When should a small team add cross-channel billing-backed measurement?

Add it when campaign decisions depend on subscription revenue tied to spend across more than one channel, or when trial, payment, renewal, and refund outcomes need to be compared by campaign. Airbridge Core documents those subscription connections for RevenueCat, Adapty, and Superwall and campaign-spend reporting for Google, Meta, TikTok, and Apple.

Get Started Free

See how these criteria hold up on the real thing.

Get Started Free