▸ Free tools / MARKETING & SEO

UTM builder.

Generate clean UTM-tagged URLs for any campaign. Channel presets, live preview, copy-to-clipboard, and a local history so you can recover the link you built two days ago. No signup.

CHANNEL PRESETS
INPUTS
Destination URL
utm_source — platform
utm_medium — channel type
utm_campaign — campaign name
utm_content — placement / creative(optional)
utm_term — keyword(optional)
utm_id — campaign id (GA4)(optional)
RESULT
Tagged URL
https://bynapkin.com/?utm_source=reddit&utm_medium=social&utm_campaign=launch_q3
We never see the URL. Copy + recents stay in your browser's localStorage. The PostHog event captures only hostname, source, and medium for usage stats.
FORMAT
01 / HOW UTMs WORK

UTMs are five query parameters Google made standard.

They tell every analytics tool (GA4, PostHog, Plausible, Adobe) which campaign drove a visit, without you wiring up anything custom on the destination site.

utm_source
The platform the link lives on. reddit, twitter, newsletter, linkedin. Lowercase, no spaces.
utm_medium
The channel type. social for organic posts, cpc for paid clicks, email, referral, affiliate.
utm_campaign
The campaign or initiative. launch_q3, hero_pill, black_friday. Stable across all links inside one campaign.
utm_content
Which specific placement or creative within that campaign: bio_link, post_5, headline_b. Lets you A/B inside one campaign.
utm_term
Paid-search keyword (or any free-text descriptor). Often left blank for organic.
utm_id
GA4-specific campaign ID used to roll up cost data from ad platforms. Skip unless you've set up the matching GA4 import.

Source, medium, and campaign are required. The others are optional. Keep params lowercase with underscores — analytics tools treat Reddit and reddit as two different sources, which fragments your reports.

QUESTIONS
02 / FAQ

Quick answers.

Which UTM parameters are required?+

Three: utm_source, utm_medium, and utm_campaign. Google Analytics and most other tools will ignore a partial UTM string — if you only set utm_source, the visit will show up as direct or untagged.

Should UTMs be lowercase?+

Yes. Lowercase with underscores is the convention. Reddit, REDDIT, and reddit are three different rows in your GA report otherwise. The 'Lowercase + underscore' toggle on this builder enforces it; leave it on unless you have a specific reason.

What's a good utm_campaign naming convention?+

Anything stable and human-readable. We use lowercase_snake with a short label and a date or quarter: launch_q3, hero_pill, black_friday_2025. The key is that everyone on your team uses the same name for the same campaign — otherwise you can't roll up performance.

Should I tag links to my own site from my own pages?+

No. Internal links inside one domain shouldn't carry UTMs — they overwrite the original referrer and inflate the wrong source. Tag only links you place on external surfaces (Reddit, X, ads, newsletters, partner sites).

Do UTMs hurt SEO?+

Not directly, but you should use rel=canonical on the destination so Google doesn't index the tagged variants as separate pages. Most sites already canonicalize correctly; check yours with our Open Graph tester or by viewing the source.

What's the difference between utm_term and utm_content?+

utm_term is the keyword that triggered the click (mostly used by paid search). utm_content is the creative or placement — which ad variant, which bio link, which spot in the email. If you A/B test, utm_content is the dial.

Why does my URL already have query parameters? Will UTMs break it?+

No. This builder uses the URL constructor, which preserves existing query strings and adds the UTM params alongside them. The destination page sees both sets of params.

UTMs help. Distribution moves the number.

A UTM tells you which channel worked. Napkin makes the channel work. UGC, Reddit, and GEO as one motion for AI companies. 15-minute call, no pitch deck.

Book a call Browse other tools

Pair with the Open Graph tester to preview how the tagged link looks on social, or the marketing ROI calculator to put a dollar value on the campaign you just tagged.