Bridgly
Attribution1 min read

UTM parameters for app campaigns: a naming convention that survives

UTM tags are trivial to add and easy to ruin. Here is a naming convention that still reads clearly after a hundred campaigns, and the specific mistakes that make app campaign data useless.

UTM tags take seconds to add, which is exactly why they end up a mess. Nobody agrees on capitalisation, everybody invents their own campaign names, and six months later the report has four rows for one campaign.

What each one is for

utm_source — the platform. instagram, newsletter, podcast.

utm_medium — the type of traffic. paid_social, email, qr, referral.

utm_campaign — the specific push. spring_launch, black_friday.

utm_content — which creative. video_a, static_b. Only when testing.

utm_term — keyword or audience. Only for keyword campaigns.

The convention

Lowercase everything. Analytics treats Instagram and instagram as two sources. One stray capital splits a campaign in half.

One separator, forever. Underscores or hyphens, pick one. Mixing them creates the same split.

Date-stamp recurring campaigns. newsletter_2026_09 beats newsletter when you want month-over-month.

Write the source down. A shared list of approved values, however informal, prevents ig / insta / instagram appearing as three sources.

Where it breaks for apps

UTMs are a web convention. They are read by web analytics on your site. The App Store and Google Play are not your site.

So a UTM-tagged link to a store page tells you the click happened. It cannot tell you the install happened, and it certainly cannot carry the campaign into the app afterwards.

That gap is what a routing link fills: it reads the UTM on the way through, records it against the click, and can hold the destination across the install.

The mistake that costs most

Tagging some links and not others. A half-tagged account is worse than an untagged one, because the untagged traffic piles into direct and quietly makes your best channel look like your worst.

If you tag anything, tag everything.

Frequently asked questions

Do UTM parameters work for app installs?
They work up to the store. UTMs are read by web analytics, and the App Store and Google Play are not your website. The tags describe the click; carrying that context into the app after install requires a link layer that holds it.
What are the five UTM parameters?
utm_source is the platform, utm_medium is the type of traffic, utm_campaign is the campaign name, utm_content distinguishes creative variants, and utm_term carries a keyword or audience.
Should UTM values be uppercase or lowercase?
Lowercase, always, and pick one separator. Analytics tools treat Newsletter and newsletter as different values, so a single capital letter silently splits one campaign into two rows.
How many UTM parameters should I use?
Source, medium and campaign on everything. Content when you are testing more than one creative. Term only for keyword-driven campaigns. Filling in all five out of habit adds noise.

Read more