attribution Skill (coreyhaines31): What It Does and How to Install It
Makes Claude help you work out which channels drive conversions, reconcile dashboards that disagree and build first-party attribution.
- Installs
- 41.8K
- on skills.sh
- Stars
- 57.9K
- on GitHub
- Files
- 5
- besides SKILL.md
- Updated
- Oct 2026
- last repo commit
attribution makes Claude act as an attribution analyst with two jobs. Pillar A explains attribution models and measurement approaches, and why Google, Meta, GA and your CRM report different numbers. Pillar B guides you through building first-party attribution yourself, including stitching a booking made on a third-party domain back to the visitor's source. It reads .agents/product-marketing.md first if that file exists, and it ends with a written attribution readout.
Good for
- Marketers whose Google, Meta, GA and CRM numbers do not match
- B2B and ecommerce teams choosing an attribution model
- Growth engineers stitching bookings or checkouts back to the visitor source
- Founders asking what their real CAC is
Install attribution
Claude Code
- 1
Copy this prompt.
Install the attribution skill in Claude Code. Run this command: npx skills add coreyhaines31/marketingskills --skill attribution -a claude-code Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
The README says every marketing skill checks a product-marketing context file first (.agents/product-marketing.md). Install that skill too if you want it to start from your product, audience and positioning.
From the project README. Source.
What's in the skill
When it loads
When the user wants to figure out which marketing actually drives conversions and revenue, choose or interpret an attribution model, or reconcile conflicting numbers across tools. Also use when the user mentions "attribution," "attribution model," "first-touch vs last-touch," "multi-touch," "which channel drives revenue," "what's my real CAC," "my dashboards disagree," "Google/Meta says X but GA says Y," "media mix model," "MMM," "incrementality," "geo lift," "holdout test," "how did you hear about us," "self-reported attribution," "dark social," or wants to instrument attribution themselves — "stitch my bookings to their source," "SavvyCal/Calendly attribution," "close the identify gap," "track conversions on a third-party domain," "first-party / self-hosted attribution." For event tracking setup and UTMs, see analytics. For ad-platform pixels/CAPI and conversion tracking, see conversion-tracking. For pipeline and CRM revenue reporting, see revops. For the AI-search attribution blind spot, see ai-seo.
Sections in SKILL.md
- Boundaries — what this skill does NOT own
- Pillar A — Interpretation
- 1. What attribution can and can't tell you
- 2. Attribution models
- 3. The three measurement paradigms
- 4. Self-reported attribution
- 5. Reconciling conflicting sources
- 6. The blind spots
- 7. Business-type fork
- Pillar B — Own your attribution (first-party)
- The identity graph
- Closing the identify() gap
- Stitching conversions on a third-party domain
- Guardrails (do not skip)
- Reporting and the last mile
- Output format
Key facts
- Author
- coreyhaines31
- Repository
- coreyhaines31/marketingskills
- License
- MIT
- Skill version
- 1.1.6
- Installs on skills.sh
- 41,841 (Nov 2, 2026)
- GitHub stars
- 57,855 (Nov 2, 2026)
- skills.sh audits
- Gen Agent Trust Hub pass, Socket pass, Snyk pass (Nov 2, 2026)
- Last repo commit
- Oct 31, 2026
- Works in
- Claude Code, Codex, Cursor, Windsurf and other Agent Skills tools; Claude web via ZIP (README)
- Reads first
- .agents/product-marketing.md, if it exists
What it includes
Sets expectations: attribution is directional, every model is an opinion
1. What attribution can and can't tell youSeven models from first-touch to data-driven, with when each one lies
First-touch, last-touch, last non-direct, linear, time-decay, position-based and data-driven. For long cycles it shows first-touch and last-touch side by side.
2. Attribution modelsMulti-touch attribution, marketing mix modeling and incrementality tests; how to choose
3. The three measurement paradigmsA "How did you hear about us?" question at conversion to catch dark social
4. Self-reported attributionPicks one source of truth for conversion counts and never sums across platforms
5. Reconciling conflicting sourcesDirect, branded search, dark social and AI traffic, where real channels hide
6. The blind spotsSeparate defaults for B2B SaaS and for ecommerce or DTC
7. Business-type forkWrites first-party tracking: identify() at conversions and a third-party-domain stitch
Covers the identity graph, closing the identify() gap, stitching a booking on a domain you do not own, guardrails, reporting and writing the source into the CRM.
Write ·
Pillar B: Own your attributionDelivers an attribution readout with six sections, from the question to a recommendation
Sections: the question, source of truth, what each source says, model comparison, confidence and gaps, recommendation.
Output formatFour deeper guides: models, measurement paradigms, business types, first-party tracking
Reference guides
From the official docs
Permissions
Low risk
In its build track it has Claude write tracking code and a webhook handler that pass visitor IDs between your site, a third-party tool and your analytics.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can add tracking code to your site
The runbook adds a link decorator that appends the visitor's anonymous ID to outbound links, and a webhook handler that merges identities. It says to send only the anonymous ID and fail closed. Review the code against your privacy policy and consent setup. github.com
The webhook example uses secrets
It reads an analytics API key and a webhook signing secret. Keep them in environment variables and never paste them into the chat. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Turning on read-only | Pillar A is advice only; Pillar B writes code. No read-only setting is documented. |
|---|---|
| Talks to | Code it writes sends events to your analytics tool (the worked example uses PostHog) and receives webhooks from tools such as SavvyCal. Your AI provider receives the data Claude reads |
| Sign-in and keys | SKILL.md names no key. The webhook runbook uses an analytics API key and a webhook signing secret that you keep in your own environment. |
| Scopes |
|
Questions
How do I install the attribution skill?
Use the install box above: the Claude Code, Codex and skills CLI tabs use the skills CLI, and the Claude tab uses the web ZIP from the repo's releases. The README also documents a Claude Code plugin and a Codex plugin, which install the whole marketing set.
Does it work in the Claude app?
Yes, through the README's Claude web ZIP route: download the attribution ZIP from releases, then upload it under Customize, Skills. The ZIP does not install related skills or tools such as PostHog connections.
Why do Google, Meta and GA report different conversions?
SKILL.md says each ad platform claims the same sale under its own window and view-through rules, so the sum almost always exceeds real conversions. It tells Claude to count conversions once, from your CRM or backend, and use the other sources to explain where they came from.
Which attribution model should I use?
For a long sales cycle, SKILL.md says show first-touch and last-touch side by side, because the gap between them is the insight. For a small budget and short cycle it favours good UTMs, last non-direct and a self-reported survey over a fancy model.
Does attribution replace analytics, conversion-tracking or revops?
No. SKILL.md hands event tracking and UTMs to analytics, ad pixels and CAPI to conversion-tracking, pipeline and CRM reporting to revops, and AI search measurement to ai-seo. It assumes tracking already exists.
Is the attribution skill safe?
The skill runs no scripts. In its build track it has Claude write tracking code, a link decorator and a webhook handler, which can move visitor IDs and use API keys. Review that code before you ship it, and keep keys out of the chat.
Information
updated Nov 2, 2026
- Repository
- coreyhaines31/marketingskills
- Folder
skills/attribution
Sources
Docs, issue trackers and discussions this page is built from.
Show all 5Hide
- marketingskills README · github.com
- skills CLI commands · github.com
- attribution SKILL.md · github.com
- attribution on skills.sh · skills.sh
- first-party-tracking.md · github.com