9 Marketing Campaign Name Examples That Improve Reporting

Open your GA4 Campaigns report and you will likely see entries like q1_promo, q1-promo-new, q1-promo-final, and q1promo2. Four rows, one campaign, zero way to compare its real performance.
This is the campaign name problem. It happens everywhere a team grows past two marketers, and it gets worse the longer the dataset lives. A bad campaign name is invisible at the moment a tagged link goes live, then it slowly poisons every dashboard, every monthly review, and every ROI conversation for the next 18 months.
The fix is not more tools. The fix is a small set of frameworks that turn campaign names into a readable, durable label your future self (and your CMO) will still understand. This guide is a working list of 9 marketing campaign name examples and the frameworks behind them, plus the specific reporting failures each one prevents.

Why a Campaign Name Matters More Than It Looks
A campaign name is the only field in your tracking stack that has to survive across every channel, every analyst, and every reporting cycle. The utm_campaign value is what GA4 stores against every session, conversion, and revenue event tied to that promotion. When two teammates tag the same campaign with spring_sale and Spring-Sale, the data splits into two rows that look like two different campaigns. Multiply that across a team of six over a quarter and your channel comparison reports become unusable.
A useful campaign name does three jobs at the same time.
- Identifies the promotion. A teammate reading the report nine months later should know what
widget_v2_launchrefers to without asking. - Survives time. The name should still make sense after the campaign ends, because attribution reports keep showing it.
- Stays consistent across channels. The same campaign value runs on email, paid social, and search, so all three roll up to one comparable row.
This is the gap most teams miss. Formatting rules (lowercase, hyphens, no spaces) are well covered in our UTM naming conventions guide. This article is about the words themselves: what to call your campaign so the report still tells a clean story months after the campaign ends.
Quick Reference: 9 Frameworks at a Glance
The table below summarizes the nine frameworks covered in this article. Pick the one that matches your campaign type, fill in the variables, and stick to it across every channel.
| # | Framework | Pattern | Example |
|---|---|---|---|
| 1 | Promotion + period + year | [promo]_[period]_[year] | summer_sale_2026 |
| 2 | Product + launch + version | [product]_v[N]_launch | widget_v2_launch |
| 3 | Audience + offer + date | [audience]_[offer]_[period] | enterprise_demo_may_2026 |
| 4 | Lifecycle flow | [stage]_[trigger] | cart_abandonment_flow |
| 5 | Event-driven | [event]_[year] | dreamforce_2026 |
| 6 | Recurring annual | [acronym]_[year] | bfcm_2026 |
| 7 | A/B test variant | [campaign]_test_[variant] | pricing_test_b |
| 8 | Co-marketing / partner | partner_[name]_[period] | partner_acme_q2_2026 |
| 9 | Region or segment | [region]_[campaign]_[period] | apac_launch_q3_2026 |
Each section below shows when to use the framework, two concrete examples, and the reporting failure it prevents.
1. Promotion + Period + Year
Use when: you run seasonal or time-bound promotions (sales, BOGO, discount events).
Pattern: [promo]_[period]_[year]
Examples:
summer_sale_2026bogo_holiday_2026
This is the workhorse framework for retail and e-commerce. The year is the most important component, because seasonal promotions repeat. A campaign tagged summer_sale without a year collides with last year’s summer_sale the moment GA4 surfaces a multi-year comparison. Adding 2026 keeps the two separated and lets you stack them in a year-over-year view.
The reporting failure this prevents: the “we did better last year” question that nobody can answer because the two campaigns share a single row.
2. Product + Launch + Version
Use when: you are launching a new product, a major version, or a re-release.
Pattern: [product]_v[N]_launch
Examples:
widget_v2_launchmobile_app_launch_2026
Launches are where campaign naming usually fails first. Teams pick a creative codename like project_north_star that means nothing to a finance analyst pulling the report a year later. Use the product name and a version or year. Save the creative codename for internal Slack channels.
The reporting failure this prevents: a marketing director pulling the launch ROI report and not being able to match campaign names to actual products in the catalog.

3. Audience + Offer + Date
Use when: you run segmented campaigns aimed at a specific persona or list.
Pattern: [audience]_[offer]_[period]
Examples:
enterprise_demo_may_2026smb_trial_offer_q3_2026
Most B2B campaigns are segmented. The same offer often runs to two or three audiences with different creative, different landing pages, and different conversion expectations. If you tag both as demo_offer, the report rolls them up and hides the real story: enterprise leads convert at half the rate of SMB but at five times the deal size.
Embedding the audience in the campaign name keeps the segments separate without forcing analysts to filter on a second dimension. It also keeps the utm_source field free for the platform name (where it belongs) instead of misusing it for audience segmentation.
The reporting failure this prevents: two audience segments getting blended into one row in the Campaigns report and hiding their very different conversion behavior.
4. Lifecycle Flow
Use when: you are tagging an automated email or product nurture sequence.
Pattern: [stage]_[trigger]
Examples:
welcome_seriescart_abandonment_flow
Lifecycle campaigns run continuously, often for months or years, so a date in the name causes more harm than good. A welcome series that started in 2024 should not get renamed welcome_series_2026 halfway through, because attribution reports would suddenly split the same email flow into two rows on the same date the new tag went live.
Instead, name the stage and the trigger. Then use utm_content (not utm_campaign) to differentiate which email in the sequence drove the click. The campaign name stays stable for the life of the flow.
The reporting failure this prevents: rolling-stat reports breaking the day someone renames a lifecycle flow with a fresh year, losing the historical performance trend.
5. Event-Driven
Use when: you are running a webinar, trade show, podcast launch, or other one-off event.
Pattern: [event]_[year]
Examples:
dreamforce_2026webinar_seo_basics
Event campaigns have a sharp on-off pattern: heavy activity for a week or two, then nothing. The year (or a specific identifier) is critical because most events recur annually with a different theme. dreamforce_2025 and dreamforce_2026 need to stay separate so you can compare the same event year-over-year.
For evergreen webinars that get re-run, drop the year and use the webinar topic as the identifier. webinar_seo_basics is the same campaign even when the date of the webinar changes.
The reporting failure this prevents: blending two years of the same trade show into one row and losing the ability to measure if attendance ROI improved.
6. Recurring Annual (Acronym + Year)
Use when: you run the same big campaign every year (Black Friday, Cyber Monday, Prime Day analogs).
Pattern: [acronym]_[year]
Examples:
bfcm_2026holiday_giftguide_2026
Annual campaigns are where the name is least likely to vary, which makes them the easiest to get right and the most painful when they go wrong. A team that tagged 2024 as blackfriday_2024, 2025 as BF_2025, and 2026 as bf-cm-2026 has three rows that should be one trend line.
Pick the acronym once, document it, and stick to it for every future year. bfcm (Black Friday / Cyber Monday) is a common convention. The year is non-negotiable.
The reporting failure this prevents: year-over-year holiday ROI comparisons that require manual data munging because the campaign name keeps shifting.

7. A/B Test Variant
Use when: you are running two or more versions of the same campaign to test creative, audience, or offer.
Pattern: [campaign]_test_[variant]
Examples:
pricing_test_apricing_test_b
A/B tests are the most common place campaign names get clever and break. Tagging one variant pricing_v1 and the other pricing_new makes the report unreadable because nobody remembers which was the control. Use literal a, b, c suffixes and treat them as throwaway labels. The test design lives in the analytics platform or in Notion, not in the campaign name.
When the winning variant rolls out broadly, the name should drop the test suffix entirely: pricing_q3_2026. This signals the test has graduated and the variant is now the production campaign.
The reporting failure this prevents: variant-versus-control comparisons that require everyone to remember which UTM string was the experimental version six weeks after the test ended.
8. Co-Marketing or Partner Campaign
Use when: you run a joint campaign with another company (webinar, content trade, integration launch).
Pattern: partner_[name]_[period]
Examples:
partner_acme_q2_2026partner_zendesk_webinar_2026
Partner campaigns are easy to forget and impossible to compare later. A name like acme_promo reads like one of your own campaigns six months later, hiding the partner relationship. Prefix every joint campaign with partner_ (or comktg_, or whatever your team agrees on) so the partner-attributed traffic clusters together in reports.
This also makes the partnership’s revenue contribution easy to pull when the partner asks for shared metrics or the deal comes up for renewal.
The reporting failure this prevents: not being able to answer “what did the Acme partnership actually drive?” without rebuilding the data manually.
9. Region or Segment
Use when: you run the same campaign across multiple regions with different creative or landing pages.
Pattern: [region]_[campaign]_[period]
Examples:
apac_launch_q3_2026enterprise_uk_q3_2026
Multi-region campaigns are where channel rollup reports get confusing fastest. The same product launch can run with localized creative in APAC, EMEA, and the Americas. Without the region in the name, the three campaigns blend into one row and you cannot tell whether the APAC creative outperformed EMEA.
Keep the region prefix short and consistent across the company: apac, emea, amer, uk, us. Document the list once in your team wiki.
The reporting failure this prevents: regional marketing managers being unable to pull their own segment’s performance because the campaign rolls up globally by default.
How to Pick the Right Framework
The framework should match the campaign type, not the team member building the link. Use this short rule:
- Is it a recurring annual moment? Use the recurring annual framework (#6).
- Is it a product launch? Use the launch framework (#2).
- Is it an A/B test? Use the variant framework (#7).
- Does it involve a partner? Use the partner framework (#8).
- Does it have regional variations? Use the region framework (#9).
- Otherwise, fall back to promo + period + year (#1) or audience + offer + date (#3).
For teams running 50+ campaigns a year, the cleanest setup is to encode these patterns as reusable UTM templates, then enforce them at the point of link creation. Templates remove the question of “what should I call this?” from every marketer and replace it with a structured field they fill in.
Campaign Names That Break Reports
The frameworks above all share traits. The campaign names below also share traits, and every one of them is the reason an analyst spent two hours cleaning up a report.
final,final_v2,final_final_real, version chaos with no anchor to the actual campaignq1,q1_promo,q1promo, three names that mean the same thing, fragmenting one campaign across three rowsMAIN_CAMPAIGN_2026, uppercase that GA4 treats as a separate campaign from the lowercase versionsummer 2026 sale, spaces that GA4 sometimes encodes as%20, creating two phantom campaignsuntitled_3,test,temp, names that survived into production and now live in attribution reports foreverJohn_Q1_Push, a teammate’s name in the campaign value, which makes no sense to anyone else and survives long after John leaves
If your existing GA4 Campaigns report contains any of these patterns, the first cleanup step is identifying which sessions and conversions are stranded under those bad names. Our guide on how to fix unassigned and fragmented traffic in GA4 covers the audit process.
Documenting the Convention
A framework that lives only in one person’s head is not a convention. It is a preference that breaks the moment that person goes on leave.
A working convention needs three artifacts:
- A one-page reference. List the nine frameworks (or your subset), with one example each. Pin it in the team wiki.
- A vocabulary list. Approved values for repeating components: region codes (
apac,emea), acronyms (bfcm,q1), audience labels (enterprise,smb), and partner prefixes. Without this, two teammates pick different words for the same concept. - A validation step. Before a tagged link goes live, run it through a UTM naming convention checker to confirm format and structure match the spec.
For teams that ship many links a week, validation has to be automated. Manual review does not scale past one or two marketers, and humans are the ones who introduce most of the naming drift in the first place.

Naming Limits Worth Knowing
Campaign names solve a real problem, but they do not solve every reporting problem. Two honest limits.
Limit 1: Names cannot fix incomplete tagging. A perfect campaign naming convention applied to 70% of links still leaves 30% of traffic landing in (direct)/(none) or (not set). The convention only matters once tagging is universal. Build the tagging workflow first (a UTM builder helps), then layer the convention on top.
Limit 2: GA4 has a 100-character limit per UTM value. Most campaign names will not approach this, but multi-segment names like partner_acme_widget_v2_launch_apac_q3_2026 can creep up. Watch the length on the longest names in the framework. If you regularly run over 60 characters, pick shorter acronyms or split metadata into utm_content.
For teams that build hundreds of links a quarter, the campaign name is rarely the bottleneck. The link inventory itself is. A good campaign name with no way to find the link a marketer needs is half a solution.
Frequently Asked Questions
What is a marketing campaign name?
A marketing campaign name is the label assigned to a marketing initiative for tracking and reporting purposes. It usually ends up as the value of the utm_campaign parameter in tagged URLs, which GA4 stores against every session and conversion driven by that campaign. The name groups all the channels a campaign runs on into one row of the Campaigns report.
What are some marketing campaign name examples?
Common marketing campaign name examples include summer_sale_2026 (a seasonal promotion), widget_v2_launch (a product launch), enterprise_demo_may_2026 (a segmented B2B offer), dreamforce_2026 (an event-driven campaign), and bfcm_2026 (a recurring annual campaign). Each follows a framework that combines a descriptor, a date or version, and a stable identifier.
How do you write a good campaign name?
A good campaign name is lowercase, contains no spaces, includes a date or version where relevant, and stays consistent across every marketing channel the campaign runs on. It should still make sense to a teammate reading the report six months later. Pick a framework based on the campaign type (promo, launch, event, lifecycle, test), then fill in the variables.
What is a campaign naming convention?
A campaign naming convention is a written rule for how to format campaign names across the team. A complete convention covers four points: lowercase only, a single separator (hyphen or underscore), a fixed structure (such as [campaign]_[period]_[year]), and an approved vocabulary of repeating components. Consistency is the goal so the same campaign is never tagged two different ways.
Should campaign names include the year?
Yes, for any campaign that recurs annually or might recur. Adding the year (bfcm_2026, summer_sale_2026) prevents the current year’s campaign from colliding with last year’s in cumulative reports. The exception is always-on lifecycle campaigns like welcome_series, where the year would split a continuous flow into multiple rows when the calendar rolls over.
How long should a campaign name be?
Aim for 12 to 40 characters. Shorter than 12 usually means too generic to be useful (q1, promo). Longer than 40 makes URLs hard to scan and approaches GA4’s 100-character UTM value limit on multi-segment names. If a campaign name is creeping past 40, move some metadata into utm_content instead.
Start Naming Campaigns That Report Cleanly
Pick three of the nine frameworks that match the campaigns you run most often. Document them in a one-page reference. Then enforce them at the point of link creation using linkutm’s UTM builder, which fills in the structured fields and prevents naming drift before tagged links go live.
Within a quarter, your Campaigns report stops being a cleanup project and starts being a decision tool.