A self-directed concept case study built around Ritual's subscription vitamin business model — not real client work. After rebuilding paid media (case study 05) and email lifecycle (case study 06) for this concept brand, the next problem was reporting: three platforms, three different definitions of "revenue", and no single place to ask whether any of it was actually working.
With paid media running across Meta and Google (case study 05) and a lifecycle email programme live in Klaviyo (case study 06), each platform had its own dashboard, its own definition of "revenue", and its own idea of which channel deserved credit for a sale. Answering a simple question — "is the business healthier this month than last?" — meant manually pulling numbers from three places and reconciling them by hand. The brief: build one dashboard that consolidates all three sources into a small set of KPIs everyone agrees on.
Bring Meta Ads, Google Ads and Klaviyo data into one view, with a consistent revenue definition across all three.
Agree on a small set of metrics — blended CAC, revenue by channel, ROAS, email's share of revenue — that mean the same thing wherever they appear.
Replace a manual, multi-platform pull-and-reconcile process with a dashboard that's ready whenever someone asks "how are we doing?"
In this concept role as marketing analytics lead, I defined the standardised KPI set across paid media and email, modelled the underlying dataset that ties the three platforms together, and built the consolidated dashboard — demoed here with Chart.js, designed to translate directly into Looker Studio or Power BI.
The two pillars: bring the data together in one place, and agree on what the numbers actually mean before building any charts.
Modelled a unified dataset combining Meta Ads, Google Ads and Klaviyo performance data on a common monthly cadence — so blended CAC, channel revenue and email performance could all be viewed against the same timeline.
Settled on four core KPIs — blended CAC, revenue by channel, ROAS by channel, and email's share of revenue — with a single agreed definition for each, so the same number means the same thing whether it's viewed by the marketing, finance or leadership team.
Built a six-month modelled dataset combining blended CAC, revenue by channel (Paid Social, Paid Search, Organic/Direct, Email), ROAS by channel, and email's share of revenue — all on the same monthly timeline.
Agreed definitions for blended CAC (total spend ÷ new subscribers across all paid channels), revenue by channel, ROAS by channel, and email's share of total revenue — the metrics that show up throughout case studies 05 and 06.
Built the dashboard itself — demoed here with Chart.js, but designed as a Looker Studio / Power BI layout: a top-line CAC trend, a channel revenue breakdown, ROAS by channel, and the email revenue-share trend that ties case studies 05 and 06 together.
Replaced what would previously have been a manual end-of-month export from three platforms with a dashboard that's always current — turning a roughly one-day reporting task into a 15-minute review.
Built with Chart.js for this demo; designed to translate directly into a Looker Studio or Power BI layout.
These figures are illustrative for this concept project, modelled on what consolidating three platforms into one dashboard could plausibly achieve — not Ritual's real results.
Meta Ads, Google Ads, Klaviyo & the modelled subscriber dataset
Modelled reduction from a manual multi-platform pull
Blended CAC, channel revenue, ROAS, email revenue share
Modelled in case study 06, tracked here alongside paid channels
The hardest part of this project wasn't the dashboard itself — it was deciding what "revenue by channel" and "blended CAC" actually mean when three platforms each have their own attribution model. Getting that agreement first made the dashboard itself straightforward.
Seeing blended CAC fall (case study 05) at the same time as email's revenue share climbed (case study 06) made it possible to ask whether the two were related — a question that's invisible if you're only looking at Meta Ads Manager or Klaviyo in isolation.
Building this demo in Chart.js made it fast to iterate on which charts actually answered the brief's questions. The layout and KPI definitions are designed to carry over directly into a connected, auto-refreshing Looker Studio or Power BI dashboard for a real brand.
This dashboard combines paid media and email, but the subscriber segments from case study 04 (Founding Subscribers, Building the Habit, Tried It Once, Paused & Lapsed) aren't represented here yet. Adding segment-level revenue would complete the picture across all three concept projects.