Best for
- Teams with messy campaign naming or unreliable source reporting
- Marketing ops teams trying to clean up attribution before planning cycles
- Demand gen leaders tired of debating channel performance with bad data
Find inconsistent UTMs, broken campaign naming, missing source data, and attribution gaps before reporting debates waste another pipeline meeting.
Create a UTM and attribution hygiene audit with naming fixes, campaign mapping, reporting gaps, and a governance checklist.
Quick view
Check the audience, core tools, and access before you start the detailed steps.
Best for
Core tools
5 tools used across the workflow.
Access
Preview the open steps, then unlock the remaining implementation details and prompts.
Why this works
Attribution problems often look like analytics problems, but they usually start as governance problems. If campaign names, UTMs, CRM campaigns, and dashboards do not speak the same language, reporting will always be contested. This workflow finds the breaks and creates a naming system people can actually follow.
Expected results
Audit coverage
60-90 days of campaign data
This window is large enough to reveal repeat naming patterns without making the first cleanup unmanageable.
Reporting accuracy
Cleaner source and campaign fields
Corrected maps and naming rules reduce unknown traffic, duplicate campaigns, and inconsistent channel grouping.
Time saved
4-8 hours per reporting cycle
Cleaner inputs reduce manual reconciliation between GA4, CRM campaigns, spreadsheets, and dashboards.
Governance output
Reusable UTM builder and checklist
The workflow creates a prevention system, not only a one-time cleanup.
Step-by-step workflow
The first 2 steps are open. Pro unlocks the remaining steps, copy-paste prompts, pro tips, tool-by-tool setup guidance, and implementation details.
1.5-2 hours
1.5-2 hours
Scope: Define a fixed 60-90 day audit window and record the exact start date, end date, time zone, included business units, and excluded test traffic before exporting anything.
Action: From Google Analytics 4, export landing page, session source, session medium, campaign, content, term, key events, conversions, and any available first-user acquisition dimensions for the same window. From HubSpot, export campaigns, contacts or leads, original and latest source fields, campaign membership, lifecycle stage, opportunity or deal association, and owner fields used in reporting.
Capture: Collect paid media, email, event, partner, and landing-page URL exports that contain the UTMs marketers actually launched, not only the values that survived into GA4 or the CRM. Load each source into a separate raw tab in Google Sheets and create a Control Totals tab with source name, export time, filters, row count, and key aggregate totals.
Next action: Preserve all raw values exactly as exported, including blanks, casing differences, and obvious mistakes, because those defects are evidence for the governance audit. Reconcile the workbook totals to each source system and resolve material row-count or conversion-count differences before normalization begins.
A reconciled audit workbook with immutable raw exports, documented filters, and control totals across analytics, CRM, and campaign sources.
Save the query or report configuration used for every export. Without reproducible filters, later disagreements can be mistaken for attribution changes when they are only extraction differences.
60-75 min
60-75 min
Set up: Create a normalized audit tab with one row per observed campaign URL or campaign record and separate columns for every raw and standardized value. Include final URL, raw source, raw medium, raw campaign, raw content, raw term, landing page, channel, offer, region, audience, CRM campaign, lifecycle stage, conversion event, owner, and source-system record ID.
Configuration: Add corrected-value columns beside the raw fields, but leave them blank until the issue patterns and naming rules are approved.
Set up: Create controlled status values for Clean, Missing, Inconsistent, Duplicate, Ambiguous, Legacy, Internal Test, and Needs Owner Review. Add issue category, issue detail, confidence, proposed correction, mapping rule, reviewer, and resolution status so each decision has an audit trail.
QA: Use formulas or validation rules to flag whitespace, capitalization drift, illegal characters, unexpected source-medium combinations, blank required fields, and duplicate campaign identifiers. QA the normalized table by tracing a sample of rows back to every raw tab and confirming that no source record, blank value, or malformed URL was silently dropped.
A normalized audit table that preserves raw data while exposing consistent issue, correction, ownership, and review fields.
Pro workflow preview
Previewing 2 of 8 steps
Get the remaining 6 steps, copy-paste prompts, pro tips, tool-by-tool setup guidance, and ongoing workflow and prompt releases.
$9/month
Keep blank, unknown, and not-applicable as different states. Collapsing them into one value hides whether the problem is missing tracking, unavailable data, or a channel where the field should not exist.
Related workflows
Continue with workflows that share a similar GTM motion, category, or tool stack.
Build a campaign launch QA system with channel checks, tracking validation, CRM routing tests, approval gates, and a reusable launch checklist.
Create a campaign postmortem, hypothesis log, and prioritized next-test roadmap for paid media.
Create a website conversion friction audit with evidence clips, root causes, prioritized fixes, and an experiment backlog.