This page is updated every two months with current best practices for Google Ads App campaigns. App campaigns hand Google almost all the levers, so your goals, bids, creative variety and clean install measurement are where the real control lives. Each update draws on our own experience plus authoritative industry sources and verified real-time research. Bookmark this page and check back for the latest App campaign best practices. Each update includes worked examples with the arithmetic shown.
Last updated: 6 August 2026
In This Guide
- Executive Summary
- Benchmarks & Numbers at a Glance
- When to Use App Campaigns
- Goals & Bidding
- Creative Assets
- Measurement & Attribution
- In-App Events & Value
- iOS & SKAdNetwork
- Learning Period & Budgets
- Optimisation & Scaling
- Common Mistakes to Avoid
- What Changed Recently
- References
1. Executive Summary
Google Ads App campaigns in 2026 operate as fully automated, asset-combination systems. Google’s AI selects audiences, placements, bids, and ad combinations from the creative assets you supply — your job is to give the system the right inputs and then let it learn without interference. Five principles govern whether a campaign succeeds or fails.
- Match the campaign goal to your conversion signal strength. Start with installs when you lack post-install volume, graduate to tCPA once you can support at least 10× your target CPA in daily budget, and move to tROAS only when revenue tracking is clean and stable.[1][6]
- Fund the learning period properly. Under-budgeted campaigns never exit learning. Google’s documented floors are 50× target CPI for install campaigns and 10× target CPA for action campaigns — treat these as hard minimums, not suggestions.[1][6]
- Supply a rich, diverse creative library. App campaigns assemble ads from individual assets; the more distinct text, image, and video variants you upload, the more combinations Google can test across placements. Thin creative libraries constrain delivery.[5][6]
- Build a clean, aligned measurement stack before spending at scale. Firebase or an approved MMP must be implemented end-to-end, conversion windows must match across platforms, and event definitions must be consistent before Smart Bidding can learn efficiently.[5][11]
- Make changes slowly and incrementally. Bid or budget edits exceeding 20% at a time can disrupt learning. On iOS, maintaining 30+ conversions per day is the threshold Google cites for effective AI learning — protect that volume by resisting the urge to over-optimise.[6][16]
2. Benchmarks and Numbers at a Glance
| Metric | Typical range or threshold | Applies when | Source |
|---|---|---|---|
| Average CPI — Google Ads (global blend) | AUD $2.65–$3.50 per install (approx. USD $1.70–$2.25) | Vendor claim; broad cross-category average, not a guarantee | [55][63] |
| CPI — low estimate (gaming, emerging markets) | USD $0.50–$2.50 per install | Vendor claim; skewed by low-cost APAC and LATAM inventory | [66] |
| CPI — mid-to-high estimate (finance, utility) | USD $1.50–$4.50 per install | Vendor claim; finance and utility apps on iOS and Android | [2][66] |
| CPI — iOS utility/finance category | USD $4.20 per install | Vendor claim; 2026 benchmark estimate, iOS specifically | [64] |
| CPI — Android utility/finance category | USD $2.90 per install | Vendor claim; 2026 benchmark estimate, Android specifically | [64] |
| CPI — North America average (all categories) | USD $5.28 per install | Vendor claim; North American traffic only | [65] |
| CPI — APAC average (all categories) | USD $0.93 per install | Vendor claim; APAC includes lower-cost markets such as India and SEA | [65] |
| Minimum daily budget — install campaigns (tCPI) | 50× target CPI per day | Google policy; applies to all App install campaigns using tCPI bidding | [1][6] |
| Minimum daily budget — in-app action campaigns (tCPA) | 10× target CPA per day | Google policy; applies to all App action campaigns using tCPA bidding | [1][6] |
| Minimum daily budget — engagement/re-engagement (tCPA) | 15× target CPA per day | Google policy; re-engagement style campaigns specifically | [1] |
| Maximum recommended budget or bid change at one time | No more than 20% change per edit | Google guidance; larger edits risk resetting the learning period | [6] |
| iOS daily conversion volume for effective AI learning | 30+ conversions per day | Google recommendation; iOS App campaigns using SKAdNetwork signals | [16] |
| Daily install volume for stable optimisation (tCPI) | 50+ installs per day | Vendor claim; threshold cited for stable algorithmic optimisation | [70] |
| Portrait video conversion rate advantage vs. landscape | 60% higher conversion rate | Google claim; applies to video assets in App campaigns across placements | [6] |
| Maximum video assets per ad group | 20 video assets | Google platform limit; applies to all App campaign ad groups | [5][6] |
| Maximum image assets per ad group | 20 image assets | Google platform limit; applies to all App campaign ad groups | [5][6] |
| Maximum text assets per ad group | 10 text assets | Google platform limit; applies to all App campaign ad groups | [5][6] |
3. When to Use App Campaigns
Google Ads App campaigns are the correct channel when your primary goal is driving installs, post-install actions, or revenue from a mobile app distributed through the Google Play Store or Apple App Store. They are not the right tool for driving web conversions, brand awareness without an app component, or engagement with a progressive web app that lacks a store listing.
Within the App campaigns product, the three goal types serve distinct stages of an app’s lifecycle. Choosing the wrong goal for your current data maturity is one of the most common and expensive mistakes a campaign manager can make.
| Goal type | Best lifecycle stage | Minimum data requirement | When to move to the next goal |
|---|---|---|---|
| Pre-registration | Pre-launch; app not yet live in store | A valid store listing or pre-registration page | Once the app is published and installs are measurable |
| Installs (tCPI) | Launch and early growth; building conversion history | Reliable install tracking via Firebase or MMP | Once a post-install event fires consistently at 10× daily CPA budget volume |
| In-app actions (tCPA or tROAS) | Growth and monetisation; optimising for business value | A measurable in-app event with sufficient daily volume; clean revenue tracking for tROAS | tROAS when purchase value data is stable and campaign has exited learning |
App campaigns are also the right choice when you want to reach users across Google’s full owned-and-operated inventory — Search, Play Store, YouTube, Discover, and the Google Display Network — from a single campaign structure. Building separate campaigns for each placement is not supported, nor is it necessary; the system handles placement allocation automatically.[6]
One important constraint: App campaigns require the app to be published in the relevant store. You cannot run an install campaign against an unpublished app. Pre-registration campaigns are the supported workaround during the pre-launch window.[3]
Worked example
Choosing the right goal at launch for a subscription fitness app
- Setup: A Melbourne-based subscription fitness app launching on Android in July 2026. The app has just been published on Google Play. Firebase SDK is installed and install events are verified. No post-install purchase data exists yet. The team has a $6,000/month budget.
- Numbers: $6,000/month ÷ 30 days = $200/day available. Industry benchmark CPI for Android utility/fitness is approximately USD $2.90, roughly AUD $4.50.[64] Minimum daily budget for a tCPI campaign = 50 × $4.50 = $225/day — marginally above the available $200/day at that CPI. The team sets a slightly higher target CPI of $4.00 (AUD), making the minimum budget floor 50 × $4.00 = $200/day exactly.
- Decision: Launch with an App Installs campaign, tCPI bidding, target CPI set to $4.00 AUD, daily budget set to $200. Do not attempt tCPA yet.
- Why: Google’s documented rule requires a daily budget of at least 50× the target CPI for install campaigns to fund the learning period; launching with tCPA before sufficient post-install volume exists would starve Smart Bidding of signal.[1][6]
Worked example
Using pre-registration campaigns ahead of an iOS game launch in Q4 2026
- Setup: A casual mobile game targeting the Australian market, scheduled for App Store launch on 1 November 2026. The pre-registration page is live on the App Store. Budget for the pre-launch phase is $3,000 total across October 2026 (31 days), or approximately $97/day.
- Numbers: $3,000 ÷ 31 days = $96.77/day. Pre-registration campaigns do not use tCPI or tCPA bidding in the same way as install campaigns; there is no 50× CPI floor to meet. The campaign runs to build an interested audience list and App Store pre-registration count before 1 November 2026.
- Decision: Run a Pre-registration App campaign from 1 October 2026 to 31 October 2026 at $97/day, then switch to an Install campaign with tCPI on 1 November 2026 when the app goes live.
- Why: Pre-registration is the only supported App campaign goal for an app not yet available for install; switching to an Install campaign on launch day allows conversion tracking and Smart Bidding to begin immediately once install data flows.[3]
4. Campaign Goals and Bidding (tCPI, tCPA, tROAS)
Bidding strategy selection is not a preference — it is a constraint driven by your conversion data maturity. Google’s Smart Bidding for App campaigns requires a minimum signal threshold to function. Below that threshold, the algorithm will make poor decisions regardless of how well the rest of the campaign is configured.[1][6]
Target CPI (tCPI)
Use tCPI when the campaign goal is install volume. The bid tells Google the average cost per install you are willing to pay; Google then sets bids at auction level to achieve that average across the campaign. Set the daily budget to at least 50× the target CPI. If your target CPI is $4.00 AUD, the daily budget floor is $200.[1][6]
Target CPA (tCPA)
Use tCPA when optimising for a post-install event such as registration, trial start, or purchase. The conversion event must be firing consistently and imported into Google Ads before switching. Daily budget must be at least 10× the target CPA. For re-engagement style action campaigns, the floor rises to 15× the target CPA.[1][6]
Target ROAS (tROAS)
Use tROAS when the app generates measurable revenue per user and you want Google to optimise for total return rather than event volume. Revenue values must be passed with each conversion event — either via Firebase purchase events with value parameters or via an MMP integration that sends revenue data to Google Ads. This bidding strategy should only be activated once a campaign has exited learning and is generating stable, high-quality value signals.[2][8]
Budget floors summary
| Bidding strategy | Goal | Daily budget minimum | Example (target = $5.00 AUD) |
|---|---|---|---|
| tCPI | Installs | 50× target CPI | 50 × $5.00 = $250/day |
| tCPA | In-app actions | 10× target CPA | 10 × $5.00 = $50/day |
| tCPA (re-engagement) | Re-engagement actions | 15× target CPA | 15 × $5.00 = $75/day |
| tROAS | Revenue / value | No fixed multiple; ensure sufficient conversion value volume | Depends on ARPU and category |
When setting the initial bid for tCPI or tCPA, avoid setting targets below your true cost expectation. Google’s iOS guidance explicitly warns against constraining bids with unrealistic goals, as the system will struggle to win auctions and will generate insufficient conversion volume for learning.[16]
Bid and budget changes should not exceed 20% of the current value per edit. Larger changes can reset the learning period and erase the signal accumulated to date.[6]
Worked example
Graduating from tCPI to tCPA for a fintech app after 6 weeks of install data
- Setup: A Sydney-based fintech app running a tCPI install campaign since 1 September 2026. By 15 October 2026, the campaign has generated an average of 65 installs per day at a CPI of $4.80 AUD. The Firebase SDK is passing a “account_created” post-install event, which fires for approximately 28% of users who install — meaning roughly 18 account-creation events per day.
- Numbers: 65 installs/day × 28% conversion rate = 18.2 account-creation events/day. Target CPA for account creation = $4.80 ÷ 0.28 = $17.14 AUD. Minimum daily budget for tCPA = 10 × $17.14 = $171.40/day. Current daily budget is $325 (65 installs × $4.80 + buffer), which is well above the $171.40 floor. 18 events/day is below the 30/day threshold Google recommends for iOS learning,[16] but this app is Android-only, so the primary signal quality concern is having enough volume for Smart Bidding to work, not SKAN specifically.
- Decision: Switch the campaign goal to In-app Actions, set bidding to tCPA at $17.00 AUD, keep daily budget at $325. Monitor for 2 full weeks before making any further bid changes.
- Why: The daily budget exceeds the 10× CPA floor ($170), and the install-to-action conversion rate is stable enough to provide a reliable target; the 20% change rule means the first bid adjustment after the switch, if needed, should not move the $17.00 target by more than $3.40 in either direction.[1][6]
Worked example
Setting up tROAS for a mobile commerce app with reliable purchase data
- Setup: A Brisbane-based e-commerce app that has been running a tCPA campaign optimising for “add_to_cart” since March 2026. By August 2026 the campaign generates 45 purchase events per day with an average order value of $62 AUD. Firebase is passing the purchase event with a revenue value parameter. The current tCPA bid is $14.00 AUD per add-to-cart. The team wants to shift optimisation to revenue.
- Numbers: Average revenue per purchase = $62 AUD. If the team is willing to spend $14.00 to acquire a $62 purchase, the implied target ROAS = $62 ÷ $14.00 = 443%. 45 purchases/day provides sufficient conversion value volume for value-based bidding. Starting tROAS = 400% (slightly below implied 443% to give the algorithm room to learn without over-constraining bids).
- Decision: Switch campaign to tROAS bidding, set target ROAS to 400%, keep daily budget unchanged at $630/day (45 purchases × $14.00). Do not change the budget for at least 14 days post-switch.
- Why: Revenue values are being passed consistently via Firebase, conversion volume is sufficient for value-based optimisation, and starting at 400% rather than 443% avoids over-constraining the algorithm during the transition learning window.[2][8]
5. Creative Assets and Asset Variety
App campaigns do not run individual ads. They assemble ads in real time from a pool of individual assets — text lines, images, videos, and (for games) HTML5 playables. The breadth of your asset library directly determines how many combinations Google can form, and by extension how many placements, screen sizes, and audience contexts the campaign can serve.[5][6][12]
Google’s guidance is unambiguous: use all available asset slots. The current platform limits are 10 text assets, 20 image assets, 20 video assets, and 20 HTML5 assets per ad group.[5][6] Campaigns that leave most of these slots empty constrain delivery before a single bid is placed.
Text assets
Write each text line as a standalone phrase that works in isolation — it may appear as a headline, a description, or an overlay depending on the placement.[5] Focus each line on a different value proposition: one on price, one on key feature, one on social proof, one on urgency. Minor rewrites of the same sentence are not variety; Google’s system needs meaningfully different angles.[5][10]
Image assets
Supply images in multiple aspect ratios so assets can fit more placements. Keep designs clean and mobile-first: minimal text overlay, high contrast, clear subject.[5] Google is transitioning App campaign image requirements from fixed pixel dimensions to ratio-based specifications in late 2026, which means investing in ratio-flexible creative production will future-proof your asset library.[1][37]
Video assets
Video is the most impactful creative lever in App campaigns. Supply videos in portrait (9:16), square (1:1), and landscape (16:9) orientations so the campaign qualifies for the broadest possible inventory.[5][6] Google states that portrait video achieves a 60% higher conversion rate than landscape — portrait should therefore receive the largest share of your video production budget.[6] Vary video length and opening hook across your uploads; aim for at least one 6-second, one 15-second, and one 30-second variant per orientation where production budget allows.
HTML5 and playables (games only)
Playable and HTML5 assets are relevant exclusively for mobile game advertisers. Validate all HTML5 assets through Google’s HTML5 Validator before upload.[6] Non-game apps should not attempt to use this asset type.
Asset performance ratings and what to do with them
Google rates assets as Best, Good, Low, or Learning. The counter-intuitive guidance is: do not remove assets rated “Good” or “Low.” Adding more assets is almost always better than removing existing ones, because reducing the pool shrinks the combination space available to the algorithm.[6] Replace only assets rated Low once you have filled all slots with strong alternatives.
Worked example
Building a full asset library for a non-game utility app with a $2,500 video production budget
- Setup: A Perth-based productivity app launching an App campaign in September 2026. The team has $2,500 AUD for video production and is planning creative assets from scratch. Platform limits: 10 text, 20 images, 20 videos, no HTML5 (non-game). Google states portrait video converts 60% better than landscape.[6]
- Numbers: $2,500 video budget. Portrait (9:16) is the highest-priority format. Allocate 60% of budget to portrait = $1,500 → produces 3 distinct portrait videos (6s, 15s, 30s) at $500 each. Allocate 25% to square (1:1) = $625 → produces 1 square video at 15s. Allocate 15% to landscape (16:9) = $375 → produces 1 landscape video at 15s. Total: 5 videos uploaded; 15 slots remain available for future creative refresh cycles. Text: 10 lines written covering price, key feature (focus timer), platform compatibility, user rating reference, and trial offer — each line substantively different. Images: 20 clean screenshots and lifestyle images at ratios matching the forthcoming ratio-based spec update.[1]
- Decision: Launch the ad group with 10 text assets, 20 image assets, and 5 video assets. Schedule a creative refresh at 6 weeks to add 5 more video variants using performance data from the first 5.
- Why: Filling all text and image slots maximises combination options from day one; the portrait-heavy video allocation reflects Google’s 60% conversion rate advantage for portrait format, and phasing video uploads allows performance data to guide the next round of production.[5][6]
6. Measurement and Attribution (Firebase, MMPs)
Smart Bidding for App campaigns is only as good as the conversion signals it receives. A campaign with a perfectly calibrated bid target but broken event tracking will underperform a campaign with a rough bid target and clean, complete conversion data. Measurement infrastructure must be validated before any budget is committed at scale.[5][11]
Firebase (first-party, Google-native)
Firebase is Google’s recommended measurement solution for App campaigns and provides the tightest integration with Google Ads conversion tracking. Implement the Firebase SDK, verify that install and post-install events are firing correctly in DebugView, and import conversion actions into Google Ads.[5][11] Keep the Firebase SDK updated to the latest stable version, particularly for iOS campaigns where on-device measurement capabilities are tied to SDK version.[16]
Mobile measurement partners (MMPs): AppsFlyer, Adjust
AppsFlyer and Adjust are both Google-approved attribution partners and are the right choice when you need cross-channel attribution that covers networks beyond Google, or when you require advanced cohort analysis and fraud protection that Firebase does not natively provide.[5][11] When using an MMP, ensure the partner SDK is deeply integrated, that events mapped to Google Ads conversion actions use identical event names and counting logic, and that conversion windows match on both sides. Mismatched windows are a common source of discrepancy between MMP and Google Ads reported numbers.[5]
Conversion window alignment
Google Ads conversion windows for app installs default to 30 days. MMP attribution windows often default to 7 days for click-through and 1 day for view-through. If these are not deliberately aligned, your Google Ads reported CPI will be lower than what your MMP reports — a discrepancy that can mislead bidding decisions. Set windows explicitly and document the logic.[5]
What to track
Define a small conversion hierarchy rather than tracking every possible in-app event. A practical hierarchy for most apps is: install → activation event (sign-up or onboarding completion) → core engagement event (first session action that predicts retention) → revenue event (purchase or subscription start).[5][7][14] Optimise bidding against the deepest event you can support with sufficient volume; use shallower events as secondary signals only.
Worked example
Diagnosing and fixing a conversion window mismatch between Adjust and Google Ads
- Setup: A Melbourne fintech app running a tCPI install campaign in August 2026. Google Ads reports 210 installs for the week of 4–10 August 2026. Adjust reports 148 installs attributed to Google Ads for the same week — a 42% discrepancy. The team is using Adjust as the source of truth for MMP billing.
- Numbers: Google Ads conversion window: 30 days click-through. Adjust click-through window: 7 days. The 62 additional installs counted by Google Ads but not Adjust are users who clicked a Google ad 8–30 days before installing — within Google’s window but outside Adjust’s 7-day window. 62 ÷ 210 = 29.5% of reported installs are window-gap installs. If bids are set based on the Google Ads CPI of $4.20 AUD, the true Adjust-attributed CPI is $4.20 × (210 ÷ 148) = $5.96 AUD — $1.76 higher than the Google Ads figure suggests.
- Decision: Align Adjust’s click-through attribution window to 30 days to match Google Ads, or set Google Ads install conversion window to 7 days to match Adjust’s default. Document the chosen window in the measurement plan. Rebase the tCPI target to $5.50 AUD once windows are aligned and a clean week of data is collected.
- Why: Mismatched conversion windows cause the bidding algorithm to target an artificially low CPI, resulting in under-delivery or over-spend depending on which number is treated as truth; aligning windows is the prerequisite for accurate Smart Bidding signal.[5]
7. In-App Events and Value Optimisation
Moving beyond install optimisation is the most significant lever available to a mature App campaign. When you optimise for installs, Google finds users likely to install. When you optimise for a post-install event, Google finds users likely to complete that event — a fundamentally different and more commercially valuable audience.[2][4][6]
Selecting the right optimisation event
Google’s guidance is to optimise for the deepest event you can measure consistently.[2][4] In practice, “consistently” means the event fires for enough users every day to give Smart Bidding a stable learning signal. An event that fires for 3 users on Monday and 47 on Friday is not a reliable optimisation signal, even if the weekly total looks acceptable.
For most apps, the practical progression is:
- Stage 1: Optimise to install (tCPI) until post-install event volume is established.
- Stage 2: Move to a shallow post-install event (tCPA) such as tutorial completion or sign-up, which fires more frequently and provides volume for learning.
- Stage 3: Move to a deeper commercial event (tCPA) such as trial start, subscription, or first purchase once the shallower event provides enough signal to prove audience quality.
- Stage 4: Move to tROAS when purchase value data is clean and campaign volume supports value-based optimisation.[2][8]
Passing revenue values
For tROAS to function correctly, every purchase conversion event must include a revenue value parameter. In Firebase, this is the value and currency parameters on the purchase event. In an MMP, revenue postbacks must be configured to send value to Google Ads. Campaigns where purchase events fire without value parameters cannot use tROAS effectively.[2][8]
Event schema discipline
Resist the temptation to optimise to too many events simultaneously. Each additional conversion action added to the bidding goal dilutes the signal. Use a single primary conversion action for bid optimisation and treat others as secondary conversions for reporting only.[5][14]
Worked example
Selecting the right optimisation event for a language learning app with low purchase frequency
- Setup: A Sydney-based language learning app with 2,200 active installs per month from Google App campaigns. Firebase tracks three post-install events: onboarding_complete (fires for 71% of installs = ~1,562/month or ~52/day), lesson_one_complete (fires for 38% of installs = ~836/month or ~28/day), and subscription_start (fires for 4% of installs = ~88/month or ~3/day). The team wants to move to tCPA. Daily budget is $280 AUD.
- Numbers: onboarding_complete: ~52 events/day. lesson_one_complete: ~28 events/day. subscription_start: ~3 events/day. Google’s iOS learning threshold is 30+ conversions/day.[16] Only onboarding_complete consistently exceeds 30/day. CPA for onboarding_complete = $280/day ÷ 52 events/day = $5.38 AUD. Minimum daily budget for tCPA = 10 × $5.38 = $53.80 — well below $280, so budget is not a constraint. lesson_one_complete at 28/day is below the 30/day threshold; subscription_start at 3/day is far too low.
- Decision: Set the tCPA optimisation event to onboarding_complete with a target CPA of $5.50 AUD and daily budget of $280. Add lesson_one_complete and subscription_start as secondary (reporting-only) conversion actions. Revisit the primary event in 60 days to assess whether lesson_one_complete volume has grown above 30/day.
- Why: Optimising to the deepest event with sufficient daily volume (30+) gives Smart Bidding a stable learning signal; subscription_start at 3/day would provide insufficient signal for the algorithm to learn effectively, resulting in poor bid decisions.[2][16]
8. iOS, SKAdNetwork and Privacy
iOS App campaigns operate in a fundamentally different measurement environment to Android. Apple’s App Tracking Transparency (ATT) framework restricts user-level tracking for users who decline consent, and SKAdNetwork (SKAN) is Apple’s privacy-preserving attribution framework that provides aggregated, delayed conversion data in place of deterministic user-level attribution.[11][16]
Google’s guidance for iOS App campaigns builds around three pillars: implementing ATT correctly, using the latest Firebase SDK for on-device measurement, and configuring SKAdNetwork to maximise the usable signal it returns.[16]
ATT implementation
Present the ATT prompt at a contextually appropriate moment — typically after onboarding, when the user understands the value of personalisation, rather than immediately on first open. A poorly timed ATT prompt will return a lower opt-in rate, which reduces user-level signal and shifts more attribution weight to SKAN’s modelled data.[16]
SKAdNetwork configuration
SKAN conversion values must be mapped to meaningful in-app events. A common error is leaving conversion values unmapped or mapping them to events so deep in the funnel that very few users trigger them, resulting in a high proportion of null conversion values returned by Apple. Null values provide no optimisation signal. Map conversion values to events that a meaningful percentage of users complete within the SKAN measurement window (typically within 24–72 hours of install, depending on the SKAN version and timer configuration).[1][2]
AdAttributionKit
Industry guidance in 2026 highlights the transition toward Apple’s AdAttributionKit (AAK) as the longer-term successor to SKAdNetwork for re-engagement and web-to-app attribution on iOS. Advertisers with significant iOS budgets should monitor AAK developments and ensure their MMP or Firebase integration is ready to adopt AAK signals as they become more widely supported.[2][11]
Volume requirements on iOS
Google explicitly recommends maintaining at least 30 conversions per day on iOS App campaigns for Google’s AI to learn effectively and scale.[16] Below this threshold, bidding becomes unreliable. If a campaign cannot sustain 30+ daily conversions, broaden the target CPA or increase budget before attempting to optimise for deeper events.
Worked example
Diagnosing a high null-conversion-value rate and remapping SKAN conversion values
- Setup: An iOS mobile game running a Google App Installs campaign in August 2026. The MMP (AppsFlyer) reports that 67% of SKAN postbacks from Google carry a null conversion value. The game’s current SKAN conversion value map is configured around the event “first_purchase,” which only 5% of users trigger within 24 hours of install. The campaign generates 90 installs/day but only 4.5 purchase events/day — well below the 30/day learning threshold.[16]
- Numbers: 90 installs/day × 5% purchase rate = 4.5 SKAN conversion values with data/day. 90 installs/day × 67% null rate = 60.3 null postbacks/day. Effective signal-bearing postbacks = 90 − 60 = 30/day — just at the minimum learning threshold, but the signal is from too deep an event. Remapping to “tutorial_complete,” which fires for 68% of users within 24 hours of install: 90 × 68% = 61.2 signal-bearing postbacks/day. Null rate would fall from 67% to approximately 32%.
- Decision: Remap the SKAN conversion value scheme in AppsFlyer to use tutorial_complete (firing at 68% of installs within 24 hours) as the primary measured event. Keep first_purchase as a secondary reporting signal outside SKAN where possible. Do not change the campaign bid or budget during the remapping week.
- Why: A 67% null conversion value rate means two-thirds of install signals carry no optimisation information; remapping to a shallower, higher-frequency event that fires within the SKAN measurement window reduces nulls and more than doubles usable daily signal from 30 to 61 postbacks, surpassing the 30/day learning threshold.[1][16]
9. The Learning Period and Budgets
The learning period is the phase immediately after a campaign launches or undergoes a significant change, during which Google’s Smart Bidding algorithm calibrates to the conversion signal. Performance during this phase is typically volatile — CPIs and CPAs may be above target. The correct response is patience and stability, not intervention.[6][16]
The three factors that determine how quickly a campaign exits learning are: conversion volume per day, budget relative to the bid target, and the stability of campaign settings (no edits during learning).[1][6][16]
What resets the learning period
- Changing the bid strategy (e.g., tCPI to tCPA).
- Changing the target CPI or CPA by more than 20%.
- Changing the daily budget by more than 20%.
- Adding or removing conversion actions from the primary bidding goal.
- Making significant changes to the asset set (less clearly defined, but avoid large simultaneous changes).[6]
Budget discipline during learning
Under-funding the learning period is the most common mistake. A campaign running at exactly the minimum budget floor (e.g., 10× CPA) with no headroom will be unable to explore bid variations and will exit learning slowly if at all. Providing 15–20× CPA as the budget during the learning phase, then scaling down incrementally once the campaign is stable, is a more reliable approach.[1][6]
Worked example
Planning the learning period budget for a tCPA action campaign launching in October 2026
- Setup: An Adelaide health app launching a new tCPA in-app action campaign on 6 October 2026, optimising for “consultation_booked” events. Historical data from the install campaign shows an expected tCPA of $22.00 AUD for consultation bookings. The team has a monthly budget of $9,000 AUD for October 2026 (26 remaining days after the 6th).
- Numbers: Minimum daily budget per Google’s rule = 10 × $22.00 = $220/day. Available daily budget = $9,000 ÷ 26 days = $346/day. That is $346 ÷ $220 = 1.57× the minimum floor. To give extra headroom during learning (targeting 15× CPA), ideal budget = 15 × $22.00 = $330/day — achievable at $346/day with $16/day margin. Expected daily consultation bookings at $346 budget and $22.00 CPA = $346 ÷ $22.00 = 15.7 bookings/day. This is below the 30/day iOS threshold[16] but the app is Android-only. The team should monitor for at least 14 days before making any bid changes.
- Decision: Launch the tCPA campaign on 6 October 2026 with a target CPA of $22.00 AUD and a daily budget of $340 (slightly rounded below $346 to leave a small buffer for monthly pacing). Set a calendar reminder for 20 October 2026 to review performance before making any changes. No bid or budget edits before that date.
- Why: Setting the budget at 15× the target CPA ($330) rather than the minimum 10× ($220) provides additional auction flexibility during the learning window and reduces the risk of under-delivery; the 20 October 2026 review date enforces the discipline of not over-editing during learning.[1][6]
10. Optimisation and Scaling
Once a campaign has exited the learning period and is delivering at or near target, the focus shifts to scaling — increasing volume while maintaining efficiency — and to ongoing creative and signal optimisation. Scaling an App campaign is not a single action; it is a sequence of incremental changes made over weeks.[6][16]
Scaling budget
Increase the daily budget by no more than 20% per edit, and allow at least 5–7 days between increases to let the algorithm adjust before assessing the impact. A campaign generating 50 installs at $4.00 AUD CPI on a $200/day budget should be scaled to $240/day for the first increase, then to $288/day, then to $346/day — not from $200 to $400 in one jump.[6]
Scaling by relaxing bid targets
If volume is the constraint and efficiency is acceptable, raising the target CPA (accepting a higher cost per action) will expand the auction pool the campaign competes in. Apply the same 20% rule: from $22.00 CPA to $26.40 is the maximum first increment. Monitor conversion volume response before increasing again.[6]
Creative refresh and asset testing
Asset performance ratings degrade over time as ad fatigue accumulates. Schedule creative reviews every 4–6 weeks. When adding new assets, introduce 2–3 new variants rather than replacing all existing assets simultaneously — this preserves continuity in the combination pool while introducing fresh creative.[5][6]
Audience signals and campaign structure
App campaigns do not support manual audience targeting in the way that Search or Display campaigns do. The system targets audiences automatically based on the conversion signal. The best way to influence audience quality is to provide a higher-quality, more specific conversion event — not to add audience exclusions or bid adjustments, which are not available in App campaigns.[6]
Worked example
Scaling a stable install campaign from $200/day to $400/day across 5 weeks in November–December 2026
- Setup: A Canberra-based gaming app running a stable tCPI install campaign from 1 November 2026. Current performance: $200/day budget, CPI = $3.80 AUD, 52 installs/day. The team wants to reach $400/day budget by end of December 2026 without disrupting learning. The 20% rule applies to each budget change.[6]
- Numbers: Week 1 (1 Nov): $200/day baseline. Week 3 (15 Nov): increase 20% → $200 × 1.20 = $240/day. Week 5 (29 Nov): increase 20% → $240 × 1.20 = $288/day. Week 7 (13 Dec): increase 20% → $288 × 1.20 = $346/day. Week 9 (27 Dec): increase 20% → $346 × 1.20 = $415/day (rounds to $400 target, slightly above). Total elapsed time: 8 weeks. Expected installs at $400/day and $3.80 CPI = 400 ÷ 3.80 = 105 installs/day — double the starting volume. Each increment of $40–$58/day stays within 20% and gives 14 days of data before the next change.
- Decision: Execute the 5-step budget escalation on 1 Nov, 15 Nov, 29 Nov, 13 Dec, and 27 Dec 2026. Do not change the target CPI of $3.80 AUD during this period. If CPI rises above $4.56 (20% above target) for more than 7 consecutive days, pause the next scheduled increase and diagnose before proceeding.
- Why: Increments of exactly 20% respect Google’s guidance on avoiding learning period resets; spacing changes 14 days apart allows at least one full learning cycle between edits before the next increase is made.[6]
11. Common Mistakes to Avoid
The following mistakes are the most frequent causes of App campaign underperformance. They are listed in rough order of business impact, from most to least severe.
1. Under-funding the learning period
Setting a daily budget at exactly the minimum floor (10× CPA or 50× CPI) leaves no room for auction exploration. The result is a campaign that stays in learning indefinitely or exits learning only to deliver erratically. Provide 15–20× CPA as the initial daily budget and scale down once performance is stable.[1][6]
2. Optimising for an event with insufficient daily volume
Choosing a conversion event that fires fewer than 10 times per day for tCPA, or fewer than 30 times per day on iOS, starves Smart Bidding of signal. The algorithm cannot identify patterns from sparse data. Choose a shallower event temporarily and work toward deeper optimisation as volume grows.[16]
3. Making too many changes too quickly
Each significant edit to a bid, budget, or conversion action can reset the learning period. Campaigns that are edited weekly during learning may never accumulate sufficient stable signal to exit it. Enforce a minimum 14-day no-edit window after any campaign launch or major change.[6]
4. Uploading a thin creative library
Campaigns with fewer than 5 distinct text assets, fewer than 5 image assets, or only 1–2 video assets — particularly without portrait orientation — severely limit the combinations Google can test. A thin library restricts delivery across placements before any bidding issue is even relevant.[5][6]
5. Misaligned conversion windows between Google Ads and the MMP
Discrepancies of 30–50% between Google Ads and MMP reported installs are almost always caused by mismatched attribution windows. These discrepancies cause the bidding algorithm to target an incorrect CPI, leading to either over-spend or under-delivery. Align windows explicitly and document the logic.[5]
6. Skipping SKAN conversion value mapping on iOS
Leaving SKAN conversion values unmapped or mapping them to events that fire too rarely (below 10% of users within the SKAN window) results in null conversion value postbacks that carry no optimisation signal. This is the iOS equivalent of broken conversion tracking on Android.[1][2]
7. Treating “Low” rated assets as urgent problems
Google explicitly recommends against removing assets rated “Low” when it would leave the ad group with fewer assets than its maximum. A low-rated asset contributing to the combination pool is better than an empty slot. Remove low-rated assets only when you have higher-quality replacements ready to fill the vacated slot.[6]
Worked example
Recovering a stalled tCPA campaign that never exited learning due to over-editing
- Setup: A Hobart-based travel app running a tCPA campaign since 2 September 2026. The campaign has been in “Learning” status for 6 consecutive weeks (as of 14 October 2026). In that time, the account manager made 9 changes: 3 bid adjustments (each between 15–30%), 2 budget changes, 2 conversion action edits, and 2 asset replacements. Daily conversion volume averaged 8 events/day against a target CPA of $28.00 AUD.
- Numbers: 9 edits over 42 days = 1 edit every 4.7 days. Google recommends no significant changes for at least 14 days after any edit. Minimum daily budget for tCPA: 10 × $28.00 = $280/day. Minimum recommended learning budget: 15 × $28.00 = $420/day. Actual daily budget during the period: $210/day — below even the $280 minimum floor. 8 conversions/day is well below the 30/day iOS threshold and below practical tCPA learning requirements.[16]
- Decision: Increase the daily budget from $210 to $420 (15× the $28.00 CPA target). Freeze all campaign settings — no bid, budget, asset, or conversion action changes — for 21 days from 14 October 2026 until 4 November 2026. If the campaign has not exited learning by 4 November 2026, reconsider whether the conversion event is deep enough to support tCPA or whether the tCPA target needs to be raised by 20% to $33.60 to widen the auction pool.
- Why: The campaign never exited learning because every edit within 14 days of the previous one reset the learning clock; the budget was also below the 10× minimum floor, compounding the data starvation — fixing both simultaneously is the only way to give the algorithm a fair chance to stabilise.[1][6]
12. What Changed Recently (last 30 days)
As of August 2026, the most operationally relevant recent changes to Google Ads App campaigns are in creative asset specifications and bidding API capabilities. There has been no major new App campaign product launch in the last 30 days equivalent to a new bid strategy or campaign type.[37][40]
Image specification change: fixed sizes to ratio-based
Google has announced that App campaigns will transition from size-based image specifications (which previously required images in more than 30 specific pixel dimensions) to ratio-based specifications.[37] The exact timing for this change to fully take effect has not been specified in official announcements, but Google has confirmed the direction. The practical implication is that creative teams should begin producing images to ratio specifications (e.g., 1:1, 4:5, 9:16, 16:9) rather than rigid pixel dimensions, which will also reduce the number of unique image files required to achieve full placement coverage.[1][37]
New API bidding goals without target CPA or ROAS
The Google Ads API changelog notes that App campaigns have gained new bidding goal options that do not require a target CPA or ROAS to be set — allowing optimisation toward installs or total conversion value without a hard bid constraint.[40] This is primarily relevant for advertisers managing campaigns programmatically at scale or through third-party bid management platforms. It does not change the manual campaign setup flow in the Google Ads UI for most advertisers.
Continued emphasis on asset variety
Google’s recent product announcements and best-practices guidance continue to reinforce asset variety and creative optimisation as the primary levers available to advertisers in fully automated campaign types, including App campaigns.[5][38] This is consistent with the multi-year direction of App campaigns and is not a new development, but it reinforces the priority that creative production should receive in campaign planning and budgeting.
AdAttributionKit on the horizon for iOS
Industry guidance published in 2026 consistently flags Apple’s AdAttributionKit as the likely successor framework to SKAdNetwork for iOS attribution, with implications for re-engagement measurement and web-to-app attribution.[2][11] Google and MMP partners have not yet published full implementation guides for AAK within Google App campaigns as of August 2026, but advertisers with significant iOS App campaign budgets should monitor MMP release notes and Google’s iOS measurement documentation for AAK support announcements.
Worked example
Preparing a creative asset library for the ratio-based image specification change in late 2026
- Setup: A Gold Coast retail app currently uploading images to Google App campaigns using the legacy size-based specification system, with 22 separate image files covering pixel dimensions including 320×50, 728×90, 300×250, 1200×628, and others. The creative team has been briefed on the upcoming ratio-based transition.[37] The team’s next creative production cycle is scheduled for 1 September 2026.
- Numbers: Current library: 22 image files across more than 10 fixed pixel dimensions. Under the ratio-based system, the primary ratios are 1:1 (square), 4:5 (portrait), 9:16 (tall portrait), and 16:9 (landscape). To fill the 20-image-asset limit per ad group with ratio-based images: 5 × 1:1 variants + 5 × 4:5 variants + 5 × 9:16 variants + 5 × 16:9 variants = 20 images total — down from 22 files but covering all placements with fewer, more reusable assets. Estimated production saving: reducing from 22 unique compositions to 4 ratio templates × 5 creative concepts = 20 assets, but with reusable templates across future refresh cycles.
- Decision: Redesign the image production workflow from 1 September 2026 onwards to produce creative in 4 ratio formats rather than fixed pixel dimensions. Brief the design team to produce 5 distinct creative concepts per ratio. Upload all 20 assets to the ad group to fill the platform limit. Retire pixel-dimension-specific files from the production pipeline.
- Why: Google has confirmed the transition to ratio-based image specifications is coming; redesigning the production workflow now reduces rework when the specification change takes effect, and ratio-based templates are more reusable across future creative refresh cycles than fixed-dimension files.[1][37]
References
- [1] https://support.google.com/google-ads/answer/14104492?hl=en support.google.com
- [2] https://adapty.io/blog/google-app-campaigns-playbook-2025/ adapty.io
- [3] https://support.google.com/google-ads/answer/6167162?hl=en support.google.com
- [4] https://www.groas.com/post/google-ads-for-mobile-apps-2026-complete-app-campaign-guide-ins… www.groas.com
- [5] https://support.google.com/google-ads/thread/413560562/google-ads-best-practices-for-2026?… support.google.com
- [6] https://support.google.com/google-ads/answer/9176652?hl=en support.google.com
- [7] https://www.groas.com/post/google-ads-best-practices-2026-rules-that-actually-matter www.groas.com
- [8] https://admiral.media/google-app-campaigns-best-practices/ admiral.media
- [9] https://www.youtube.com/watch?v=_RTd76T6LnE www.youtube.com
- [10] https://twominutereports.com/blog/google-ads-best-practices twominutereports.com
- [11] https://ppchero.com/advanced-google-ads-techniques-to-master-in-2026/ ppchero.com
- [12] https://improvado.io/blog/google-ads-campaign-guide improvado.io
- [13] https://leadsbridge.com/blog/google-ads-best-practices/ leadsbridge.com
- [14] https://www.reddit.com/r/googleads/comments/1qaoyec/its_2026_whats_one_piece_of_google_ads… www.reddit.com
- [15] https://www.youtube.com/watch?v=3W0XeR3va20 www.youtube.com
- [16] https://appgrowthstudio.com/app-founders-2026-google-ads-growth-blueprint/ appgrowthstudio.com
- [17] https://business.google.com/ua/accelerate/resources/articles/best-practices-for-app-campai… business.google.com
- [18] https://applaunchpartners.com/scale-your-app-google-app-campaigns-in-2026/ applaunchpartners.com
- [19] https://www.youtube.com/watch?v=j3hq9YSfojw www.youtube.com
- [20] https://adspyder.io/blog/seven-essential-practices-google-app-ad-campaigns-examples/ adspyder.io
- [21] https://business.google.com/us/think/future-of-marketing/creative-rules-app-campaigns/ business.google.com
- [22] https://www.reddit.com/r/googleads/comments/1qaoh5u/what_is_best_practice/ www.reddit.com
- [23] https://liftoff.ai/blog/in-app-advertising-in-2026-a-complete-guide-for-mobile-marketers/ liftoff.ai
- [24] https://www.singular.net/blog/app-growth-strategy/ www.singular.net
- [25] https://www.measured.com/faq/ad-measurement-the-complete-2026-guide-to-accurate-actionable… www.measured.com
- [26] https://applaunchpartners.com/app-analytics-2026-marketing-strategy-shifts/ applaunchpartners.com
- [27] https://maciejturek.com/resources/app-growth-strategy-2025.html maciejturek.com
- [28] https://business.google.com/us/accelerate/resources/articles/best-practices-guide-setting-… business.google.com
- [29] https://zoomd.com/mobile-app-marketing-strategies-for-boosting-app-installs/ zoomd.com
- [30] https://business.google.com/pl/accelerate/resources/articles/best-practices-for-app-campai… business.google.com
- [31] https://openforge.io/mobile-app-marketing-playbook-high-roi-channels-2026/ openforge.io
- [32] https://www.digitalapplied.com/blog/mobile-app-marketing-statistics-2026-install-data www.digitalapplied.com
- [33] https://business.google.com/us/accelerate/resources/articles/drive-better-performance-and-… business.google.com
- [34] https://www.digitalapplied.com/blog/mobile-marketing-statistics-2026-data-points www.digitalapplied.com
- [35] https://www.measuremarketing.pro/blog/ga4-best-practices-2026.html www.measuremarketing.pro
- [36] https://www.youtube.com/watch?v=wrgRbZVLrH0&vl=en-US www.youtube.com
- [37] https://support.google.com/google-ads/announcements/9048695?hl=en support.google.com
- [38] https://business.google.com/us/accelerate/announcements/ business.google.com
- [39] https://30chars.com/blog/feb-2026-whats-new/ 30chars.com
- [40] https://developers.google.com/google-ads/api/docs/release-notes developers.google.com
- [41] https://business.google.com/us/accelerate/gml-announcements/ business.google.com
- [42] https://www.adpilotapp.com/articles/latest-google-ads-features www.adpilotapp.com
- [43] https://www.youtube.com/watch?v=_Cskn2CgjAw www.youtube.com
- [44] https://releasebot.io/updates/google/google-ads releasebot.io
- [45] https://business.google.com/it/accelerate/announcements/ business.google.com
- [46] https://business.google.com/en-all/ad-tools/google-ads-app/ business.google.com
- [47] https://support.google.com/google-ads/announcements/9048695?sjid=8306877105372648137-NA support.google.com
- [48] https://business.google.com/es/accelerate/announcements/ business.google.com
- [49] https://www.linkedin.com/posts/andrewlolk_google-shipped-19-updates-to-google-ads-in-activ… www.linkedin.com
- [50] https://savvyrevenue.com/blog/google-ads-updates/ savvyrevenue.com
- [51] https://granularmarketing.com/google-ad-updates/ granularmarketing.com
- [52] https://www.linkedin.com/pulse/google-ads-news-week-28-adriaan-dekker-vdaee www.linkedin.com
- [53] https://blog.hootsuite.com/google-ads/ blog.hootsuite.com
- [54] https://www.reddit.com/r/googleads/comments/1j8oe9l/anyone_running_app_install_campaigns_a… www.reddit.com
- [55] https://bir.ch/blog/google-ads-cost-breakdown bir.ch
- [56] https://www.wask.co/google-ads-cost/cpi-cost-per-install www.wask.co
- [57] https://grokipedia.com/page/CPI_and_ROAS_benchmarks_for_app_install_campaigns_20252026 grokipedia.com
- [58] https://support.google.com/google-ads/answer/6167156?hl=en support.google.com
- [59] https://support.google.com/google-ads/answer/13278731?hl=en support.google.com
- [60] https://neushimo.com/2026/02/21/whats-the-best-tcpa-and-cpi-for-google-ads-app-campaigns-i… neushimo.com
- [61] https://www.businessofapps.com/marketplace/app-marketing/research/app-marketing-cost/ www.businessofapps.com
- [62] https://admiral.media/mobile-app-marketing-benchmarks-2026/ admiral.media
- [63] https://www.strataigize.com/insights/understanding-the-costs-of-mobile-app-install-and-eve… www.strataigize.com
- [64] https://apsteq.com/blog/cpi-benchmarks-2026/ apsteq.com
- [65] https://www.businessofapps.com/ads/app-installs/ www.businessofapps.com
- [66] https://www.businessofapps.com/ads/cpi/research/cost-per-install/ www.businessofapps.com
- [67] https://benchhacks.com/benchmarks/googleplay-benchmarks.htm benchhacks.com
- [68] https://www.brafton.com/blog/paid-search-blog/how-much-do-google-ads-cost/ www.brafton.com
- [69] https://monaqo.in/app-install-campaign-pricing/ monaqo.in
- [70] https://benly.ai/learn/google-ads/google-ads-app-campaigns benly.ai
Don’t want to do this yourself?
Get a complete, ready-to-launch Google Ads campaign — keywords validated against real search data, copy written to the best practices on this page, and a proper negative-keyword list — built for your business and delivered within 24 hours.
One-off price · Human-reviewed · No subscription · No access to your Google Ads account
This page is maintained by Sean Cooney at Omologist.com. Content is refreshed every two months using real-time research from authoritative Google Ads sources. Worked examples are illustrative scenarios calculated from published benchmarks, not client results.

