// execute
Marketing Report
Use when the user wants to build a board-ready marketing report, a KPI dashboard, or a monthly/quarterly performance review — turning raw funnel, spend, and pipeline numbers into metrics and a narrative leadership can act on. Also use when the user mentions marketing reporting, KPI dashboard, board deck, marketing metrics, funnel conversion, CAC or ROI reporting, attribution narrative, or "what do I show the board / how is marketing performing." Produces a full-funnel KPI snapshot (stage conversion, CAC, efficiency, attainment) with period-over-period deltas and a decision-focused narrative.
npx skills add sarojkjha/aaj-marketing-skills --skill marketing-report// when to use it
Use when the user wants to build a board-ready marketing report, a KPI dashboard, or a monthly/quarterly performance review — turning raw funnel, spend, and pipeline numbers into metrics and a narrative leadership can act on. Also use when the user mentions marketing reporting, KPI dashboard, board deck, marketing metrics, funnel conversion, CAC or ROI reporting, attribution narrative, or "what do I show the board / how is marketing performing." Produces a full-funnel KPI snapshot (stage conversion, CAC, efficiency, attainment) with period-over-period deltas and a decision-focused narrative.
// what you give
One period of spend, funnel volumes (sessions, leads, MQLs, SQLs, opps, wins — any subset), new revenue, pipeline created, and target; plus the prior period for deltas
// what you get
A full-funnel KPI snapshot (stage conversion, CAC, cost per lead, new-revenue-to-spend, pipeline-to-spend, target attainment), period-over-period deltas, and a board-ready narrative structure
Marketing Report & KPI Dashboard
Turn a period of raw numbers into a report leadership can act on — the decisions-you-can-defend layer on top of every other metric. Roll funnel, spend, and pipeline into one KPI snapshot with period-over-period movement, then wrap it in a narrative that says what worked, what didn't, and what you're doing about it. Reporting isn't a scoreboard; it's how the next decision gets made.
When to use
The user needs a board deck, a monthly or quarterly marketing review, a KPI dashboard, or an answer to "how is marketing performing and what do we show leadership?"
Before you start
- Read the brand/product context first (
.agents/product-marketing.md/.agents/aaj-brand.md) for model, motion, and goals, if present. - Gather one period of numbers:
- Spend (marketing / S&M for the period).
- Funnel volumes in order — sessions, leads, MQLs, SQLs, opportunities, wins (any subset you track).
- New revenue (bookings / ARR / revenue won), pipeline created, and the target for the period.
- The prior period's figures, to compute deltas — the trend usually matters more than the level.
The math
Stage conversion = next stage / previous stage (per adjacent pair)
Overall conversion = wins / first tracked stage
CAC = spend / wins
Cost per lead = spend / leads
New revenue:spend = new revenue / spend (efficiency read, not ROI)
Pipeline:spend = pipeline created / spend
Target attainment = new revenue / target
Delta vs prior = (current − prior) / |prior| (per metric)
Run the engine
Paths assume you installed with
npx skills add. From a clone of this repo, useskills/marketing-report/resources/…instead.
node .agents/skills/marketing-report/resources/marketing-report.js # demo (quarter with prior period)
node .agents/skills/marketing-report/resources/marketing-report.js '{"period":"March","spend":40000,"leads":800,"wins":11,"newRevenue":150000}'
node .agents/skills/marketing-report/resources/marketing-report.js --help
It prints the KPI snapshot, the funnel with stage rates, deltas vs prior, a few flags, and a JSON block. Metrics compute only where inputs allow, so partial data still produces a useful report.
Build the report
Structure every marketing report the same way so leadership learns to read it fast:
- Results vs target and prior — lead with the one-number story (attainment, or new revenue vs plan/last period).
- Funnel — where it converts and where it leaks, stage by stage, each against its own trend.
- Efficiency — CAC, cost per lead, new-revenue-to-spend, pipeline-to-spend.
- What changed and why — the two or three moves behind the deltas.
- Actions — what you're doing next, tied to the gaps above.
Every number gets a "so what." A report that lists metrics without a decision is a scoreboard, not a report.
Interpret the result
- Read each stage rate against its own history, never against another stage — a Sessions→Leads rate and an MQL→SQL rate are different orders of magnitude, and comparing them is meaningless.
- New-revenue-to-spend is an efficiency read, not ROI. Revenue often lags the spend that created it, and attribution is imperfect — present it as a ratio with that caveat.
- Trend beats level. A 34% MQL→SQL rate means little alone; up from 28% or down from 41% is the story.
- Attainment frames everything. Above target, ask what to double down on; below, name the gap and the fix.
Present the result
A one-screen snapshot (the KPI table + funnel), then three to five bullets: what worked, what didn't, what you're changing. Show trend arrows, not just values. Own the misses plainly — credibility with a board comes from naming the bad number before they do.
Guardrails & common mistakes
- Don't compare stage rates across orders of magnitude. Use per-stage trends.
- New-revenue-to-spend ≠ ROI. Mind the sales-cycle lag before judging a period.
- Blended vs channel. Blended CAC/efficiency flatters paid; for channel decisions use channel-level numbers, and say which you used.
- Attribution humility. Report what you can defend; don't over-claim credit a model can't support.
- One metric per decision. Kill vanity metrics — if a number won't change an action, cut it from the deck.
- Same basis across periods. Consistent definitions and windows, or the deltas lie.
Related AAJ resources
- Pipeline forecast: https://aajconsult.com/tools/pipeline-forecast-calculator
- Unit economics: https://aajconsult.com/tools/unit-economics-calculator
Related skills
unit-economics (the CAC and LTV this report tracks) · pipeline-and-forecast (the pipeline and coverage feeding it) · paid-media-budget-allocation (where the efficiency read drives reallocation).
Credits
Original AAJ skill. The Agent Skills format and the marketing-skills catalog by Corey Haines (coreyhaines31/marketingskills, MIT) were references for structure and coverage; this skill is independently written. See the repository README for the full reference list.
// faq
// install
npx skills add sarojkjha/aaj-marketing-skills --skill marketing-report// run it
node .agents/skills/marketing-report/resources/marketing-report.js --demo// worked example
Get the worked example for marketing-report
One email. The filled-in config, the output, and how to read it.
// sprint
Unit Economics & Retention Sprint — $3,500, 10 business days
This skill is one of the engines behind the Unit Economics & Retention Sprint — $3,500, ten business days.
LTV, CAC, payback and churn on your actual numbers — with a verdict, not a dashboard.
// human in the loop
Need a human in the loop?
AAJ builds the strategies, tools, and playbooks these skills are made of — with engagements for growth-stage and enterprise teams.
Skills