Resource · Free download

Google Ads Naming Conventions

Pick this taxonomy on day one and you’ll never need to renormalize 5,000 campaign names later. Used by agencies running 10-1000 accounts.

Print or save as PDF using your browser’s built-in print menu (Cmd/Ctrl + P).

If you only adopt one operational standard at an agency, make it this. Naming conventions sound boring but they’re the difference between exporting a Google Ads report into a pivot table that just works and exporting one that requires three regex passes to clean up.

The format below is field-tested across hundreds of accounts. Adopt verbatim, or fork and document your variations.

Campaign name pattern

<Brand>_<Channel>_<Goal>_<Audience>_<Region>_<Period>

Brand     : 2-letter brand code (e.g. MO for MarqOps)
Channel   : SRCH / DISP / VID / PMAX / DEM
Goal      : ACQ (acquisition) / RETARG / BRAND / NURTURE
Audience  : COLD / WARM / HOT / LOOKALIKE-1
Region    : US / EU / APAC / GLOBAL
Period    : 2026Q1 / 2026Q2 / EVERGREEN

Example: MO_SRCH_ACQ_COLD_US_2026Q2

Ad group name pattern

<Theme>_<MatchType>

Theme     : descriptive 1-3 word topic
MatchType : EXACT / PHRASE / BROAD / MIXED

Example: CRM_BEST_PHRASE

Ad asset / RSA name pattern

<AdGroupTheme>_<Variant>_<Date>

Variant : V1 / V2 / V3 (incrementing by test cohort)
Date    : YYYYMM

Example: CRM_BEST_V2_202605

UTM parameter values

All values lowercase, underscored. No spaces, no dashes, no PII.

  • utm_source: google / bing / facebook / linkedin
  • utm_medium: cpc (paid search), paid_social, display, email, affiliate
  • utm_campaign: campaign name without spaces, lowercase. Example: spring_promo_2026q2
  • utm_content: variant or placement identifier
  • utm_term: paid keyword (only for paid search)

Negative keyword list naming

<Scope>_<Theme>

Scope : ACCOUNT (shared across) / CAMPAIGN-only / ADGROUP-only
Theme : descriptive (jobs / cheap / freebies / competitor / brand-protection)

Example: ACCOUNT_jobs_seekers

Why this matters

  • Slice reports by any axis (channel / goal / audience / region) without manual cleanup.
  • Pivot tables work first try — no “hmm what does CRM_VAR_2 mean?”
  • Exports are diffable, alphabetizable, and parseable by scripts.
  • Hand-offs between team members don’t require a 30-minute “our naming convention” download.

Adoption tips

  1. Pin this doc in your shared agency wiki / Notion / Confluence.
  2. Run a one-time migration script: rename existing entities to the new format. Costs a few hours, saves dozens of weeks.
  3. Add a CI-style check: a script that verifies new campaign names match the pattern before launch.
  4. Revisit annually — naming conventions get stale; add new dimensions (e.g., AI vs human-written ads) when needed.

Related