When AI groups campaigns incorrectly: check names and UTMs
Check how campaigns are classified before comparing ROAS by product group. Use names, UTMs, and a mapping table without renaming every live campaign.
Correct numbers, wrong groups
You ask for ROAS by product group over the last 14 days, but the result combines prospecting and retargeting campaigns. Even if the arithmetic is correct, that grouping makes a budget decision harder.
Names such as new_test_2 or conversion_0501 may not identify the product or audience. Check campaign settings and the team’s mapping table. Leave a campaign unclassified when the evidence is still insufficient.
Find the same campaign across reports
Consistent campaign names and UTMs make it easier to find the same campaign across ad platforms, GA4, and shared reports. Start by deciding which fields your team uses for classification.
GA4, too, breaks out source, medium, and campaign from your UTM values. Google recommends using utm_source, utm_medium, and utm_campaign consistently, and notes that values with different capitalization are treated as different. SpringSale and spring_sale may look like the same campaign to a person, but they can show up as separate rows in your reports.
The minimum AI needs to read a campaign
You don’t need to cram every detail into the campaign name. When names get too long, no one follows the convention. Instead, define the minimum set of fields AI needs to run analysis.
| Field | Why it’s needed | Example |
|---|---|---|
| Channel | Even within one product group, Meta, Google, and Naver play different roles and report on different terms. | meta, google, naver, tiktok |
| Objective | Purchase, lead, traffic, and brand search can’t be held to the same performance benchmark. | purchase, lead, traffic, brand-search |
| Funnel | Mixing prospecting and retargeting makes budget decisions shaky. | prospecting, retargeting, cart |
| Product group | To read ROAS, CPA, and AOV by product group, you have to know what each campaign is selling. | skincare, healthfood, b2b-consulting |
| Targeting strategy | Broad, lookalike, keyword, and remarketing each call for a different read on performance. | broad, lookalike, keyword, remarketing |
| Date or test ID | Lets you find test results again and tell the original from the variant. | 202605, test-a, promo-summer |
For example, meta_purchase_prospecting_skincare_broad_202605 records platform, objective, funnel, product group, audience strategy, and period in order. If your standard is skincare, map older variants such as skin_care or skin to that value.
When names aren’t enough, lean on UTMs and a mapping table
Use a mapping table for information that does not belong in the name. If a report joins data by campaign name, renaming may affect its connection to historical data. Check the reporting setup first. You can apply new rules to new campaigns and map existing ones by ID.
UTMs are how GA4 splits your traffic; the mapping table is how your team interprets campaigns. The tracking-parameter tooling differs by channel—Google Ads URL options, for one—but in the end GA4 and Neuro need to read consistent source, medium, campaign, and product-group values.
| Campaign | Product group | Funnel |
|---|---|---|
| meta_purchase_prospecting_skincare_broad_202605 | Skincare | Prospecting |
| naver_brand_skincare_202605 | Skincare | Brand demand |
| google_pmax_healthfood_202605 | Health food | Mixed |
Record the campaign ID, product group, and funnel in the mapping table, and save interpretation rules in workspace or Gem instructions. Mark campaigns covering several product groups as mixed instead of forcing them into one category.
In Neuro, start with a naming audit
Before you ask AI to run performance analysis, have it audit the account’s classification rules. The goal isn’t to interpret performance—it’s to confirm AI can read the account reliably in the first place.
Review unclassified campaigns with the largest spend share first. Update the mapping rules, rerun the same request, and compare which gaps were resolved and which remain.
Sources
- Google Analytics Help: URL builders, collect campaign data with custom URLs
Official documentation on how GA4 identifies campaign traffic from UTM source, medium, and campaign values, and how capitalization and consistency cause your reports to fragment.
- Google Analytics Help: Import campaign data
Official documentation on why UTM values and campaign IDs have to match exactly when you join external ad-platform cost, click, and impression data with GA4 campaign data.
- Google Ads Help: About URL parameters
Explains how final URLs, tracking templates, custom parameters, and ValueTrack parameters pass click information in Google Ads.
- Google Ads Help: About tracking in Google Ads
Official help article explaining how to set and test Google Ads URL options at the account, campaign, ad group, and keyword levels.
Related posts
When to start a new chat for ad work
Decide whether to continue or split an ad-analysis chat when accounts, goals, and reporting assumptions change. Includes prompts for carrying verified findings into a new task.
Five areas to check in an AI-assisted ad account review
Review goals, campaign structure, budget, conversion quality, and creative while separating verified findings from causes that need more evidence.
How to ask AI when your ROAS numbers don’t match
Why attributed revenue can exceed actual sales, which dates and conversion definitions to align, and how to ask Neuro to investigate a ROAS discrepancy.
How to use Gems in Neuro for ad operations
Create a Neuro Gem with reusable analysis and reporting instructions, then add the dates and account details for each task.