Links

UTM Extractor

Details

How to use UTM Extractor

What the tool does, how to run it, and what to expect from the result.

How to extract UTM parameters from a URL

To inspect a campaign link, paste it into UTM Extractor and it parses the query string and lays out the five core UTM fields, utm_source, utm_medium, utm_campaign, utm_term, and utm_content, so you can confirm what is inside the link at a glance. It also lists any extra, non-UTM query parameters so the full tracking context stays visible.

This is inspection-first: the tool reads the URL but does not rewrite it. You can copy the parsed result as plain text or as JSON, which is handy for documenting campaigns or feeding the values into a spreadsheet or another tool.

Parsing happens locally in your browser. The campaign URL you paste never leaves your device, so internal or unreleased links stay private.

  • Auditing an existing campaign link before reusing it
  • Confirming the exact source, medium, and campaign values
  • Documenting link parameters for a campaign log
  • Exporting UTM values as JSON for another tool

Why inspect instead of build?

UTM Extractor sits next to a UTM link builder for a reason: many people do not need to create a new campaign link, they need to inspect an existing one quickly and confirm what it contains. Reading a link cleanly removes the guesswork before you share or report on it.

Because it lists extra non-UTM parameters alongside the standard UTM fields, you see the complete tracking picture, not just the campaign tags. If you then want to remove or rebuild parameters, a cleaner or builder tool handles that next step.

Tips

Getting a better result out of UTM Extractor

Specific settings and thresholds, not general advice.

  • The extractor recognizes exactly five keys as UTMs: utm_source, utm_medium, utm_campaign, utm_term, utm_content. Newer tags that Google still treats as campaign data, like utm_id or utm_source_platform, fall into the 'Extra parameters' list, so read that block as well before you conclude a link is untagged.
  • A plus sign inside a query value is decoded to a space before display, so utm_campaign=spring+sale reads as 'spring sale'. That matches how most analytics back ends read it, but a campaign name that genuinely contains a plus will not survive the round trip.
  • Paste example.com/page?utm_source=x without a scheme and https:// is added for you, with a normalization note in the side panel. The extracted values are unchanged, but the base URL shown will now start with https://.
  • Duplicate UTM keys are not collapsed. If utm_source appears twice, both values show up comma-joined in the same row, which is almost always a sign that two systems appended tags to the same link and analytics will pick one of them arbitrarily.
  • No request is ever made to the URL, so the tool cannot tell you that the destination 301-redirects and drops the query string on the way. A redirect that eats the query is the most common reason a correctly tagged link still reports as direct traffic.
Limits

What UTM Extractor does not do

The honest boundary, so you do not lose time finding it yourself.

  • Only the five classic utm_* keys are classified as UTMs; utm_id and other variants are reported as extra params.
  • One URL per run. There is no bulk paste, CSV import, or spreadsheet mode.
  • The URL is never fetched, so redirects, 404s, and query-stripping destinations go undetected.
  • Non-http and non-https inputs (mailto:, ftp:, app deep links) are rejected rather than parsed.
Reference

Terms used on this page

Short, plain-language definitions for the formats and settings above.

At a glance

Who UTM Extractor is for

A quick way to understand who this helps, what it solves, and where it connects next.

Best fit

Marketers, founders, SEO operators, and QA teams checking campaign links before launch or reporting.

Ideal for

Breaking one campaign URL into readable UTM fields without opening analytics or a spreadsheet.

FAQ

Common questions

Short answers for the questions people usually have before trying a utility like this.

Does it only show the standard UTM fields?

No. UTM Extractor shows the five core UTM fields and also lists the extra non-UTM query params, so the full tracking context stays visible.

Does this change the URL?

No. UTM Extractor is inspection-first and does not rewrite the link. Use a cleaner or builder tool if you want to change parameters.

Can I export the result?

Yes. You can copy the parsed UTM values as plain text or as JSON for documentation or for use in another tool.

Does it upload my URL to a server?

No. UTM Extractor runs entirely in your browser. The link you paste is parsed locally on your device and never uploaded.

Is it free?

Yes. UTM Extractor is free to use with no account and no upload required.

Why is my utm_id listed under extra parameters instead of with the UTMs?

The tool matches five keys exactly: utm_source, utm_medium, utm_campaign, utm_term, utm_content. utm_id is a real GA4 campaign field but it is not in that list, so it is grouped with the other non-UTM query params. The value is still shown in full, it just sits in the extras block.

My campaign shows as 'spring sale' but I wrote 'spring+sale'. Which is right?

Both, depending on who is reading. In a query string, a plus is the legacy encoding for a space, so the tool decodes it that way and shows 'spring sale'. Most analytics back ends do the same. If you need a literal plus in a campaign name, encode it as %2B, otherwise it will keep turning into a space everywhere.

Can I paste a shortened link and see the UTMs?

No. A short link like a bit.ly URL carries no query string of its own, so the tool reports a host and a path and no UTMs. The tags live on the destination that the shortener redirects to. Expand the link first, then paste the expanded URL.

Does the URL get sent to a server?

No. Parsing runs in your browser with the built-in URL API, and the copy and download buttons write from memory. Nothing about the link, including any session token or email address hiding in a query param, leaves the tab.

What extra information does the JSON export carry over the text summary?

The JSON includes the origin, path, fragment, duplicate keys, empty-value keys, and bare keys, plus every parameter in its original order with four booleans: hasValue, repeated, utm, and tracking. The text summary is the five UTM rows and the extras list. Use JSON when you are feeding a script, text when you are pasting into a ticket.

The fragment says '(none)'. Should there be something there?

Usually not. The fragment is the part after a # and it is never sent to the server, so it cannot carry campaign data to analytics. An empty fragment on a campaign link is the normal case.

Recommendations

You Might Also Like

Nearby tools from the catalog that fit the same job or workflow.

Cleanor app

Do it all on your device

Cleanor puts these tools in one app: compress and convert images, video, and audio, work with PDFs, and scan text right on your device. Plus free up storage and clear inbox clutter with Email Cleaner. Start with a free trial.

  • iPhone
  • Android
  • Macsoon
  • Windowssoon