UTM validator
A valid campaign URL needs one unambiguous source, medium, and campaign. Paste a URL here to expose all five standard UTM parameters and flag missing values, empty tags, duplicates, whitespace, unknown UTM names, or parameters placed after the fragment. Nothing is fetched and the URL never leaves this tab.
Check a campaign URL
Validation
- Requests
- · from Resource Timing
- Script
- · KB of a 100 KB budget
What this validator checks
The validator parses the URL with the same URL model a browser uses. It checks for the five conventional parameters: utm_source, utm_medium, utm_campaign, utm_term, and utm_content. Source, medium, and campaign are required here because without them a campaign row cannot reliably answer where a visit came from, which channel carried it, and which initiative earned it.
Two URLs that look tagged and are not usable
Paste https://example.com/offer?utm_source=newsletter&utm_source=facebook&utm_medium=email&utm_campaign=fall. The page reports two utm_source values and refuses to pick one. A parser that kept the first would credit the newsletter. A parser that kept the last would credit Facebook. The only honest verdict is that the attribution is ambiguous.
Paste https://example.com/offer#utm_source=newsletter&utm_medium=email&utm_campaign=fall. The tags sit after #. A browser does not send the fragment to the web server, so most analytics collection never sees them even though they remain visible in the address bar. Move the same keys onto the query string and the check can pass.
It also catches duplicate keys in any order, not only source. A URL containing two utm_medium values is syntactically legal, but different parsers may keep the first, keep the last, or expose both. The tool does not silently choose one.
Valid does not mean consistent
A URL can pass every structural check and still split one source across several rows. Analytics systems treat facebook, Facebook, and fb as different strings. This validator reports what is in one URL. The naming consistency checker compares it with the spellings you have deliberately saved on this device. Why UTM names split your reports explains the mechanism without treating it as a product bug.
Unknown parameters beginning with utm_ are reported rather than removed. Your own collection system may intentionally use one, but it is not part of the five-name convention and should not be mistaken for a standard campaign dimension.
Questions
Does a UTM URL need all five parameters?
No. Source, medium, and campaign identify the campaign. Term is normally used for paid-search keywords, while content distinguishes links or creative variants inside the same campaign.
Does this test whether the landing page exists?
No. Fetching the page would send the URL away and break the tool's privacy model. This validates the URL and its campaign parameters, not the destination server.
Why are UTM parameters after # rejected?
A browser does not send the fragment to the web server. Most analytics collection therefore cannot see campaign parameters placed there, even though they remain visible in the address bar.
Is the campaign URL stored?
No. This page keeps nothing in browser storage. A share link puts the URL after its own fragment, which browsers do not transmit to Benchvale.
Related tools
Use the UTM naming consistency checker to catch capitalization and punctuation drift against your saved vocabulary. The URL encoder explains why a space sometimes becomes %20 and sometimes becomes a plus. For the reporting mechanism, read why UTM names split your reports.