Campaign naming and UTM builder

Set your naming convention once. Build campaign names and tracking links in bulk, and catch the mistakes before they go live.

Check existing links

Free, no signup. Everything runs in your browser: nothing you type is sent to us. Your convention and rows are 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 it checks

    New to naming conventions?

    Read the campaign naming convention guide: a template for campaign, ad set and ad names, and how they go into your UTM tags.

    Running Google Ads?

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

    Checking links you already have?

    Use the UTM link checker: paste a whole list and see what will break your reports.

    FAQ

    Questions, answered

    Naming conventions, bulk links and Meta macros, in plain words.

    Still stuck? Email hello@weekendproof.com

    What is a good campaign naming convention?

    One that puts the same parts in the same order every time, with one separator, one letter case and no empty parts. A common pattern is Brand_Platform_Objective_Geo_Audience_YYYYMM, for example acme_meta_sales_us_prospecting_202611. Pick the parts you report on, set them once in step 1, and the builder applies them to every campaign. Switch on Also name ad sets and ads to get ad set and ad names too.

    Can I build UTM links in bulk?

    Yes. Add one row per campaign, or paste rows from a spreadsheet in any column order: the builder matches columns by their header names. It makes a campaign name and a tracking link for every row, and you can copy them all or download a CSV.

    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. The builder and the link checker are free, with no signup and no limit on rows.