skills/meta-utm-tracking/SKILL.md
Generates a complete UTM tracking system for a client — naming conventions, a campaign tracking spreadsheet template, and a guide to reading attribution reports in GA4. Invoke when a client needs to track social media traffic accurately, when the meta-roi-framework flags unattributed traffic, or when a client says they cannot tell which platform or post is driving website visits.
npx skillsauth add peterbamuhigire/social-media-skills meta-utm-trackingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
SKILL.md; do not skip mandatory steps or required fields.references/ directory is added later, treat its files as the deeper source material and keep this SKILL.md execution-focused.Build a complete, usable UTM tracking system that a consultant sets up once and a client operates ongoing. Many East African SMEs have never heard of UTM parameters — explain the concept plainly, then deliver the system. Without UTM parameters on every social media link, the meta-roi-framework cannot accurately attribute traffic and conversions to specific campaigns or platforms.
Before generating any output, ask for:
www.akaciakampala.com)Generate three plain-English paragraphs:
Paragraph 1 — What they are. Explain that UTM parameters are invisible tags added to the end of a URL. They do not change what the visitor sees or where they land — they simply carry information about where that visitor came from. Google Analytics reads these tags the moment the page loads and records the source, medium, and campaign against that visit.
Paragraph 2 — Why they matter. Without UTM parameters, GA4 cannot reliably identify social media traffic. Most social platforms — particularly Facebook, Instagram, and WhatsApp — strip referrer data before sending the user to a website. GA4 then logs that visit as "direct" or "referral" with no campaign detail. The client's reporting dashboard shows a large "direct" traffic block that is actually a mix of social posts, WhatsApp shares, and email links — all invisible and unmeasurable.
Paragraph 3 — What they look like. Show a single complete example URL for the client's business. If no client context is provided yet, use this default East African example:
https://www.akaciakampala.com/sunday-brunch?utm_source=facebook&utm_medium=organic-post&utm_campaign=sunday-brunch-march-2026&utm_content=image-post-1
Explain that the ? separates the page URL from the tracking tags, and each & separates one tag from the next. The visitor never sees this — they simply land on the brunch page.
Generate this table, populated with the client's platforms where relevant:
| Parameter | What It Tracks | Required? | Example Value |
|---|---|---|---|
| utm_source | Which platform sent the visitor | Yes | facebook |
| utm_medium | The type of content or channel | Yes | organic-post |
| utm_campaign | The campaign name | Yes | sunday-brunch-march-2026 |
| utm_content | The specific post or creative | Recommended | carousel-v2 |
| utm_term | Keyword (paid search only) | Rarely needed for social | kampala-restaurant |
Note beneath the table: utm_source, utm_medium, and utm_campaign are the three parameters GA4 uses to build its standard acquisition reports. Always include all three. utm_content is essential when running multiple creatives in the same campaign — it identifies which specific post drove performance.
State these rules as a numbered list. Apply them to every UTM parameter value without exception.
Facebook and facebook as two different sources. Mixed case creates duplicate rows in every report and corrupts historical data.%20 in URLs, which breaks links on some platforms. Underscores are harder to read in GA4 reports. Hyphens are the standard.march-2026-brunch not sunday-brunch-promotion-for-the-month-of-march-in-the-year-two-thousand-and-twenty-six. The campaign name must be recognisable at a glance in a GA4 dropdown list.utm_campaign value must exactly match the campaign name used in the content calendar. This links analytics data directly to planned activity — no guesswork when reviewing performance.utm_content to the post ID or brief title from the content calendar. If the content calendar calls a post "carousel-v2," the UTM tag reads utm_content=carousel-v2. Never invent new names at the point of posting.fb while another uses facebook creates permanent data fragmentation. Document the approved values, share the reference table with every person who publishes links, and enforce it.Produce this reference table for the client. Add or remove rows based on the platforms in scope.
Approved utm_source values
| Platform | utm_source Value |
|---|---|
| Facebook | facebook |
| Instagram | instagram |
| LinkedIn | linkedin |
| TikTok | tiktok |
| YouTube | youtube |
| X / Twitter | x-twitter |
| WhatsApp | whatsapp |
| Email newsletter | email |
| Google (paid search) | google |
Approved utm_medium values
| Content Type | utm_medium Value |
|---|---|
| Standard feed post (organic) | organic-post |
| Story (Facebook or Instagram) | story |
| Instagram or Facebook Reel | reel |
| YouTube Short | short |
| WhatsApp broadcast | broadcast |
| Email newsletter | newsletter |
| Paid social post | paid-post |
| Bio link (Instagram or TikTok) | bio-link |
| Direct message link | dm |
utm_campaign naming pattern
| Campaign Type | Pattern | Example |
|---|---|---|
| Product launch | product-launch-[month]-[year] | product-launch-march-2026 |
| Seasonal promotion | seasonal-[season]-[year] | seasonal-easter-2026 |
| Brand awareness | brand-awareness-q[n]-[year] | brand-awareness-q1-2026 |
| Event promotion | event-[event-name]-[year] | event-kampala-marathon-2026 |
| Regular content series | series-[name]-[year] | series-recipe-videos-2026 |
Instruct the client to use Google's free Campaign URL Builder at ga-dev-tools.google.com/campaign-url-builder. No login or paid subscription is required.
Step-by-step instructions:
utm_source. Select the correct value from the approved reference table in Section 4.utm_medium. Select the correct value from the approved reference table in Section 4.utm_campaign. Type the campaign name exactly as it appears in the content calendar — lowercase, hyphens only.utm_content. Type the post ID or brief title exactly as it appears in the content calendar. Do not skip this field.bit.ly (free tier available) or rb.gy. Copy the shortened link. Use this shortened link in all captions, broadcast messages, and bio slots.Shortening guidance:
Build this template in Google Sheets or Microsoft Excel. Create one sheet per month. The template captures every UTM link created, so the team can find and reuse links and the consultant can audit naming consistency.
Columns:
| Date Created | Campaign Name | Platform | Content Type | Destination URL | Short UTM URL | Notes | |---|---|---|---|---|---|---|
Three example rows for a Kampala business:
| Date Created | Campaign Name | Platform | Content Type | Destination URL | Short UTM URL | Notes |
|---|---|---|---|---|---|---|
| 2026-03-10 | sunday-brunch-march-2026 | WhatsApp | broadcast | https://www.akaciakampala.com/sunday-brunch | https://bit.ly/akacia-brunch-wa | Sent to 340-person broadcast list; resend Thursday if bookings below target |
| 2026-03-12 | sunday-brunch-march-2026 | Instagram | reel | https://www.akaciakampala.com/sunday-brunch | https://bit.ly/akacia-brunch-ig | Reel hook variant A; compare to hook-b performance after 48 hours |
| 2026-03-14 | sunday-brunch-march-2026 | Facebook | organic-post | https://www.akaciakampala.com/sunday-brunch | https://bit.ly/akacia-brunch-fb | Image carousel; posted in Kampala Foodies group and on page |
Notes on the template:
Notes column is for operational observations — send times, audience segments, A/B variants, or flags for follow-up. Keep it brief.Instruct the client on how to find UTM data in Google Analytics 4. Note: these instructions reflect the GA4 interface, not Universal Analytics. If the client's account still shows "Universal Analytics," flag that they must migrate before proceeding.
Finding source and medium data:
analytics.google.com.facebook / organic-post and whatsapp / broadcast.Finding campaign data:
utm_campaign. Rows labelled (not set) are visits that arrived without UTM tags.Key metrics to read:
| Metric | What It Means | |---|---| | Sessions | Total visits from that source or campaign | | Engaged sessions | Sessions lasting more than 10 seconds, with a conversion event, or with 2+ page views — a better quality signal than raw sessions | | Engagement rate | Engaged sessions ÷ total sessions — use this to compare platform quality, not just volume | | Conversions | Goal completions (form fills, bookings, purchases) — requires conversion events to be configured in GA4 | | Revenue | Total e-commerce revenue attributed (only if e-commerce tracking is set up) |
Monthly reporting routine:
Include this note in every UTM system delivered to an East African client. It is specific to the EA market context.
What dark social is. When someone copies a link from a website and shares it in a WhatsApp chat, the person who clicks that link arrives at the website with no referrer information. GA4 logs the visit as "direct" traffic. In Uganda and across East Africa, WhatsApp is the primary channel through which content spreads informally — links are copied from posts, forwarded between groups, and shared in family and business chats. A significant portion of what appears as "direct" traffic in GA4 is actually WhatsApp-driven dark social.
Why it matters. A client who sees 40% direct traffic may assume those visitors typed the URL manually or came from a bookmark. In reality, many of those visits came from social sharing that UTM tags never captured. This inflates the apparent value of direct traffic and understates the true contribution of social media.
What to do about it:
utm_medium=broadcast so it is distinguishable from other WhatsApp traffic.Note the baseline "direct" percentage at campaign start. Report the reduction in unattributed traffic as a metric in the monthly report — it demonstrates the value of the UTM system itself.
mywebsite.com or placeholder URLs in any deliverabletools
Generates a foundational social media training guide for clients and their teams who are completely new to social media marketing, or who have been posting without any strategic understanding. Invoke when the user says "write a social media basics guide", "create a beginner training document", "the client doesn't understand social media", "start-here training", or when a client needs to understand social media before any strategy or content work begins. Distinct from training-client-team (operational handover of an existing strategy) and training-diy-content (content creation for self-managing clients). This skill covers what social media is, how it works, and how to approach it intelligently — the conceptual foundation that makes all downstream strategy work land.
tools
Generates a practical smartphone video production training guide for East African clients and content teams. Covers shooting, audio, lighting, framing, editing, and platform-specific formats using only a smartphone — no professional equipment required. Invoke this skill when a client or their team needs to produce their own social video content and requires a hands-on, jargon-free training document tailored to EA field conditions.
tools
Generates a complete DIY content creation handbook for clients who want to manage some or all of their own content after the initial strategy engagement. Invoke when the user says "write a DIY content guide", "create a self-managed content handbook", "the client wants to manage their own content", or when a handover guide is needed at the end of a strategy engagement. Output is a self-contained reference document — not a training presentation — that the client keeps and uses independently.
tools
Generates a complete 2-hour in-person training workbook for a client's internal team — employees who will assist with content creation or community management. Invoke when the user says "create a team training guide", "write a staff training workbook", "onboard our internal team on social media", or needs a printable workshop document for client employees. Output is a structured, print-ready workbook — not a presentation deck.