Skip to content
Academy
Marketing Academy · Field Work●Analytics & Attribution
CoreAudit· 45 minutes

Auditing a Funnel Report That Never Touched the CRM

Casper Sleep

Objective: Given a marketing-sourced pipeline report built entirely from ad-platform last-click data with no CRM closed-won join, audit it against the lesson's common-mistakes checklist and rebuild a corrected top-line number.

You're the marketing ops analyst at Casper Sleep reviewing a channel performance report the paid team is about to present to the CFO, built entirely from platform-reported last-click conversions.

Find where the report violates the lesson's mistakes checklist, then rebuild the top-line revenue-by-channel number using the CRM export.

Before you start

What you'll need

Free path (everything below is enough to finish)

FreeCross-reference the platform export against the CRM export and draft the memo

Free, sufficient for joining two small CSV exports

FreeCheck DDA credit shares and the property's 30-day conversion volume

Free tier includes the Attribution model comparison report

The process

3 steps

Step 01 of 03

Ignoring view-through and offline touches

The lesson warns: if you do not feed CRM closed-won data back into the model, B2B attribution is fiction. Offline and phone-closed deals never show up in platform-reported conversions.

The paid team's report claims $2.1M in pipeline from Paid Social using platform-reported conversions. The CRM closed-won export shows a different number by source. Where's the gap?

Google Sheets— Cross-reference platform-export.csv (ad-platform-reported conversions) against crm-closed-won.csv (actual closed deals tagged by first-touch source).

Procedure

  1. Pull revenue-by-source from platform-export.csv ($2.1M Paid Social)
  2. Pull revenue-by-source from crm-closed-won.csv for the same period ($1.4M Paid Social, plus $410K tagged 'phone inquiry, source unknown')
  3. Identify the $700K gap and the unattributed phone-inquiry bucket as the two problems
Sample output
Platform-reported Paid Social pipeline: $2.1M
CRM closed-won, Paid Social first-touch: $1.4M
CRM closed-won, 'phone inquiry / unknown source': $410K
Gap: $700K platform-reported revenue with no matching CRM record

Healthy

The report is corrected to the CRM-verified $1.4M, with the $410K phone-inquiry bucket called out separately as an attribution blind spot to fix, not folded into Paid Social.

Unhealthy

Presenting the $2.1M platform number to the CFO unchanged, because it came straight out of the ad dashboard.

What this means

A platform's own conversion count is not the same as a closed-won deal; without the CRM join, the report is measuring clicks, not revenue.

So what do I do about it?

SymptomActionEffort
A channel report is built entirely from ad-platform conversion countsJoin against CRM closed-won data before presenting any revenue-by-channel number30 min
YouYou can do this yourself, no engineering access required.

Step 02 of 03

Treating DDA as ground truth

The lesson warns that DDA is a model trained on your leaky tracking data, not a measurement of reality, and needs volume (historically around 600 conversions and 400 non-converting paths in 30 days per property) to be reliable.

GA4's DDA report shows Email getting 22% credit this month, but the property only logged 140 total conversions in the last 30 days. Should that number be trusted for a budget decision?

Google Analytics 4— GA4 Advertising > Attribution > Model comparison, check the conversion volume note for the property.

Procedure

  1. Open the DDA model comparison report and note Email's 22% credit
  2. Check the property's total 30-day conversion volume (140)
  3. Compare against the ~600 conversion / ~400 non-converting-path volume DDA historically needs to be stable
  4. Flag the 22% figure as low-confidence rather than a decision input
Sample output
DDA credit, Email: 22%
Property 30-day conversions: 140 (below the ~600 volume DDA needs for stability)
Verdict: directionally interesting, not a budget-reallocation trigger on its own

Healthy

The 22% figure is reported alongside its low conversion volume, with a recommendation to revisit once volume grows or to corroborate with linear/last-click instead.

Unhealthy

Reallocating budget away from Email based on a DDA percentage from a property that hasn't logged enough conversions for the model to be stable.

What this means

DDA's output is only as trustworthy as its input volume; a black-box percentage from a low-volume property is a guess wearing a precise-looking number.

So what do I do about it?

SymptomActionEffort
A DDA credit percentage is being used to justify a budget cut on a low-conversion-volume propertyCheck the property's 30-day conversion volume against DDA's stability threshold before acting on the number5 min
YouYou can do this yourself, no engineering access required.

Step 03 of 03

Pair attribution with incrementality

The lesson's playbook says to pair attribution with incrementality: geo holdouts, ghost bids, and PSA tests tell you what would have happened anyway, attribution alone cannot.

After correcting the CRM gap and flagging the low-volume DDA number, what test should the memo recommend before Casper cuts the Email budget the report originally suggested?

Google Sheets— Draft the test recommendation in the same memo used for the CRM and DDA findings.

Procedure

  1. Identify Email as the channel with the most attribution uncertainty from steps 1 and 2
  2. Propose a geo holdout test: pause Email sends to a matched subset of regions for 4 weeks
  3. Compare CRM closed-won revenue in the holdout region against the control region to measure Email's true incremental effect
Sample output
Recommendation: 4-week geo holdout on Email in 3 matched low-volume regions, compare closed-won revenue vs 3 control regions before any budget cut.

Healthy

The memo recommends a holdout test instead of a budget decision based on the uncertain attribution numbers alone.

Unhealthy

Cutting Email budget immediately based on the corrected-but-still-model-based numbers, with no incrementality check.

What this means

Attribution tells you where credit was assigned; only a holdout or similar test tells you what would have happened without the channel.

So what do I do about it?

SymptomActionEffort
A budget cut is being proposed based on attribution model output aloneRecommend a geo holdout or similar incrementality test before the cut, not instead of ever testing ithalf day
YouYou can do this yourself, no engineering access required.

Final deliverable

A corrected one-page pipeline memo showing platform-reported vs CRM-verified revenue by channel, the DDA volume caveat, and one incrementality test recommendation.

See a reference example
Sample output
Allbirds, corrected channel view (excerpt)

Paid Social: platform-reported $1.8M -> CRM-verified $1.3M (-$500K gap, mostly assisted-not-closing traffic)
Email: DDA shows 19% credit on 155 monthly conversions, below stability threshold, flagged not actioned
Recommendation: 4-week geo holdout on Email before any budget change

Success criteria

You're done when you can:

  • Identifies the specific dollar gap between platform-reported and CRM-verified revenue
  • Flags the DDA percentage as low-confidence given the property's conversion volume, instead of accepting it at face value
  • Recommends an incrementality test rather than a budget decision based on attribution output alone