Much to my chagrin, it appears I work in “marketing.” (This is a joke for my wife). As such, I’ve needed to generate UTM‑tagged URLs and QR codes for web links, community organizations, and personal volunteer work. The tools I found usually fell into one of four categories:
- Required accounts
- Stored your data
- Injected branding or analytics
- Or simply cost money for something fundamentally simple
This seemed ludicrous to me, so I endeavored to build my own.
The Problem with Existing Tools
Most UTM and QR generators share a few issues:
- Data visibility – campaign names, sources, and destinations are logged somewhere outside your control
- Over‑engineering – dashboards, workspaces, accounts, billing tiers
- Under‑engineering – no versioning, no reuse, no easy sharing of configs
I don’t like sharing unnecessary data with people and organizations when I don’t need to. Yes, many sites that claim they don’t capture your data and may not, but I’m about privacy as much as possible.
I wanted something that:
- Runs locally or on my own infrastructure
- Never stores campaign data on a server
- Produces URLs and QR codes instantly
- Can be shared without creating “accounts”
Design Goals (Non‑Negotiables)
From the start, I constrained the solution intentionally:
✅ No database
✅ No authentication
✅ No third‑party SaaS dependencies
✅ Portable deployment
✅ Easy enough that non‑developers can use it
Those constraints shaped every technical choice that followed.
Why UTMs + QR Codes Together?
UTMs and QR codes are commonly used together, but tools often treat them separately.
This app:
- Builds correct UTM URLs
- Detects and extracts existing UTMs
- Generates QR codes from the final URL
- Allows reuse via browser storage or shareable links
That creates a single, reproducible campaign artifact, not two disconnected steps.
What This Post Isn’t
This isn’t:
- A startup pitch
- A SaaS announcement
- A lead funnel
It’s simply an explanation of why this exists.
In the next post, I’ll break down how it’s built—and the decisions behind the stack.
👉 The project is fully open source on GitHub: https://github.com/kmsigma/utm_qrcodes