We kept running into the same problem: every paid ad, email, or affiliate campaign needed its own landing page just to keep the messaging consistent. That meant duplicate pages, slower launches, and frequent deploys for small copy changes.
So we built UTMKit, a small, defer-loaded popup engine that turns incoming UTMs into targeted onsite popups.
Instead of routing traffic to separate landing pages, you send users to your main site and let UTMs (utm_source, utm_campaign, etc.) decide which popup to show. Rules are configured in a dashboard and evaluated in real time—no code changes after the initial script install.
Key ideas:
One script install (framework-agnostic)
Rules based on any UTM or query parameter
Priority + frequency caps when multiple rules match
Analytics per rule and per UTM (impressions, clicks, closes, CTR)
Designed to be lightweight and not impact page performance
This is primarily for performance marketers and growth teams who want campaign-specific messaging without spinning up new pages or bothering engineers for every experiment.
Demo + docs are linked on the site. Happy to answer questions or hear feedback—especially on edge cases or alternative approaches people have tried.