Everything before this page taught one piece at a time. The capstone joins them: starting from a synthetic weekly brand dataset, you will transform, fit, decompose, compute the client KPI family, build a due-to bridge, and finish with a single presentation slide - the same arc a real cell travels from EDA & ADS prep through Insights & Storyboarding, shrunk to a toy scale you can complete in one sitting. Target: under 2 hours end to end.
Two source rules govern the final step. The structural template is one page of a real UK HC deck (the Track 2.5 teaching pair - the presented decks in the deck-making capability folder). Those decks contain real client numbers, so they are reference exhibits only: you study the page's structure - what sits where, what gets a number, what gets a sentence - and you rebuild that structure with your synthetic outputs. No value from any real workbook or deck is ever lifted.
Step 1 - Load the synthetic brand (10 min). The dataset follows the Track 1.3 spec: one brand, one market, ~150 weekly rows. Columns: week, sales_volume, sales_value, price, promo_tdp_index, distribution_weighted, tv_grp, digital_impressions, search_spend, competitor_price (deliberately collinear with own price), cpi_index. All values fabricated by the generator; the media columns carry realistic burst patterns so the transforms have something to bite on. Run a quick EDA pass: plot sales against each driver, compute the media channels' ASSR, note the own-vs-competitor price correlation.
What good looks like: you can say, before any modelling, which channels are big enough to matter and which base variable correlations will anchor your expectations - the module 1.4 discipline.
Step 2 - Transform the media (20 min). Apply geometric adstock then Hill saturation (module 1.5) to the three media columns, using the alpha/beta values the exercise provides per channel (TV slow-decay, search fast-decay - the same intuition as the real per-platform grids). Plot raw vs adstocked vs saturated for one channel.
What good looks like: the adstocked series visibly carries tails after each burst; the saturated series visibly compresses the biggest bursts; and you can explain both distortions in one sentence each.
Step 3 - Fit the toy constrained model (25 min). Fit a linear model of sales_volume on the transformed media plus base drivers, with sign constraints (media non-negative; own price, competitor price effects per economic logic) and simple coefficient bounds standing in for the real bound-setting machinery. This is a deliberately small stand-in for the real pipeline - one model, not a hyperparameter grid; a bounded least-squares call, not the UCM/Kalman stack.
What good looks like: the fit passes the two stated gates from module 3.1 (adjusted R² ≥ 80%, MAPE ≤ 10% - the generator guarantees a clean fit is reachable), no coefficient sits pinned at a bound without you noticing it, and you check the residual plot even though nobody told you to.
Step 4 - Decompose to a contribution table (20 min). Multiply coefficients through their (transformed) drivers to get per-driver weekly contributions; aggregate to the year. Assemble the contribution table: driver, volume contribution, contribution % - the Contribution_L1-style output. If your platform split is part of the exercise variant, apply module 3.2's error-allocation factor so children re-sum to parents.
What good looks like: contributions plus intercept/seasonal/residual re-sum to actual sales exactly - the numbers-tie discipline. Every driver's contribution has the sign its bound demanded.
Step 5 - Compute the KPI table (15 min). From spends, impressions and incremental revenue: ROI, mROI (read as the local slope from a small response-curve sweep of your fitted model, per module 3.3), CPM, and Effectiveness per channel - the module 0.3 formulas.
What good looks like: the internal sanity relations hold: each saturating channel's mROI sits below its ROI; CPM values are mutually plausible; and you can state, per channel, the invest / hold / reduce call the mROI rule implies.
Step 6 - Build the due-to bridge (15 min). Split your ~150 weeks into two years. Recompute per-driver contributions per year, then the due-to %: change in each driver's contribution over year-1 total (the Pre-Read slide 10 arithmetic). Assemble the growth bridge: year-1 total, one bar per driver's due-to, year-2 total.
What good looks like: the due-to figures sum to the total growth %; you can name the single biggest growth driver; and you have checked it is not simply the biggest contributor (module 0.3's contribution-vs-due-to trap, now in your own numbers).
Step 7 - Make the slide (20 min). Open the designated UK HC reference deck page as a structural exhibit, then rebuild its pattern with your outputs: headline takeaway as a full sentence, the contribution or due-to visual as the centrepiece, the KPI table as support, one action-oriented callout. One slide, not a deck.
What good looks like: someone who has seen the real deck recognises the page pattern instantly, and someone who audits your numbers finds every figure traceable to steps 4-6. The slide tells ONE story; everything on it serves that story.
Step 8 - Self-review (10 min). Run the checklist below, honestly, before you show anyone. The deliverable is the slide plus your working notebook; there is no quiz - the slide is the assessment, reviewed against the model-answer notebook and template slide when the Phase 2 materials exist.
- Numbers tie. Contributions re-sum to actual sales; due-to figures sum to total growth; every number on the slide traces to the workbook with no manual "adjustments" en route. If a number on the slide cannot be reproduced from the notebook, the slide is wrong even if the number is right.
- One story per slide. The headline is a sentence with a verb, the visual proves it, the KPI table supports it, and anything that serves a different story has been cut - however proud of it you are.
- Contribution vs due-to used correctly. Share-of-volume claims cite the contribution table; growth claims cite the due-to bridge; and you have not let the biggest contributor masquerade as the growth driver.
- mROI rule applied. Every invest / hold / reduce statement is grounded in the marginal number, not the average - and if a channel has high ROI but mROI below 1, the slide says "strong but saturated", not "double down".
CURRICULUM.mdCapstone section and Track 1.3 synthetic-dataset spec (~150 weeks; sales, price, promo, distribution, tv_grp, digital_impressions, search_spend, competitor_price, cpi_index - all ranges fabricated)- Module dependencies: 1.5 (adstock + Hill), 3.1 (fit gates), 3.2 (error allocation), 0.3 / 1.8 (KPI formulas, contribution vs due-to per Pre-Read slides 8-10), 3.3 (mROI from response-curve sweep)
04. Deck Making - Capability\UK HC MMX\presented decks - structural reference exhibits only; they contain real client numbers and no value from them appears in this exercise or may appear in your deliverable- Phase 2 build status per
ONBOARDING_PLAN.md/CURRICULUM.md: notebooks and dataset generator not yet built - see the verify marker above (Program Lead)