learn-metric-decomposition-with-phoebe / Builder session 5 of 10
Learn Metric Decomposition with Phoebe · Builder track · Session 5 of 10

Marketing deep dive

Marketing-sourced revenue looks like one number on the CMO's slide, but underneath it is a chain of leaky buckets - impressions become clicks, clicks become leads, leads become wins, wins carry a deal size. Every stage is a rate you can move, and a percentage lost anywhere flows straight to the bottom of the funnel. Today you build that funnel as a live tree, knock a stage down, and read which bucket sprung the leak.

🟡 Builder track Analysts · PMs · founders · ops Live tree simulator + SQL 45 min
0-3 · Recap 3-20 · The marketing funnel 20-42 · Diagnose a funnel drop 42-45 · Q&A
Part 0

Where we are

You have the three patterns (b2), the leading-indicator and diagnosis playbook (b3), and one full domain - ecommerce GMV (b4). Now the domain deep-dives begin in earnest. Each of the next five sessions takes one industry's top-line metric, decomposes it into a live driver tree, and diagnoses a realistic drop. Session 5 is marketing, and marketing is the cleanest example of the pattern you already know best: the multiplicative chain. A funnel is just a driver tree stood on its end.

Live - presented in session Self-study - read after class ▶ Live tree - editable & runnable Framework sources covered
★ What you walk out with today A marketing-revenue funnel written as Impressions x CTR x Lead-rate x Win-rate x ACV, the reflex to read any conversion drop as the guilty stage on the coral path, and a clear head about the two top-lines marketing argues over - revenue (volume) versus ROAS (efficiency).
Part 1 · covers the multiplicative pattern, Lean Analytics funnel thinking

Marketing revenue is a funnel of rates 7 min live

Marketing-sourced revenue is not a lump you spend your way into. It is what falls out of the bottom of a funnel after a starting audience is filtered by one conversion rate after another. Write it as a product and the whole thing becomes legible: Revenue = Impressions x CTR x Lead-rate x Win-rate x ACV. Each stage is a leaky bucket - the fraction that survives to the next stage is the lever a team actually owns.

Impressions 2,000,000 Clicks 40,000 Leads 3,200 Wins 160 Revenue $192K x CTR 2% x Lead 8% x Win 5% x ACV $1,200 Each band is what survives the rate above it. 2,000,000 x 2% x 8% x 5% x $1,200 = $192,000.
🔍 Click to zoom - a funnel is a driver tree stood on its end, every stage a rate
LiveEvery stage is a leaky bucket3 min

The power of the funnel is that the conversion between stages, not the raw counts, is what you steer. You rarely control impressions directly - you control the rate at which impressions become clicks (creative and targeting), clicks become leads (landing page), leads become wins (sales), and the size of each win (packaging and price). Own a rate, own a stage.

  • Impressions - how many times the ad was served. Bought with budget, capped by audience.
  • CTR - click-through rate. Creative and targeting own it.
  • Lead-rate - landing-page or form conversion. Web and product own it.
  • Win-rate - lead to closed deal. Sales and comp own it.
  • ACV - average contract value. Packaging and pricing own it.
Real world

The same shape scales from a $9 coffee bag to a $90,000 SaaS contract. A DTC brand's funnel has more impressions and a tiny ACV; a B2B funnel has few impressions and a huge ACV. The stages rename, but the multiplication never changes - which is why once you can read one funnel you can read them all.

Self-studyWhy the product form makes the math honest2 min read

Because the funnel is a pure product, a percentage change in any single rate passes straight to revenue as the same percentage - the multiplicative pass-through from b2. Halve CTR and revenue halves, no matter how healthy every other stage is. That is what makes a funnel diagnosable in seconds: you never argue about the whole number, you find the one rate that moved and sum the percentage moves down the guilty path.

  • Absolute counts hide the story - "we lost 400 leads" means nothing until you know the rate that caused it.
  • Rates are comparable across time - a 2% CTR last month versus 1.4% this month is a clean, ownable signal.
  • Deeper stages warn earlier - impressions and CTR move this week; won revenue confirms it weeks later.
Part 2 · covers leading vs lagging, the two top-lines

Two top-lines: volume and efficiency 5 min live

Marketing is unusual because it has a long lag. Impressions and clicks move today, but the won revenue they seed can land weeks or months later through a slow sales cycle. So the top of the funnel is leading and the bottom is lagging - and the gap between them is exactly where a metric review either catches a problem early or misses it entirely.

LiveRevenue answers "how much", ROAS answers "how efficient"3 min

There are two legitimate top-lines and teams fight because they conflate them. Marketing revenue is the volume top-line - the bottom of the funnel. ROAS (return on ad spend = revenue / spend) is the efficiency top-line - the same revenue divided by what it cost. You can grow revenue while ROAS falls (you bought volume at a worse price), or shrink revenue while ROAS rises (you cut the wasteful spend). Name which one you mean before you celebrate or panic.

  • Revenue up, ROAS down - you scaled by spending into worse audiences. Fine if the payback still clears.
  • Revenue down, ROAS up - you trimmed the losing channels. Healthier than it looks on the volume slide.
  • Both down - a real leak in the funnel, not a budget choice. That is the case the tree diagnoses.
The lag trap Never judge a fresh campaign by its lagging revenue alone - the wins have not landed yet. Watch the leading stages (impressions, CTR, lead-rate) to know within days whether the funnel is filling, then confirm with revenue once the sales cycle catches up.
Part 3 · covers the diagnosis playbook, symptom to stage

The classic marketing drops 4 min live

Marketing drops repeat. Once you know the funnel, a falling number maps to a stage, and a stage maps to a cause and an owner. Here is the field guide - the symptom you see, the stage it points at, and the usual culprit behind it.

Symptom to stage to cause: the marketing field guide CTR falls Stage: Impressions to Clicks Cause: creative fatigue Lead-rate falls Stage: Clicks to Leads Cause: targeting or page Win-rate falls Stage: Leads to Wins Cause: sales or comp ACV falls Stage: Wins to Revenue Cause: discounting Each falling stage names its own cause and owner - CTR is creative, ACV is pricing.
🔍 Click to zoom - the symptom already tells you which team to call
LiveSymptom to stage to cause3 min
  • CTR falls - the ad is served but nobody clicks. Almost always creative fatigue (the audience has seen it too many times) or a targeting drift. Stage: Impressions to Clicks.
  • Lead-rate falls - clicks arrive but do not convert on the landing page. Usually targeting (wrong audience clicking) or a broken or slow page. Stage: Clicks to Leads.
  • Win-rate falls - leads pile up but sales cannot close them. Often a sales, comp, or pricing change, or lead quality quietly dropping. Stage: Leads to Wins.
  • ACV falls - deals close but smaller. Discounting, downmarket mix shift, or a packaging change. Stage: Wins to Revenue.
Attribution, honestly Which touch gets the credit for a win is its own hard problem. Last-touch over-credits the final ad; multi-touch spreads it. A funnel tree diagnoses where conversion leaked, not which channel deserves the win - for that, see learn-marketing-attribution-with-phoebe. Keep the two questions separate or you will argue in circles.
Demo 1 of 2

Diagnose a marketing-revenue drop ★ 12 min · everyone builds

Here is the funnel as a live tree. Read the baseline, then press Simulate a drop - one stage gets knocked down and the whole path from that leaf up to Revenue lights coral. Your job: name the leaked stage from the trail, and say the cause it points to.

{
  "unit": "$",
  "root": {
    "label": "Marketing revenue", "op": "x",
    "children": [
      { "label": "Impressions", "value": 2000000, "unit": "impr" },
      { "label": "CTR",         "value": 0.02,  "pct": true },
      { "label": "Lead-rate",   "value": 0.08,  "pct": true },
      { "label": "Win-rate",    "value": 0.05,  "pct": true },
      { "label": "ACV",         "value": 1200,  "unit": "$" }
    ]
  }
}

Read the baseline: 2,000,000 x 2% x 8% x 5% x $1,200 = about $192K of marketing-sourced revenue.

Press Simulate a drop. One rate falls. Follow the coral trail - which stage moved, and by what percent?

Translate the stage into a cause: CTR to creative fatigue, Lead-rate to targeting or page, Win-rate to sales or comp, ACV to discounting.

Say it out loud: "Revenue fell X% because [stage] fell Y%, which points at [cause]." Press Reset and repeat until it is automatic.

LiveChannel as a proxy for where the spend is working3 min

The store's orders carry a channel (web or app) - a rough stand-in for "which surface is converting". When the funnel points at a stage, the next question is always which slice. Run this to split completed revenue by channel.

SELECT o.channel,
       COUNT(DISTINCT o.order_id)                  AS orders,
       ROUND(SUM(oi.quantity * oi.unit_price), 0)  AS revenue
FROM orders o
JOIN order_items oi ON o.order_id = oi.order_id
WHERE o.status = 'completed'
GROUP BY o.channel
ORDER BY revenue DESC;
Demo 2 of 2

Your turn ★ 10 min · everyone builds

Three tasks. The first edits the tree, the second runs SQL, the third is a short thinking exercise to take home.

LiveQ1 · Halve CTR and read the impact3 min

In the tree above, edit CTR from 2% down to 1%. Watch Revenue and the delta chip. Because the funnel is a pure product, revenue should fall by almost exactly 50% - creative fatigue at the top of the funnel halves everything downstream, no matter how healthy the other four stages are. That is the pass-through, felt.

Halve CTR, halve revenue: one leaky stage caps the funnel ✓ Baseline CTR 2% 2M x 2% x 8% x 5% x $1,200 Every other stage unchanged Revenue = about $192K ✗ CTR falls to 1% 2M x 1% x 8% x 5% x $1,200 Every other stage unchanged Revenue = about $96K (-50%) No stage below can rescue $192K when the top bucket loses half its flow.
🔍 Click to zoom - creative fatigue at the top halves revenue no matter how healthy the rest is
The point A single leaky stage caps the whole funnel. There is no rescuing $192K by pushing harder on win-rate when the top bucket lost half its flow - you fix the leak where it is.
LiveQ2 · Channel performance on the store data4 min

Build a channel performance proxy: for each channel, how many distinct customers ordered, how many orders, and the average revenue per order. This is the closest the store data comes to "which surface converts best".

SELECT o.channel,
       COUNT(DISTINCT o.customer_id)               AS customers,
       COUNT(DISTINCT o.order_id)                  AS orders,
       ROUND(SUM(oi.quantity * oi.unit_price) * 1.0
             / COUNT(DISTINCT o.order_id), 2)      AS rev_per_order
FROM orders o
JOIN order_items oi ON o.order_id = oi.order_id
WHERE o.status = 'completed'
GROUP BY o.channel
ORDER BY customers DESC;
Self-studyQ3 · Two funnels, same revenue - which is healthier?take home

Imagine two campaigns that both produce exactly $192K. Funnel A leaks at the top: a weak CTR, but everyone who does click converts and closes cleanly. Funnel B leaks at the bottom: a strong CTR and lead-rate, but win-rate is poor and deals close small. Same bottom line, very different health.

Write a paragraph: which is healthier, and why? Consider that a top-of-funnel leak is often the cheapest to fix (new creative, better targeting) and that top-of-funnel volume compounds - a better CTR lifts every stage below it. A bottom-of-funnel leak means you are paying to attract interest you then fail to close, which burns spend and demoralises sales. Argue it either way, but ground it in where the leak is cheapest to fix and what compounds.

Homework

Try it yourself - this week ◐ 20-30 min total

Framework sources

Frameworks this session draws on

Marketing decomposition sits on funnel thinking that predates any single tool. This page draws on:

Lean Analytics (Croll & Yoskovitz) - the funnel as the model for a customer-acquisition businessPart 1 · impressions to revenue as a chain of rates
Amplitude North Star Playbook - leading inputs versus the lagging outputPart 2 · top of funnel leads, won revenue lags
Marketing attribution (last-touch vs multi-touch) - who gets credit for a winPart 3 · flagged and cross-linked to learn-marketing-attribution-with-phoebe
Check yourself

Three questions before you go 🎯 ◐ 90 seconds

1 · A marketing funnel written as Impressions x CTR x Lead-rate x Win-rate x ACV is which decomposition pattern?

A funnel is a pure product of rates. That is why halving any single rate halves revenue: the multiplicative pass-through carries a percentage change in one driver straight to the top line.

2 · The ad is served the usual number of times but revenue fell. CTR is the stage that dropped. The most likely cause is...

CTR is the Impressions-to-Clicks stage. When impressions hold but clicks fall, the ad is being served and ignored - the signature of creative fatigue or targeting drift, not a sales or pricing problem further down.

3 · Revenue is up 20% but ROAS is down. What happened?

Revenue is the volume top-line; ROAS (revenue / spend) is the efficiency top-line. Rising revenue with falling ROAS means you scaled into more expensive audiences - a legitimate choice if payback still clears, not necessarily a leak.

Builder session 5 cheat sheet · pin this

Marketing revenueImpressions x CTR x Lead-rate x Win-rate x ACV. A funnel is a driver tree stood on its end.
Leaky bucketsYou steer the rate between stages, not the raw counts. Own a rate, own a stage.
Pass-throughPure product: a % change in one rate is the same % change in revenue. Halve CTR, halve revenue.
Two top-linesRevenue = volume (bottom of funnel). ROAS = revenue / spend = efficiency. Name which you mean.
Leading vs laggingImpressions and CTR lead by days. Won revenue lags by weeks - long sales cycle. Steer by the top.
Symptom to stageCTR = creative fatigue · Lead-rate = targeting or page · Win-rate = sales or comp · ACV = discounting.
Attribution is separateThe tree finds where conversion leaked, not which channel gets credit. That is its own question.
Running skillBuild the funnel, break a stage, name the leak and its cause. Next: b6, branding.