Agent skill

Marketing Analyst

by borghei in borghei/Claude-Skills

Marketing analytics covering campaign analysis, attribution and marketing mix modeling, ROI measurement, and performance reporting.

MITAuto-check passedMarketing & SEO

Install Marketing Analyst

skills CLI
$ npx skills add borghei/Claude-Skills --skill marketing-analyst -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install borghei/Claude-Skills marketing-analyst --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/marketing/marketing-analyst .claude/skills/marketing-analyst && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
marketing-analyst
GitHub stars
886
Token cost
~3k tokens
SKILL.md length
900 words
Files
4 (incl. scripts)
Skills in repo
354
Repo updated
First seen
Licence
MIT

At a glance

Marketing analytics covering campaign analysis, attribution and marketing mix modeling, ROI measurement, and performance reporting.

  • Works in 6 steps: Define measurement objectives - Identify… → Collect and validate data - Pull… → Run attribution analysis - Apply… → …
  • Analyzing campaign ROI
  • SKILL.md covers Clarify First, Workflow, Marketing Metrics Reference and Attribution Modeling, plus 7 more sections
  • Runs Python scripts from its folder; calls python

What it does

Marketing Analyst is an agent skill from borghei/Claude-Skills. Marketing analytics covering campaign analysis, attribution and marketing mix modeling, ROI measurement, and performance reporting. Use when analyzing campaign ROI, comparing attribution models, or optimizing budget allocation.

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts (for example `scripts/channel_mix_optimizer.py`, `scripts/cohort_analyzer.py` and `scripts/marketing_forecast_generator.py`).

It sits in Marketing & SEO, covering Marketing analytics. The repository describes itself as: 385 AI skills, 77 expert agents, and 900 stdlib Python tools for every team: engineering, PM, marketing, C-level, compliance, business ops, research, and a LinkedIn toolkit… The licence is MIT.

When your agent uses it

  • Analyzing campaign ROI
  • Comparing attribution models
  • Optimizing budget allocation

Example prompts

  • “/marketing-analyst”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Define measurement objectives - Identify which campaigns, channels, or initiatives require analysis. Confirm KPIs (CPL, CAC, ROAS…
  2. Collect and validate data - Pull campaign data from ad platforms, CRM, and analytics tools. Validate completeness and consistency…
  3. Run attribution analysis - Apply multiple attribution models (first-touch, last-touch, linear, time-decay, position-based) and compare…
  4. Analyze campaign performance - Calculate ROI, ROAS, CPL, CAC, and conversion rates per campaign. Identify top and bottom performers…
  5. Optimize budget allocation - Use marketing mix modeling or ROI data to recommend budget shifts. Checkpoint: reallocation recommendations…
  6. Build executive report - Summarize headline metrics, wins, challenges, and next-period focus. Checkpoint: report passes the "so what" test…

What it can do on your machine

Read from SKILL.md and the folder at commit 4a698e8. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 3 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Marketing Analyst loads about 3k tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 900 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~61
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from borghei/Claude-Skills at commit 4a698e8, republished under its MIT licence (© borghei). 900 words, ~2,956 tokens.

Download SKILL.mdSave it as .claude/skills/marketing-analyst/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
marketing-analyst
description
Marketing analytics covering campaign analysis, attribution and marketing mix modeling, ROI measurement, and performance reporting. Use when analyzing campaign ROI, comparing attribution models, or optimizing budget allocation.
license
MIT + Commons Clause
metadata.version
1.0.0
metadata.author
borghei
metadata.category
marketing-growth
metadata.updated
2026-03-31
metadata.tags
analytics, attribution, roi, campaigns, reporting

Marketing Analyst

The agent operates as a senior marketing analyst, delivering campaign performance analysis, multi-touch attribution, marketing mix modeling, ROI measurement, and data-driven budget optimization.

Clarify First

Before running the analysis, confirm these inputs. If any is unknown or vague, ASK — do not assume:

  • Campaigns/channels in scope — which campaigns or channels and the date range (defines the dataset and report boundaries)
  • KPIs and their targets — CPL, CAC, ROAS, pipeline, revenue, each with a target and a data source (drives the target-vs-actual performance table)
  • Sales-cycle length — short vs long B2B cycle (determines attribution model and whether to report pipeline vs closed revenue)
  • Report audience — exec summary vs ops deep-dive (sets the altitude and which sections matter most)

Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.

Workflow

  1. Define measurement objectives - Identify which campaigns, channels, or initiatives require analysis. Confirm KPIs (CPL, CAC, ROAS, pipeline, revenue). Checkpoint: every KPI has a target and a data source.
  2. Collect and validate data - Pull campaign data from ad platforms, CRM, and analytics tools. Validate completeness and consistency. Checkpoint: no channel has >5% missing data.
  3. Run attribution analysis - Apply multiple attribution models (first-touch, last-touch, linear, time-decay, position-based) and compare channel credit allocation. Checkpoint: results are compared across at least 3 models.
  4. Analyze campaign performance - Calculate ROI, ROAS, CPL, CAC, and conversion rates per campaign. Identify top and bottom performers. Checkpoint: performance table includes target vs. actual for every metric.
  5. Optimize budget allocation - Use marketing mix modeling or ROI data to recommend budget shifts. Checkpoint: reallocation recommendations are backed by expected ROI per channel.
  6. Build executive report - Summarize headline metrics, wins, challenges, and next-period focus. Checkpoint: report passes the "so what" test (every data point has an actionable insight).

Marketing Metrics Reference

Acquisition Metrics
MetricFormulaBenchmark
CPLSpend / LeadsVaries by industry
CACS&M Spend / New CustomersLTV/CAC > 3:1
CPASpend / AcquisitionsTarget specific
ROASRevenue / Ad Spend> 4:1
Engagement Metrics
MetricFormulaBenchmark
Engagement RateEngagements / Impressions1-5%
CTRClicks / Impressions0.5-2%
Conversion RateConversions / Visitors2-5%
Bounce RateSingle-page sessions / Total< 50%
Retention Metrics
MetricFormulaBenchmark
Churn RateLost Customers / Total< 5% monthly
NRR(MRR - Churn + Expansion) / MRR> 100%
LTVARPU x Gross Margin x Lifetime3x+ CAC

Attribution Modeling

Model Comparison

The agent should apply multiple models and compare results to identify channel over/under-valuation:

ModelLogicBest For
First-touch100% credit to first interactionMeasuring awareness channels
Last-touch100% credit to final interactionMeasuring conversion channels
LinearEqual credit across all touchesBalanced view of full journey
Time-decayMore credit to recent touchesShort sales cycles
Position-based40% first, 40% last, 20% middleMost B2B scenarios
Attribution Calculator
python
def calculate_attribution(touchpoints, model='position'):
    """Calculate attribution credit for a conversion journey.

    Args:
        touchpoints: List of channel names in order of interaction
        model: One of 'first', 'last', 'linear', 'time_decay', 'position'

    Returns:
        Dict mapping channel -> credit (sums to 1.0)

    Example:
        >>> calculate_attribution(['paid_search', 'email', 'organic', 'direct'], 'position')
        {'paid_search': 0.4, 'email': 0.1, 'organic': 0.1, 'direct': 0.4}
    """
    n = len(touchpoints)
    credits = {}

    if model == 'first':
        credits[touchpoints[0]] = 1.0
    elif model == 'last':
        credits[touchpoints[-1]] = 1.0
    elif model == 'linear':
        for tp in touchpoints:
            credits[tp] = credits.get(tp, 0) + 1.0 / n
    elif model == 'time_decay':
        decay = 0.7
        total = sum(decay ** i for i in range(n))
        for i, tp in enumerate(reversed(touchpoints)):
            credits[tp] = credits.get(tp, 0) + (decay ** i) / total
    elif model == 'position':
        if n == 1:
            credits[touchpoints[0]] = 1.0
        elif n == 2:
            credits[touchpoints[0]] = 0.5
            credits[touchpoints[-1]] = credits.get(touchpoints[-1], 0) + 0.5
        else:
            credits[touchpoints[0]] = 0.4
            credits[touchpoints[-1]] = credits.get(touchpoints[-1], 0) + 0.4
            for tp in touchpoints[1:-1]:
                credits[tp] = credits.get(tp, 0) + 0.2 / (n - 2)

    return credits

Example: Campaign Analysis Report

markdown
# Campaign Analysis: Q1 2026 Product Launch

## Performance Summary
| Metric       | Target  | Actual  | vs Target |
|--------------|---------|---------|-----------|
| Impressions  | 500K    | 612K    | +22%      |
| Clicks       | 25K     | 28.4K   | +14%      |
| Leads        | 1,200   | 1,350   | +13%      |
| MQLs         | 360     | 410     | +14%      |
| Pipeline     | $1.2M   | $1.45M  | +21%      |
| Revenue      | $380K   | $425K   | +12%      |

## Channel Breakdown
| Channel      | Spend   | Leads | CPL   | Pipeline |
|--------------|---------|-------|-------|----------|
| Paid Search  | $45K    | 520   | $87   | $580K    |
| LinkedIn Ads | $30K    | 310   | $97   | $420K    |
| Email        | $5K     | 380   | $13   | $350K    |
| Content/SEO  | $8K     | 140   | $57   | $100K    |

## Key Insight
Email delivers lowest CPL ($13) and strong pipeline. Recommend shifting
10% of LinkedIn budget to email nurture sequences for Q2.

Budget Optimization Framework

Budget Allocation Recommendation
  Channel        Current    Optimal    Change    Expected ROI
  Paid Search    30%        35%        +5%       4.2x
  Social Paid    25%        20%        -5%       2.8x
  Display        15%        10%        -5%       1.5x
  Email          10%        15%        +5%       8.5x
  Content        10%        12%        +2%       5.2x
  Events         10%        8%         -2%       2.2x

  Projected Impact: +15% pipeline with same budget

A/B Test Statistical Analysis

python
from scipy import stats
import numpy as np

def analyze_ab_test(control_conv, control_total, treatment_conv, treatment_total, alpha=0.05):
    """Analyze A/B test for statistical significance.

    Example:
        >>> result = analyze_ab_test(150, 5000, 195, 5000)
        >>> result['significant']
        True
        >>> f"{result['lift_pct']:.1f}%"
        '30.0%'
    """
    p_c = control_conv / control_total
    p_t = treatment_conv / treatment_total
    p_pool = (control_conv + treatment_conv) / (control_total + treatment_total)
    se = np.sqrt(p_pool * (1 - p_pool) * (1/control_total + 1/treatment_total))
    z = (p_t - p_c) / se
    p_value = 2 * (1 - stats.norm.cdf(abs(z)))

    return {
        'control_rate': p_c,
        'treatment_rate': p_t,
        'lift_pct': ((p_t - p_c) / p_c) * 100,
        'p_value': p_value,
        'significant': p_value < alpha,
    }

Show full SKILL.md (427 more words)Show less

Troubleshooting

SymptomLikely CauseResolution
Attribution models give wildly different channel credit allocationsNo single model captures full truth; each has structural biasRun 3+ models (first-touch, last-touch, position-based) and compare; use position-based as default for B2B
ROAS calculations look great but pipeline is flatRevenue attribution counting existing customers, not new pipelineSeparate new business attribution from expansion; report pipeline separately from revenue
Marketing reports and sales reports show different lead countsMarketing counts MQLs at form fill, sales counts at CRM entry with different criteriaAlign on shared definitions: document exact MQL, SQL, and opportunity criteria in a shared SLA
Forecast consistently over-predicts by 20%+Model uses linear extrapolation without accounting for seasonality or saturationApply dampening factors for longer forecasts; use ensemble method (linear + growth rate + moving average)
Executive dashboard takes too long to build each monthManual data pulls from 5+ platforms with different schemasAutomate data collection; standardize UTM and naming conventions so cross-platform analysis is consistent
Channel ROI is negative but still generating pipelineLong B2B sales cycle means revenue attribution has not caught up to spendUse pipeline-based attribution for channels with 3+ month sales cycles rather than closed-won revenue

Success Criteria

  • Multi-touch attribution model deployed comparing 3+ models with documented channel credit differences
  • Monthly marketing report delivered within 3 business days of month close
  • Budget reallocation recommendations backed by per-channel ROI data and implemented quarterly
  • Forecast accuracy within 15% of actual for 3-month projections
  • Campaign performance reports include target vs actual for every KPI
  • Every data point in executive reports has an actionable insight (passes "so what" test)
  • Channel data completeness above 95% (no channel has >5% missing data)

Scope & Limitations

In Scope: Campaign performance analysis, multi-touch attribution modeling, marketing mix optimization, ROI/ROAS calculation, budget allocation recommendations, executive reporting, cohort retention analysis, marketing forecasting.

Out of Scope: Analytics implementation and tracking setup (see analytics-tracking skill), product analytics (see product-team skills), financial modeling beyond marketing metrics (see finance skill), data engineering and warehouse management.

Limitations: Attribution models are approximations — no model perfectly captures the buyer journey, especially for high-touch B2B sales. Forecasting uses historical extrapolation with dampening; it does not account for market disruptions or competitive moves. Budget optimization assumes linear channel scaling; most channels have diminishing returns at scale.


Scripts

ScriptPurposeUsage
scripts/channel_mix_optimizer.pyAnalyze channel performance and recommend optimal budget allocationpython scripts/channel_mix_optimizer.py channels.json --budget 100000 --demo
scripts/cohort_analyzer.pyAnalyze user retention by cohort, identify trends and best/worst performerspython scripts/cohort_analyzer.py cohort_data.json --demo
scripts/marketing_forecast_generator.pyGenerate marketing forecasts using linear, growth rate, and ensemble methodspython scripts/marketing_forecast_generator.py historical.json --periods 6

© borghei, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts) in marketing/marketing-analyst of borghei/Claude-Skills.

  • SKILL.md
  • scripts/channel_mix_optimizer.py
  • scripts/cohort_analyzer.py
  • scripts/marketing_forecast_generator.py

Open the folder on GitHubat commit 4a698e8

Compare with similar skills

Marketing Analyst next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Marketing Analyst compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Marketing Analyst this skillborghei/Claude-Skills886—~3kAutomated safety check: PassMIT
Google SEO APIsAgriciDaniel/claude-seo19k1 repos~4.2kAutomated safety check: PassMIT
AnalyticsNexus-JPF/note-companion8707 repos~2.2kAutomated safety check: PassMIT
GEO Monthly Delta Reportzubair-trabzada/geo-seo-claude11k—~2.4kAutomated safety check: NotesMIT
Conversion Signal QAaaron-he-zhu/aaron-marketing-skills2.9k2 repos~2.4kAutomated safety check: PassApache-2.0
LLM Mention Trackingunifapi-agent/agents589—~1.8kAutomated safety check: PassMIT

Similar skills

  • Google SEO APIs

    AgriciDaniel/claude-seo

    Pulls real Google data for SEO work: Search Console, PageSpeed Insights, CrUX field data, the Indexing API and GA4 organic traffic, through /seo google commands.

    19k GitHub starsUsed in 1 repo~4.2k tokens
    Marketing & SEOAuto-check passed
  • Analytics

    Nexus-JPF/note-companion

    When the user wants to set up, improve, or audit analytics tracking and measurement.

    870 GitHub starsUsed in 7 repos~2.2k tokens
    Marketing & SEOAuto-check passed
  • GEO Monthly Delta Report

    zubair-trabzada/geo-seo-claude

    Compares a baseline and a current GEO audit for a client, calculates score changes and action item progress, and writes a monthly progress report.

    11k GitHub stars~2.4k tokensUpdated today
    Marketing & SEOAuto-check: notes
  • Conversion Signal QA

    aaron-he-zhu/aaron-marketing-skills

    A skill your agent uses when the user asks to "QA my conversion tracking before launch", "check my UTMs / pixel / event firing", "set up a tracking pre-flight", or "set the dedup rule so Meta and…

    2.9k GitHub starsUsed in 2 repos~2.4k tokens
    Marketing & SEOAuto-check passed
  • LLM Mention Tracking

    unifapi-agent/agents

    When the user wants to track how often their brand or domain gets mentioned across ChatGPT and AI search engines over a set of prompts, and how that share of voice compares to named competitors over…

    589 GitHub stars~1.8k tokensUpdated 1 mo ago
    Marketing & SEOAuto-check passed
  • Google Analytics 4 Analysis

    LichAmnesia/lich-skills

    Pulls Google Analytics 4 data through the Data API with TypeScript scripts and turns it into a daily SEO report or prioritized traffic and bounce-rate recommendations.

    234 GitHub stars~2k tokensUpdated 4 mo ago
    Marketing & SEOAuto-check: notes

More from borghei/Claude-Skills

All 354 skills in this repo
  • Agent Harness

    borghei/Claude-Skills

    Test and evaluation harness for AI agents — scenario suites, deterministic replay, regression diffing, cost and latency budgets.

    886 GitHub stars~3.1k tokensUpdated 2 days ago
    Auto-check passed
  • Agents In The Team

    borghei/Claude-Skills

    Run delivery when AI coding and ops agents take tickets. An agent skill from borghei/Claude-Skills.

    886 GitHub stars~4.2k tokensUpdated 2 days ago
    Auto-check passed
  • AI Content Disclosure

    borghei/Claude-Skills

    Check AI-generated marketing content and reviews for required disclosures under the EU AI Act, FTC rules and platform AI-label policies.

    886 GitHub stars~3.4k tokensUpdated 2 days ago
    Auto-check passed
  • AI Prototyping

    borghei/Claude-Skills

    Idea to AI-generated prototype to customer validation to engineering handoff.

    886 GitHub stars~3.6k tokensUpdated 2 days ago
    Auto-check passed
  • Analytics Engineer

    borghei/Claude-Skills

    Analytics engineering across data modeling, dbt, transformation, and semantic layers.

    886 GitHub stars~3.4k tokensUpdated 2 days ago
    Auto-check passed
  • Ansoff Matrix

    borghei/Claude-Skills

    Ansoff Matrix — 4-quadrant framework for growth options: market penetration, market/product development, and diversification.

    886 GitHub stars~2.2k tokensUpdated 2 days ago
    Auto-check passed

Categories

Questions about Marketing Analyst

What does Marketing Analyst do?

Marketing analytics covering campaign analysis, attribution and marketing mix modeling, ROI measurement, and performance reporting. Marketing Analyst is an agent skill from borghei/Claude-Skills. Marketing analytics covering campaign analysis, attribution and marketing mix modeling, ROI measurement, and performance reporting.

When should I use Marketing Analyst?

Marketing Analyst fits situations like: analyzing campaign ROI; comparing attribution models; optimizing budget allocation.

How do I install Marketing Analyst in Claude Code?

Run `npx skills add borghei/Claude-Skills --skill marketing-analyst -a claude-code`. Or copy the skill folder (marketing/marketing-analyst in borghei/Claude-Skills) into .claude/skills/marketing-analyst in your project. Claude Code loads it when a task matches its description.

How do I install Marketing Analyst in Codex?

Run `npx skills add borghei/Claude-Skills --skill marketing-analyst -a codex`. Or copy the skill folder (marketing/marketing-analyst in borghei/Claude-Skills) into .agents/skills/marketing-analyst in your project. Codex loads it when a task matches its description.

Can I use Marketing Analyst in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add borghei/Claude-Skills --skill marketing-analyst -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/marketing-analyst, .gemini/skills/marketing-analyst, .github/skills/marketing-analyst and .opencode/skills/marketing-analyst in your project.

What does Marketing Analyst need to run?

Going by SKILL.md and its folder, Marketing Analyst needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Marketing Analyst access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Marketing Analyst safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Marketing Analyst use?

Marketing Analyst is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Marketing Analyst use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Marketing Analyst?

Skills that share tags, products or a category with Marketing Analyst: Google SEO APIs (AgriciDaniel/claude-seo, 19k stars), Analytics (Nexus-JPF/note-companion, 870 stars), GEO Monthly Delta Report (zubair-trabzada/geo-seo-claude, 11k stars) and Conversion Signal QA (aaron-he-zhu/aaron-marketing-skills, 2.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Marketing Analyst?

borghei (a GitHub user) maintains it in borghei/Claude-Skills, which has 886 GitHub stars. The repository holds 354 skills in this directory. The repository was last updated on October 7, 2026.

Source: borghei/Claude-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.