MAHMOUD ABDELNABY
Reporting · STATIC INTERACTIVE TOOL · 2

UTM Campaign Governance Hub & Interactive Builder

Create consistently tagged campaign links and reduce avoidable UTM classification errors. This tool cannot guarantee that GA4 will eliminate '(Other)' or 'Unassigned' traffic.

Problem it addresses

Build an open-source UTM governance hub: 1) Single-file responsive HTML/JS tool (index.html) running client-side with dropdown enforcement strictly adhering to GA4 Default Channel Grouping rules, 2) Python CLI (utm_validator.py) auditing CSV lists of live ad links, 3) Enterprise UTM policy document, 4) Integration cheat sheet for Slack/Teams.

Who it is for

BOTH operating in high-growth e-commerce, digital publishing, and direct-response marketing across Saudi Arabia, UAE, and Egypt.

What is inside

Key files listed in the README repository architecture:

  • config/utm_taxonomy.json
  • docs/utm-best-practices.md
  • examples/sample_links_audit.csv
  • index.html
  • LICENSE
  • policy/enterprise-utm-standards.md
  • README.md
  • src/url_cleaner.py
  • src/utm_validator.py
  • tests/test_cleaner.py
  • tests/test_validator.py
  • tools/index.html

How to evaluate and use it

  1. Read the README first and confirm that the documented problem matches your use case.
  2. Inspect the listed files to find the data, tools, templates, and tests relevant to your task.
  3. Follow the repository’s Quick Start and check prerequisites before running commands.
  4. Compare outputs with documented examples and review limitations before using them in a decision or client workflow.

Quick Start from the README: python -m unittest discover -s tests · python src/url_cleaner.py --help

Scope and limitations

  • Case Sensitivity & Normalization: Enforces strict lowercase normalization on utm_source, utm_medium, and utm_campaign to prevent reporting fragmentation.
  • Delimiter Standard: Replaces spaces with hyphens or underscores; flags unauthorized punctuation characters.
  • Encoding Compliance: Ensures landing page URLs with Arabic query parameters or anchors are properly percent-encoded per RFC 3986.

This page summarizes the available documentation; it does not establish performance or business results. Verify data and prerequisites before use.

Related repositories