How Google Play campaign tracking works
A normal UTM link stops working at the Play Store: the store page is not your website, so your analytics script never sees the parameters. Google Play solves this with the install referrer. Anything you put in the referrer parameter of a Play Store URL is stored by Google Play and handed to your app the first time it opens, through the Play Install Referrer API.
The Firebase SDK (Google Analytics for Firebase) reads that referrer automatically and records the utm_source, utm_medium and utm_campaign values on the first_open event, which is how installs appear under the right campaign in GA4. The builder above packs your UTM values into the referrer parameter and URL-encodes them correctly – the step that is easiest to get wrong by hand, because the referrer value is itself a query string inside a query string.
https://play.google.com/store/apps/details?id=com.example.app&referrer=utm_source%3Dnewsletter%26utm_medium%3Demail%26utm_campaign%3Dspring_launch
Tips for Android campaign links
- Use the exact package name. It is the id= value in your Play Store URL, e.g. com.example.app – not the app’s display name.
- Keep naming identical to your web links. If the web campaign uses newsletter / email / spring-launch, use the same values here so web and app results roll up together.
- Google Ads app campaigns tag themselves. Use this builder for everything else: email, social posts, partners, QR codes and websites that link to your app.
- Test before launch. Install from the link on a test device and check the first_open event in GA4 DebugView.
Promoting the iOS version as well? Use the App Store Campaign Link Builder.