Tools

Campaign Naming Generator

Consistent campaign names and matching UTMs

Campaign name
Matching UTM parameters
Saved names

How to name marketing campaigns consistently

  1. Fill in the parts of the name: date, channel, source, objective, product or offer, audience and creative variant.
  2. Choose a separator and the order of the parts. Everything is converted to lowercase with hyphens inside each part, so names are clean and sortable.
  3. Copy the name into your ad platform, email tool or CRM, and use the matching UTM parameters on your links. Save names to a list and download it as a CSV for your team's naming sheet.

Why a naming convention matters

Campaign names are how you find, filter and report on everything later. When one person writes "Spring Sale FB" and another "fb_spring-sale_2025", reports split the same campaign in two and pivot tables become guesswork. A fixed structure such as 202503_paid-social_meta_acquisition_spring-sale_uk-lookalike-1pct_video-a tells anyone what a campaign is, sorts by date, and lets you filter by any part in spreadsheets or analytics tools.

Agree the parts and the allowed values with everyone who launches campaigns, write them down, and stick to lowercase, because analytics tools often treat "Email" and "email" as different. Put the most important filter first: most teams start with the date or the channel. Keep names reasonably short so they are readable in ad manager tables, and keep the same values in your UTM parameters so ad platform data and website analytics line up. Names are generated in your browser and the saved list stays on this device.

What should a campaign name include?

Typically the date, channel, source, objective, offer and audience, plus a creative or variant code for ads and tests.

Underscores or hyphens?

Use one to separate parts and the other inside parts. Underscores between parts with hyphens within them is a popular choice.

Should UTM values match campaign names?

Yes. Matching values let you join ad platform reports with website analytics without manual mapping.