跳到主要内容

utm-builder 标准

Generate UTM-tagged URLs for campaign tracking. Create consistent, organized tracking links for Google Analytics, HubSpot, and other analytics platforms. Supports bulk generation, naming conventions, and campaign documentation. Use when creating tracking links, campaign URLs, or organizing marketing attribution.

在 GitHub 打开

安装方式

cp -r skills/utm-builder ~/.claude/skills/utm-builder

把该 skill 目录放进客户端 skills 目录。不同客户端的目录可能不同,Claude Code 默认是 ~/.claude/skills/

整仓一次性获取:git clone --depth 1 https://github.com/manojbajaj95/claude-gtm-plugin.git

依赖与权限

  • 无需 API Key
  • 需要联网访问外部服务
  • 依赖外部命令:go
  • 以上为按正文与 frontmatter 自动推断的信号,仅供参考;安装前建议先阅读原文。
触发场景
creating tracking linkscampaign URLs

SKILL.md 正文

来源 manojbajaj95/claude-gtm-plugin@0830a46 · 许可 MIT · 内容未修改

UTM Builder

Workspace Context

Read bootstrap context before asking questions: strategy/brand.md for brand, audience, offer, channels, tools, constraints, and metrics; about/me.md for personal voice; content/ideas.md and content/calendar.md for content planning. Use legacy product-marketing context files only as fallback. Save generated drafts to content/<platform>/drafts/YYYY-MM-DD_short-topic-slug.md, and route durable learnings back to strategy/brand.md, about/me.md, or content/ideas.md.

Operating Contract

This skill is self-contained for its frontmatter scope: use its local instructions, references, scripts, and assets as the playbook; ask only for missing task-specific inputs; hand off to adjacent skills instead of expanding scope; and return an actionable artifact, decision, plan, draft, or diagnostic.

Generate consistent, well-organized UTM tracking links for marketing campaigns.

UTM Parameters

ParameterRequiredPurposeExample
utm_sourceYesTraffic sourcegoogle, linkedin, newsletter
utm_mediumYesMarketing mediumcpc, email, social, organic
utm_campaignYesCampaign namespring-sale-2025
utm_termNoPaid search keywordsproject+management
utm_contentNoDifferentiate variantscta-button, hero-image

Naming Conventions

Recommended Format

utm_source:    {platform}
utm_medium:    {channel-type}
utm_campaign:  {yyyy-mm}-{campaign-name}
utm_term:      {keyword} (paid search only)
utm_content:   {ad-variant}-{placement}

Source Values (lowercase, no spaces)

Paid:
  - google
  - linkedin
  - meta (facebook + instagram)
  - tiktok
  - twitter
  - bing

Organic Social:
  - linkedin-organic
  - twitter-organic
  - facebook-organic

Email:
  - mailchimp
  - hubspot
  - sendgrid
  - newsletter

Referral:
  - partner-{name}
  - affiliate-{name}
  - referral

Medium Values

Paid:
  - cpc (cost per click)
  - cpm (cost per impression)
  - display
  - video
  - retargeting

Organic:
  - organic
  - social
  - referral

Direct:
  - email
  - sms
  - push

Content:
  - blog
  - pr
  - podcast
  - webinar

Campaign Naming

Format: {date}-{name}-{segment}

Examples:
  - 2025-03-spring-promo
  - 2025-q1-product-launch
  - 2025-04-webinar-ai-trends
  - 2025-03-ebook-marketing-guide
  - evergreen-demo-request

How to Use

Single URL

Create a UTM link for:
URL: https://example.com/pricing
Campaign: Spring promotion on LinkedIn

Output:

https://example.com/pricing?utm_source=linkedin&utm_medium=cpc&utm_campaign=2025-03-spring-promo

Bulk Generation

Create UTM links for a multi-channel campaign:
URL: https://example.com/demo
Campaign: Q2 Product Launch

Channels:
- Google Search Ads
- LinkedIn Sponsored Content
- Email newsletter
- Twitter organic post

Output:

═══════════════════════════════════════════════════════════════
CAMPAIGN: Q2 Product Launch
BASE URL: https://example.com/demo
DATE: 2025-Q2
═══════════════════════════════════════════════════════════════

GOOGLE SEARCH ADS:
──────────────────────────────────────────────────────────────
https://example.com/demo?utm_source=google&utm_medium=cpc&utm_campaign=2025-q2-product-launch&utm_term={keyword}

Use {keyword} placeholder for dynamic keyword insertion.

LINKEDIN SPONSORED:
──────────────────────────────────────────────────────────────
Variant A (Image):
https://example.com/demo?utm_source=linkedin&utm_medium=cpc&utm_campaign=2025-q2-product-launch&utm_content=image-a

Variant B (Video):
https://example.com/demo?utm_source=linkedin&utm_medium=cpc&utm_campaign=2025-q2-product-launch&utm_content=video-b

EMAIL NEWSLETTER:
──────────────────────────────────────────────────────────────
Header CTA:
https://example.com/demo?utm_source=newsletter&utm_medium=email&utm_campaign=2025-q2-product-launch&utm_content=header-cta

Footer CTA:
https://example.com/demo?utm_source=newsletter&utm_medium=email&utm_campaign=2025-q2-product-launch&utm_content=footer-cta

TWITTER ORGANIC:
──────────────────────────────────────────────────────────────
https://example.com/demo?utm_source=twitter-organic&utm_medium=social&utm_campaign=2025-q2-product-launch

═══════════════════════════════════════════════════════════════
TRACKING SPREADSHEET
═══════════════════════════════════════════════════════════════
| Channel | Source | Medium | Campaign | Content | Full URL |
|---------|--------|--------|----------|---------|----------|
| Google | google | cpc | 2025-q2-product-launch | - | [url] |
| LinkedIn | linkedin | cpc | 2025-q2-product-launch | image-a | [url] |
| LinkedIn | linkedin | cpc | 2025-q2-product-launch | video-b | [url] |
| Email | newsletter | email | 2025-q2-product-launch | header-cta | [url] |
| Email | newsletter | email | 2025-q2-product-launch | footer-cta | [url] |
| Twitter | twitter-organic | social | 2025-q2-product-launch | - | [url] |

A/B Test Links

Create UTM links for A/B testing two landing pages:
URL A: https://example.com/landing-v1
URL B: https://example.com/landing-v2
Campaign: Homepage redesign test
Channel: Google Ads

Output:

VARIANT A (Control):
https://example.com/landing-v1?utm_source=google&utm_medium=cpc&utm_campaign=2025-03-homepage-test&utm_content=control-v1

VARIANT B (Treatment):
https://example.com/landing-v2?utm_source=google&utm_medium=cpc&utm_campaign=2025-03-homepage-test&utm_content=treatment-v2

TRACKING NOTE:
Compare conversion rates in Google Analytics:
Acquisition → Traffic Acquisition → Filter by utm_content

Platform-Specific Tips

Google Ads

Use ValueTrack parameters for dynamic insertion:
- {keyword} - Search keyword
- {matchtype} - Match type (e, p, b)
- {device} - Device (m, t, c)
- {adposition} - Ad position

Example:
?utm_source=google&utm_medium=cpc&utm_campaign=brand&utm_term={keyword}&utm_content={adposition}

LinkedIn Ads

Use LinkedIn macros:
- {{CAMPAIGN_NAME}}
- {{CREATIVE_NAME}}
- {{CAMPAIGN_GROUP_NAME}}

Note: LinkedIn auto-appends some tracking; combine carefully.

Meta (Facebook/Instagram)

Use URL parameters in ad setup:
- {{ad.name}}
- {{adset.name}}
- {{campaign.name}}

Example:
?utm_source=meta&utm_medium=cpc&utm_campaign={{campaign.name}}&utm_content={{ad.name}}

HubSpot Integration

HubSpot auto-recognizes UTM parameters.
Ensure consistency with HubSpot campaign naming.

Best practice:
- Create HubSpot campaign first
- Use exact campaign name in utm_campaign
- Tag all assets (emails, pages, ads) with same campaign

Short URL Integration

For social media, use URL shorteners that preserve UTM:

  • Bitly - Tracks clicks, preserves UTMs
  • Rebrandly - Custom branded domains
  • Short.io - Team features

Example workflow:

  1. Generate full UTM URL
  2. Shorten with Bitly
  3. Use short URL in social posts
  4. UTMs still tracked in Google Analytics

Common Mistakes to Avoid

MistakeProblemSolution
Inconsistent capitalizationCreates duplicate campaigns in GAAlways use lowercase
Spaces in parametersBreaks URLUse hyphens or underscores
Missing utm_mediumPoor channel attributionAlways include medium
Generic campaign namesHard to analyzeUse date + descriptive name
Not documentingLost tracking contextMaintain spreadsheet
Duplicate utm_sourceConfusion in reportingStandardize naming

UTM Audit

Checklist

  • [ ] All lowercase (no mixed case)
  • [ ] No spaces (use hyphens)
  • [ ] Consistent naming across team
  • [ ] Campaign includes date prefix
  • [ ] Medium matches channel type
  • [ ] Content differentiates variants
  • [ ] Documented in tracking spreadsheet

Analytics Verification

After launching, verify in GA4:

  1. Go to Reports → Acquisition → Traffic acquisition
  2. Add secondary dimension: Session source/medium
  3. Filter by campaign name
  4. Confirm data is populating correctly

Template Library

Email Campaigns

Newsletter:
?utm_source=newsletter&utm_medium=email&utm_campaign={date}-{topic}&utm_content={position}

Drip Sequence:
?utm_source=hubspot&utm_medium=email&utm_campaign={sequence-name}&utm_content=email-{number}

Transactional:
?utm_source=transactional&utm_medium=email&utm_campaign=order-confirmation

Social Media

Organic Post:
?utm_source={platform}-organic&utm_medium=social&utm_campaign={date}-{topic}

Paid Social:
?utm_source={platform}&utm_medium=cpc&utm_campaign={date}-{campaign}&utm_content={creative-name}

Content Marketing

Blog Post:
?utm_source=blog&utm_medium=organic&utm_campaign={post-slug}

Guest Post:
?utm_source={publication}&utm_medium=referral&utm_campaign=guest-post-{date}

Podcast:
?utm_source={podcast-name}&utm_medium=podcast&utm_campaign={episode}

Partnerships

Co-Marketing:
?utm_source=partner-{name}&utm_medium=referral&utm_campaign={joint-campaign}

Affiliate:
?utm_source=affiliate-{name}&utm_medium=referral&utm_campaign=affiliate-program

Integration

Works well with:

  • data-and-funnel-analytics - Analyze UTM performance
  • ad-campaign-management - Track paid campaign ROI
  • social-media-management - Measure social campaign results
  • marketing-automation - Add tracking to email campaigns

质量与来源

所属仓库
manojbajaj95/claude-gtm-plugin
仓库星标
106
最近更新
25 天前
采集时间
今天
commit
0830a46f4cfb
内容指纹
sha256:254976fcf508c68
文件路径
skills/utm-builder/SKILL.md

同仓库其它 Skill

查看全部 50 个
ab-test-setup
When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," or "hypothesis." For tracking implementation, see data-and-funnel-analytics.
manojbajaj95/claude-gtm-plugin 106 原文
Claude CodeCodex CLI
ad-campaign-management
Use when creating, managing, or optimizing paid advertising campaigns across any platform. Covers ad copy generation, ad creative strategy, campaign management, and competitive intelligence. Triggers on: ad copy, ad creative, paid ads, paid advertising, Facebook ads, LinkedIn ads, Google ads, Meta ads, ad campaign, ad strategy, ad testing, competitive ads, competitor ads, ad library, ad analysis, ad creative generation, campaign management, ROAS, CPC, CTR. Use this skill whenever the user mentions ads, paid channels, ad campaigns, ad copy, ad performance, or wants to analyze competitor advertising.
manojbajaj95/claude-gtm-plugin 106 原文
Claude CodeCodex CLI
app-store-optimization
Use this skill when optimizing app store listings, researching keywords, or tracking mobile app performance on Apple App Store and Google Play Store.
manojbajaj95/claude-gtm-plugin 106 原文
Claude CodeCodex CLI
blog-writing-specialist
Comprehensive blog writing skill that handles technical blog posts, personal voice writing, brain dump transformation, and category-aware AEO-optimized content. Use when: (1) writing, editing, or proofreading a blog article or post, (2) transforming unstructured brain dumps into polished posts, (3) writing in specific personal voices (Jarad, Nick Nisi), (4) creating category-aware technology/company/product posts, (5) building tutorials, deep dives, postmortems, benchmarks, or architecture posts, (6) writing engineering blogs, dev blogs, programming blogs, coding tutorials, or documentation posts. Triggers: blog post, blog writing, technical blog, dev tutorial, brain dump, article, content writing, developer article, engineering blog, programming blog, coding tutorial, documentation post, technical writing, blog editing, proofreading, developer content
manojbajaj95/claude-gtm-plugin 106 原文
Claude CodeCodex CLI
bootstrap
Onboard a new GTM project — run an agency-style interview, then generate CLAUDE.md, PROGRESS.md, about/me.md, strategy/brand.md, and scaffold content + assets folders. Use this skill whenever the user wants to set up a new project, onboard a brand, start from scratch, configure their marketing context, or initialize their workspace. Trigger on: bootstrap, onboard, set up my project, get started, configure my brand, initialize, new project setup, brand onboarding, set up my brand, create project structure, onboard my company, set up content folders, prepare my workspace, start a new GTM project. Also use when the user seems to be starting fresh and hasn't set up strategy/brand.md or about/me.md yet.
manojbajaj95/claude-gtm-plugin 106 原文
Claude CodeCodex CLI
brand-messaging-and-positioning
Comprehensive brand messaging, positioning, and value proposition development using proven frameworks including Peep Laja Message Layers, Osterwalder Value Proposition Canvas, Geoffrey Moore positioning, April Dunford's Five Components, StoryBrand SB7, Andy Raskin Strategic Narrative, and Messaging House. Use when developing brand identity, brand messaging architecture, positioning statements, value propositions, messaging hierarchies, brand pillars, taglines, one-liners, elevator pitches, brand guidelines, visual identity systems, or creating Positioning & Messaging Packs. Triggers include: messaging framework, brand positioning, value prop, messaging architecture, brand pillars, brand identity, StoryBrand, positioning statement, brand guidelines, design system, messaging house, corporate identity, brand voice, visual standards.
manojbajaj95/claude-gtm-plugin 106 原文
Claude CodeCodex CLI