← Writing

Google Search Ads for app installs: the complete breakdown

Why it’s broken by design, and what actually works.

I co-wrote this with Burak Arslan (Sr. Search Engine Marketing Expert). We’ve both spent way too much time trying to make Google Search work for app installs. Here’s everything we learned.

Update (February 26, 2026): added new info on Adjust’s web-to-app tracking template as an alternative to the manual offline conversion pipeline, a gotcha about Adjust’s tracking template failing Google’s URL test on iOS, and expanded the Web to App Connect section. Thanks to Burak Arslan for the original co-write, and to Murat Turan and Matthieu Moly for surfacing the Adjust web-to-app setup in the wild.

The problem

You want to run Google Search campaigns for your app. Keyword control. Search term visibility. The stuff that makes Search powerful for web advertisers.

Google says: “Use App Campaigns.”

App Campaigns DO show your ads on Search. But:

  • Zero keyword control
  • No search term visibility
  • Budget burns on whatever Google decides
  • Since mid-2024, ads also appear in Play Store with zero visibility

“Can’t I just run normal Search campaigns for app installs?”

No. It’s broken by design.

Why it’s broken

Standard Search campaigns can’t track app installs. Here’s why:

Android: GCLID works via Play Install Referrer API. Attribution is technically possible with workarounds.

iOS: GCLID doesn’t work at all. Users redirect through the App Store, breaking the attribution chain completely.

Performance Max: doesn’t support app install goals. Web-first only.

Google won’t give you keyword data in App Campaigns. You’re in their black box.

If you go with App Campaigns, here’s what you’re dealing with

Most advertisers end up using App Campaigns anyway. No keyword control, but it works if you have volume. Here’s what you need to know.

Optimize for post-install events, not installs. App Campaigns should target trials, subscriptions, purchases. If you’re optimizing for installs, you’re doing it wrong.

You need at least 10 post-install events per day. This is what Google’s algorithm needs to learn. Below this, the algorithm can’t optimize and you’re burning budget with zero signal.

Google asks you to set a target bid before you know your economics. New advertisers are guessing their target CPA or ROAS, then paying to find out if they guessed right. If you don’t have historical data, this is brutal.

No strategy overcomes a tiny addressable market. If you can’t hit these thresholds, the question isn’t which workaround to use. It’s whether paid Search is the right channel at all.

Your options

1. Text-only App Campaigns

The default choice if you have volume.

Run an App Campaign with only text assets (no images, no video). This biases delivery toward Search inventory.

Effort: Very low · Scale: High · Attribution: Limited (still no keyword data)

You still won’t see which keywords drove conversions. You’re just more likely to appear on Search instead of Display or YouTube.

Important: text-only doesn’t guarantee Search-only. Google can combine your text with your app icon and serve it as display. Monitor your network segment.

Play Store trap: since mid-2024, App Campaigns also appear in Play Store searches. Zero visibility into this. Your brand terms can trigger ads.

For established brands: this is where you risk cannibalizing organic installs. Ask your Google rep to exclude brand terms.

2. AppStack SDK

Worth considering if you need keyword-level data.

Third-party tool that automates Search-to-App attribution. Integrates with your MMP (Adjust, AppsFlyer, etc.).

Effort: Moderate · Scale: Moderate · Attribution: Keyword-level ROAS

Good for teams who want to understand which keywords perform but don’t have the engineering resources for a custom pipeline.

3. Adjust + offline conversions

High effort, full control.

Build a manual pipeline:

  • Adjust deep link captures GCLID
  • Export conversions to Google Sheets
  • Upload as offline conversions via GCLID matching

Effort: High · Scale: Low · Attribution: Deterministic (100% accurate)

Whether this makes sense depends on your business. If you have niche audiences, small budgets, or absolutely need attribution accuracy, it can work. It doesn’t scale easily, but for some businesses that’s fine.

Alternative: Adjust web-to-app tracking template. If you’re running classic Search campaigns (not App Campaigns), Adjust has a native web-to-app setup that doesn’t require the manual GCLID pipeline above.

How it works: you enable the Google Ads SAN integration, set up your final URL in Google Ads, then create Adjust link URLs for each campaign type (Search, Display, Video, PMax, etc.). Use the Adjust link URL as your Tracking Template.

Effort: Moderate · Scale: Moderate · Attribution: Keyword-level (via standard Search campaign reporting)

This works best for Android, where GCLID attribution via Play Install Referrer API is solid. On iOS, you still have the same attribution gap described above. The App Store redirect breaks the chain, and Adjust even notes that Google Ads might not claim attribution for certain users in web-to-app campaigns.

I haven’t tested how other MMPs handle this yet. If you’re on AppsFlyer, Singular, etc., check with your rep whether they support a similar tracking template flow for web-to-app Search campaigns.

If you’re working with an engineer on this: make sure they’re reading all the tracking guidelines needed for your specific case (Google, MMP, deep linking, etc.). If they’re not reading the documentation, they’re not the right engineer for this job.

4. Performance Max

Not applicable.

PMax doesn’t support app install goals. Only relevant if you have a hybrid web + app funnel, which is rare.

5. Web to App Connect

Emerging option if you have web presence.

Google’s framework for unifying web and app advertising. Supports Search, Shopping, YouTube campaigns pointing to app installs.

Best for advertisers who already have a web funnel and want to extend it to app.

If you’re on Adjust, this pairs with their web-to-app tracking template setup (see option 3 above). You create dedicated link URLs per campaign type, use them as tracking templates, and get attribution without the manual offline conversion pipeline. Keep in mind the iOS limitations still apply here. The web-to-app flow is most reliable on Android. I don’t know yet how other MMPs handle the Web to App Connect flow, so check with your provider.

Will Google ever give us keyword control?

No.

Everything in Google’s product direction points away from advertiser control:

  • AI Max
  • Broad match as default
  • Play Store added to UAC with zero visibility
  • Auto-applied recommendations that burn budget

This is the pattern. Automation over transparency. Google’s goals over yours.

Apple is expanding keyword-driven App Store ads. Google won’t follow. They’ve chosen a different path.

The gotchas nobody tells you

Every new Google Ads account comes with settings designed to maximize Google’s revenue:

  • Broad match on by default
  • Brand terms mixed into UAC
  • Display network expansion enabled
  • Auto-applied recommendations active

If you’re not actively checking these, you’re leaking budget. Spend an hour on a new account just finding buried settings.

Adjust tracking template can fail Google’s URL test on iOS. If you’re using Adjust for web-to-app campaigns targeting iOS, Google might reject your tracking template because Adjust shows an intermediate landing page instead of redirecting straight to the App Store. Make sure you’re using the correct link format for your campaign type. Branded links and universal links are NOT supported as tracking templates. If you hit this, check Adjust’s web-to-app documentation for the right link structure. This issue has been reported specifically on iOS. Android doesn’t seem to be affected the same way.

ICM: iOS attribution is changing

ICM (Integrated Conversion Measurement) is specifically for iOS. Android already has proper attribution via Play Install Referrer API.

Current status:

  • Publicly available outside the EU
  • Many brands already whitelisted
  • EU still pending

This could reduce the need for iOS workarounds. Monitor your MMP for updates. But don’t wait for it. Build your strategy with current tools.

What to do now

  • Decide: can you realistically hit 10+ post-install events per day?
  • If yes: text-only App Campaigns. Monitor network segment.
  • If yes but need keyword data: AppStack for automated attribution, or the Adjust offline pipeline for full accuracy.
  • If no: Google Search probably isn’t your channel yet. Focus on Meta, build volume, come back later.
  • Established brands: request brand term exclusions from your Google rep.
  • Test small. Verify data after 2 weeks.
  • Watch ICM rollout for iOS improvements.

Bottom line

Google Search is valuable inventory. But Google doesn’t want you to control it.

Even with volume, you’re in a black box. No keyword data. No search term visibility. Just trust the algorithm.

If you have volume (10+ post-install events/day) and historical data, App Campaigns work. Accept the black box.

If you need keyword control, choose your workaround based on effort vs. accuracy.

If you’re just starting with limited budget and no historical data, Search probably isn’t your first channel. Get creative testing done on Meta first. Build your post-install data. Graduate to Google when you have volume and know your numbers.

Work with Google’s limits, not against them.