Skip to main content

Utm Not Passing

If UTM parameters from your short link URL aren't appearing in the destination URL, use this guide to diagnose and fix the issue.

You added UTM parameters to a short URL, followed it, and the address you landed on does not have them. There are four realistic causes, and they are quick to tell apart: the feature is off or unavailable, the destination already carries that parameter, the parameter is not one of the six that get forwarded, or the parameter itself is malformed.

Check the setting and your plan

  1. Open Short Links and go to Settings

  2. Find the UTM Passthrough section

What you see there tells you where you stand:

  • A toggle switched on - The feature is working; move on to the next check

  • A toggle switched off - Switch it on and retest. Passthrough is on by default, so someone has turned it off.

  • An “Upgrade to enable” badge instead of a toggle - Passthrough needs a paid plan. Until you upgrade, put the parameters in the destination URL instead, as described at the end of this article.

Check the destination is not already tagged

This is the most common cause once the setting is confirmed. Passthrough never overwrites a parameter the destination already has — it only fills in the ones that are missing.

  • The destination is yourstore.com/sale?utm_source=website

  • You share yourstore.com/sale-link?utm_source=facebook

  • The visitor arrives with utm_source=website, because the destination’s value stands

To check, open the link in the app and look at Original URL. If it has UTM parameters on it, that is your answer. Since a destination cannot be edited after a link is created, the fix is a new link with a plain destination.

Note that this is per parameter, not all-or-nothing: a destination carrying only utm_source will still accept a utm_medium from the short URL.

Check the parameter is one that gets forwarded

Exactly six parameters are carried through:

  • utm_source

  • utm_medium

  • utm_campaign

  • utm_term

  • utm_content

  • utm_id

Anything else on the short URL is dropped, including custom tracking parameters, platform click IDs and your own naming variants. A misspelling counts as “anything else” — utm_med and utmsource are silently ignored.

Check the parameters are well formed

Good:

yourstore.com/sale?utm_source=instagram&utm_campaign=winter_sale_2026

Problematic:

yourstore.com/sale?utm_source=instagram bio&utm_campaign=winter sale!

Fixed:

yourstore.com/sale?utm_source=instagram_bio&utm_campaign=winter_sale
  • Spaces - Replace them with underscores rather than encoding them; it reads better everywhere

  • Punctuation - Avoid #, & and = inside a value unless properly encoded, since each one means something structural in a URL

  • Case - Facebook and facebook are two separate sources in Google Analytics, so pick lowercase and stay with it

  • Structure - One ? to begin, & between each parameter after that

Test it end to end

  1. Confirm the toggle in Settings is on

  2. Create a link whose destination has no UTM parameters at all

  3. Copy its short URL from the app and add ?utm_source=test&utm_medium=test

  4. Follow it in a private browsing window

  5. Look at the address bar where you land, not the page content

If both parameters are there, passthrough is working and the original problem is one of the specific cases above. If they are not, recheck the plan and the toggle before anything else.

Working without passthrough

On the free plan, or when you would rather have the tagging fixed to the link, put the parameters in the destination when you create it:

  • Destination - yourstore.com/collections/sale?utm_source=facebook&utm_medium=social

  • Short link - yourstore.com/sale-fb

Then make one link per channel: sale-fb, sale-ig, sale-email. It is more links to manage, and the tagging cannot be changed afterwards, but it works on every plan. A URL builder such as Google’s Campaign URL Builder will assemble the tagged address for you and avoid encoding mistakes.

Quick checklist

  1. UTM Passthrough is switched on in Settings

  2. You are on a paid plan

  3. The destination URL does not already carry that parameter

  4. The parameter is one of the six forwarded names, spelled correctly

  5. No spaces or unencoded punctuation in the values

  6. Tested in a private window, checking the address bar after the redirect

Next Steps

Did this answer your question?