Generates properly tagged UTM links with consistent naming conventions. Maintains a UTM registry file (utm-registry.json) to enforce naming consistency, prevent duplicates, generate short links, and output ready-to-copy links for LinkedIn, email, social, and ads.
SkillScore64Maintained
Automatic
◆Marketing & Content pack
Last verified 8/27/2026
What it changes
Passed 14 of 22 test cases with the skill, and 11 of 22 without it.
Without skill50%
With skill64%
Checks it passed that the model alone missed
Flags 'banner-ad' as an unrecognized medium value.
Suggests a canonical match from standard mediums such as 'display'.
Rejects the campaign parameter for exceeding the 50-character limit.
and 2 more in the full report
4 fixed10 passed either way7 still failing1 broke
Pass-rate lift
+14 pp
Tokens
+77%
Agent turns
0%
Response time
+35%
Model gemini-3.6-flashMeasured 8/27/2026v114 of 22 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 4 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 4
Prompt
Build a paid search campaign tracking URL for destination https://cloud.net/pricing with source 'google', medium 'cpc', campaign 'cloud-migration', and target keyword term 'enterprise cloud backup'.
What was checked, without and with the skill
Checked
Without skill
With skill
Encodes or normalizes the utm_term parameter 'enterprise cloud backup' to 'enterprise-cloud-backup'.
Missed
Passed
Includes the 'utm_term' parameter in the generated URL string.
Passed
Passed
case-17 · gemini-3.6-flash · 8/27/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md32 lines5 files
UTM Link Generator
Generate UTM-tagged links under a single naming-governance system: a utm-registry.json that enforces canonical conventions, prevents duplicates and naming drift, and outputs platform-ready links for LinkedIn, email, social, and ads.
Generate UTM-tagged URLs with validated, consistent parameters.
Maintain utm-registry.json tracking all links and enforcing conventions.
Prevent duplicates -- warn when a similar link already exists.
Format platform-specific variants (LinkedIn, email, social, ads).
Bulk-generate variants for A/B testing or multi-channel campaigns.
Validate -- reject malformed URLs, empty parameters, and convention violations.
Report -- generate campaign tracking summaries from the registry.
Workflow
Accept input. Collect destination URL, source, medium, campaign (all required) plus optional term, content, and target platforms. Extract these from a natural-language brief when not given explicitly.
Validate and normalize. Lowercase, replace spaces with hyphens, strip non-[a-z0-9-] characters, auto-correct known aliases, reject unknown source/medium values (suggest closest match), validate URL form, enforce the 50-character limit. Report corrections using the template in references/registry-schema.md. Full rules in references/naming-conventions.md.
Check registry for duplicates. Read utm-registry.json (create if missing). Return existing link on exact duplicates, allow-with-warning on near duplicates, block on naming conflicts (same campaign, different casing/hyphenation).
Generate links. Build {base_url}?utm_source=&utm_medium=&utm_campaign=[&utm_term=][&utm_content=][&utm_id=]. Append with & if the base URL already has query params, URL-encode values, and preserve existing query params and fragment.
Generate platform variants. Produce optimized links per requested platform using references/platform-variants.md.
Update registry. Append all generated links to utm-registry.json per the schema in references/registry-schema.md, refreshing stats and timestamps.
Output summary. Present a copy-paste-ready summary using the template in references/registry-schema.md.
For bulk runs, registry commands (audit, add source/medium, campaign report, CSV export), error handling, and integration notes, see references/bulk-and-registry-ops.md.