// 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.

ExecuteengineIntermediate
bash
$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

  1. Read the brand/product context first (.agents/product-marketing.md / .agents/aaj-brand.md) for model, motion, and goals, if present.
  2. 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, use skills/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:

  1. Results vs target and prior — lead with the one-number story (attainment, or new revenue vs plan/last period).
  2. Funnel — where it converts and where it leaks, stage by stage, each against its own trend.
  3. Efficiency — CAC, cost per lead, new-revenue-to-spend, pipeline-to-spend.
  4. What changed and why — the two or three moves behind the deltas.
  5. 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.

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.

No spam. Unsubscribe anytime.

// 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.

See what's included.

// 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.