Pre-Launch UTM QA Checklist: 16 Steps to Prevent Broken Campaign Attribution

Check campaign tracking before launch with 16 steps covering UTM values, redirects, landing pages and GA4 collection.

Inspection checklist graphic depicting systematic validation gates for campaign URLs before ad spend launch
Table of Contents
  1. Why Pre-Launch QA Saves Five-Figure Ad Budgets
  2. The 16-Point Pre-Launch QA Checklist
  3. Step-by-Step Live Browser Testing Procedure

Before launching a campaign, open its tracking link and check what reaches the landing page. A correct-looking URL can still lose parameters during a redirect. Use these 16 checks to review the link, the destination and the data your analytics tag collects.

Why Pre-Launch QA Saves Five-Figure Ad Budgets

When campaign parameters are lost before the analytics tag receives them, reports may not show the intended campaign values. Processed reporting is not necessarily retroactively corrected by changing a live link, so document the issue and investigate what data was collected before deciding how to report the affected period.

The 16-Point Pre-Launch QA Checklist

Area Check Item Pass Criteria
Syntax 1. Starting delimiter URL has exactly one ? before first parameter.
Syntax 2. Parameter separator All subsequent parameters separated by &.
Syntax 3. Case formatting Use a consistent convention; lowercase is recommended for easier comparison.
Syntax 4. Whitespace Zero unencoded spaces (use hyphens or underscores).
Syntax 5. Anchor hash order Fragment identifier (#section) appears at the very end, after all query parameters.
Taxonomy 6. utm_source validation Matches approved platform name (e.g. linkedin, not lnkd).
Taxonomy 7. utm_medium pattern review Compare chosen values (e.g. paid_social, cpc, email) with current GA4 definitions; live assignment depends on collected traffic-source data.
Taxonomy 8. utm_campaign structure Follows enterprise formula (e.g. [geo]_[product]_[objective]_[date]).
Taxonomy 9. utm_id presence Included if uploading cost data from external platforms.
Routing 10. HTTP status code Returns 200 OK without intermediate 301/302 redirect loops.
Routing 11. Trailing slash test Destination matches server canonical (no redirect from /page to /page/).
Routing 12. Parameter preservation All UTM query parameters remain in address bar after final page render.
Analytics 13. GA4 Realtime hit Click appears in GA4 Realtime within 30 seconds.
Analytics 14. DebugView verification page_view and session_start events contain correct source and medium.
Integrations 15. CRM form capture Hidden form inputs successfully populate with UTM values from the session.
Integrations 16. Privacy compliance Zero PII (names, emails, phone numbers) anywhere in query strings.

Step-by-Step Live Browser Testing Procedure

  1. Open a clean Incognito/Private browser window.
  2. Open Developer Tools (F12 or Cmd+Opt+I) and select the Network tab. Check "Preserve log".
  3. Paste the full tagged campaign URL into the address bar and press Enter.
  4. Inspect the first request in the Network log:
    • If it returns HTTP 200, your server served the page directly. Great!
    • If it returns HTTP 301 or 302, inspect the Location response header. If the query string was lost in transit, contact your web engineering team immediately to preserve query strings on server redirects.

For the broader setup, read UTM Strategy Guide: How to Build a Tracking System That Stays Clean at Scale. Browse the UTM Strategy & Governance guides to choose another troubleshooting task.

References