UTM link checker

Paste your tracking links and check them all at once, before they go live. It catches the small mistakes that split your reports in GA4: capital letters, spaces, missing tags, two spellings of the same source, and campaign names that break your naming convention. Works with links from any ad platform.

Build new links

Free, no signup. Everything runs in your browser: nothing you paste is sent to us. Your convention is saved only in this browser. We only count which buttons get used, with no cookies.

What we catch

Pick one to see it caught in a real link.

1 Set your naming pattern

Your names are built from parts, like Brand, Platform and Geo. Tick the parts you want and use the arrows to put them in order. You only do this once: this browser remembers it.

    Your names will look like this Updates as you change the parts above

    What goes in your tracking links

    Saved in this browser only. Export it as a small file to use on another computer or share with your team, then load that file there with Import. Import only reads files exported from this tool.

    2 Add your campaigns

    Add one row for each campaign. Fill in the parts you chose in step 1 and the page people should land on. You don't write the campaign name yourself: step 3 puts the parts together for you. When you choose a platform, the source and medium fill in by themselves. Cells with a small arrow have a list of common choices: click the cell to see it, or type your own.

    3 Copy your names and links

    Made from your rows in step 2, and updated as you type. Paste each name into your ad platform's campaign name, and each link into the ad's website address.

    Already have links? Check them for mistakes before launch.

    Check your links

    4 Check links you already have

    Paste tracking links, one per line, from an ad platform export, a sheet or a brief. Tags on their own (like utm_source=facebook&utm_medium=paid_social from Meta's URL parameters field) work too. They are checked against your naming convention, and Macros for Meta, Google, Microsoft Ads, TikTok, DV360 and CM360 are checked by name for the platform in utm_source. Nothing is saved or sent anywhere.

    Coming next: the pre-flight checker for Meta and Google

    Upload your Ads Manager or Google Ads export, tell it what you meant, and it flags what launched wrong: wrong geo, an extra zero on the budget, a missing end date, the wrong creative. Your file stays in your browser.

    What campaign error bit you last month?

    Early-access members try the checker first. We use your email only to tell you when it opens. No spam, no sharing. Privacy

    What the checker looks for

    Need new links instead?

    The campaign naming and UTM builder makes names and links in bulk from the same convention, so they pass this check the first time.

    Running Google Ads?

    Read tracking template vs final URL suffix: where UTM tags go in Google Ads, with a suffix you can copy.

    FAQ

    Questions, answered

    Why UTM links break, how to test them before launch, and what this checker looks for.

    Still stuck? Email hello@weekendproof.com

    Are UTM parameters case sensitive?

    Yes, the values are. Google Analytics 4 reports utm_source=Facebook and utm_source=facebook as two different sources, so one campaign shows up split across two rows. Old data cannot be merged afterwards. Use lowercase for every value; the link checker flags capital letters and can fix them for you.

    How do I test UTM parameters before a campaign goes live?

    Paste your links above, one per line, and press Check links. Each link is marked Ready, Fixed, Needs a look or Action needed, with the reason. It checks missing or empty tags, capital letters, spaces, duplicate tags, tags after a #, different spellings of the same source or medium, and campaign names that break your naming convention.

    Why are my UTM parameters not showing in GA4?

    The most common causes are tags placed after a # in the link, a second ? in the link, a missing utm_source or utm_medium, and a redirect that drops the query string. The first three are caught by pasting the link into this checker. A redirect has to be tested by opening the link and checking the address that loads.

    Does it work for TikTok, LinkedIn and other ad platforms?

    Yes. The checks on tags, capital letters, spaces and spellings work on links from any ad platform, email or social post. Macros are checked by name for Meta, Google, Microsoft Ads, TikTok, DV360 and Campaign Manager 360, against each platform's own help pages, and a macro from the wrong platform is flagged. LinkedIn's dynamic parameters, like {{AD_NAME}}, are checked for capitals and for the names LinkedIn retired in October 2025. The Trade Desk's macros, like %%TTD_CREATIVEID%%, are kept exactly as typed and marked for a quick look, because its list is behind a login.

    Can it check links against my naming convention?

    Yes. Set your convention once in step 2, and every utm_campaign is checked for the right number of parts, empty parts and the right separator. The convention is saved in this browser and shared with the campaign naming builder.

    Which Meta ads URL parameters can fill in names automatically?

    Meta Ads Manager fills in eight dynamic parameters at click time: {{campaign.id}}, {{campaign.name}}, {{adset.id}}, {{adset.name}}, {{ad.id}}, {{ad.name}}, {{placement}} and {{site_source_name}}, plus {{media_type}} for Advantage+ catalog ads. They need double curly braces and the exact spelling. The link check flags single braces and misspelt names, which Meta would not fill in.

    Does my data leave my browser?

    No. Names, links and your naming convention are built and checked in your browser and saved only in this browser. We count which buttons get used, with no cookies and nothing you type.

    Is it free?

    Yes, with no signup and no limit on links.