The Last-Touch Trap
A brand's dashboard runs on last-touch attribution, and Paid Social barely registers — so growth wants to cut it. Check whether last-touch is hiding what Paid Social actually does, then make the call on the budget.
The brief
You have joined Meridian, a direct-to-consumer sleep brand, as a marketing analyst.
Your manager forwards a thread from the growth review:
"Our attribution dashboard runs on last touch, and Paid Social barely shows up — it gets credit for under 3% of paid signups, while Brand Search and Retargeting take most of it. Paid Social is one of our biggest line items. The plan is to cut its budget by 60% next quarter and move the money to the channels that are actually converting. Can someone give it a proper look before we sign off?"
Nobody has looked at these signups any way other than last touch. You have a quarter of touch-level and conversion data.
What you are asked to do: establish whether Paid Social is really as weak as the dashboard says, and give a straight answer on the budget cut.
All timestamps are UTC, and there is no other timezone to reconcile. Conversions run across Q2 2026 — 1 April to 30 June. Attribution uses a 30-day window: a touch can only take credit if it happened within 30 days before the conversion, and at or before it.
Three notes from the team, worth reading before you start:
A touch is one marketing interaction — an ad view, a click, an email open. A customer usually collects several, across different channels, before they pay.
The conversions export lists every subscription start on record, so a customer who resubscribed appears more than once. Treat each customer under their first conversion.
The touch log also holds customers who never paid. They belong in the data — just not in the conversion credit.
Treat this as any attribution review: decide which touch earns the credit before you trust a channel's number, and be ready to show how you got every figure you report.
What to submit
- 1Your five verified answers, entered on the submission form.
- 2A one-page recommendation in your repo README — whether Paid Social is really underperforming, how you know, and whether to cut it. One page, not five.
- 3The SQL, Python or R you used to get your five answers, in the same repo.
- 4Optional: a chart, a dashboard link, or a three-minute Loom. None of these are required and none of them earn marks on their own.
How it is scored
| Area | Weight |
|---|---|
Data accuracyauto-graded The five verified answers. Graded automatically against the dataset, so this half of your score is arithmetic, not opinion. | 40 |
Problem framingreviewed Did you question the last-touch dashboard rather than take its channel ranking at face value? Restating the brief scores low. | 15 |
Analysis and methodreviewed Did you compute first-touch as well as last-touch, apply the 30-day window, and dedupe resubscribes — and show how? Correct numbers with no visible method score low. | 20 |
Insight qualityreviewed Naming Paid Social is not the finding. Why last-touch and first-touch disagree — its role at the top of the funnel, feeding the closers — with evidence, is. | 15 |
Recommendationreviewed A clear answer on the budget cut, argued from your own numbers, plus how you would measure discovery channels instead. Hedging scores low. | 10 |
The data
Two files, about 5 MB total.
touches.csv — one row per marketing touch. Columns: customer_id, touch_ts, channel, campaign, device. A customer can appear many times, across channels and dates. device is web or mobile, written with inconsistent capitalisation; some campaign values are blank. Neither is a trap.
conversions.csv — one row per recorded subscription start. Columns: customer_id, converted_at, plan, amount_usd. A customer who resubscribed appears more than once — count each customer under their earliest converted_at.
Touches reach back to February 2026 (a touch can precede a Q2 conversion by up to about 55 days); conversions fall in April–June 2026. The data is synthetic, generated for this challenge, and contains the kind of mess real marketing tables contain. No customer in it is a real person.
Recognition
Free to enter — everyone is scored and ranked
Every entrant is graded against the same rubric, ranked on the public leaderboard, and gets written feedback on their analysis — no fee, no prize, just the credential.
- The full brief and dataset
- Your score on the verified answers
- Written feedback on your analysis
- Ranked on the public leaderboard
- A certificate and badges you can add to your CV
Rules
- Scoring follows the published rubric below: 40% verified answers, graded automatically, and 60% your recommendation, scored against the rubric
- Scoring is automated. The top 10 submissions and any disputed score are reviewed by a human before results are finalized
- Your repository must be public and its commit history must show the work happening before the deadline
- Work individually. You may use any tool, including AI assistants — but you must be able to explain every number you submit
- One submission per person. You can update it any time before the deadline
- Everyone who submits is ranked by name on the public leaderboard when results are published
- Your repo has to be public for us to read it — but do not promote your solution on LinkedIn, X or Discord until judging closes, so others can still attempt it
