Mojtaba Peyrovi
Head of Data & Analytics · Berlin
Hands-on data and analytics leader with 10+ years of international experience building BI foundations, modern analytics stacks, and decision systems across product, marketing, finance, and commercial teams. Strong in SQL, Python, BigQuery, dbt, and cloud analytics — with a track record of translating business needs into scalable data products.
M
Growth Analytics Case Study
Marketing Performance Diagnostic
Client details withheld
Portfolio Sample · Full-Stack Analytics

The company spent €5.95M on growth. The data showed where the next million should go.

Topline growth looked healthy — but spend grew 71% while paid conversions grew only 32%. A deep dive into channel-level unit economics surfaced a €1.3M reallocation opportunity hiding in plain sight.

Sector: Consumer subscription
Geography: Berlin / DACH + FR + EN
Scale: 7-figure revenue
Marketing Spend
€5.95M
↗ +71% Jan→Dec run-rate
New Subscribers
503k
94% from DACH + FR
New Revenue
€6.10M
Invoice-date basis
Blended ROAS
1.03×
↘ CAC trending up
01 — Executive Summary

The three things that matter

If leadership reads only one thing, it’s this.
1
Paying for growth the business already had.
The dominant paid channel absorbs 62% of budget at €68.97 CAC and 0.52× ROAS — and CAC worsened from €60 to €90 across the year (+50%). Efficiency is collapsing while spend accelerates.
2
The two best channels are starved of budget.
Paid Search returns 3.80× ROAS at €9.71 CAC on just 1.3% of spend. Influencer partnerships convert trials at 29% — the highest of any paid channel — yet receive a fraction of the allocation.
3
One market is leaking; another is humming.
The core market returns 1.17× and trial-converts at 26%. A secondary market spends for 0.87× ROAS and trial-converts at just 17.6% — a structural funnel problem, not a media one.
02 — Key Pattern

Spend grew 71%. Conversions grew 32%.

Efficiency deteriorating — invisible on the topline.
Indexed growth (Jan = 100)
The efficiency gap
The number that matters
39pts
…by which spend growth has outpaced paid-conversion growth (Dec vs Jan, indexed).
Q4 CAC: €43.73 (+23% vs Q1)
Q4 ROAS: 0.99× (masked by mix)
Volume is up.
Quality of growth is down.
03 — The Anomaly

The dominant channel is inflating

CAC rose every quarter while spend accelerated.
What the data shows
+132%
Spend growth (Jan→Dec)
+50%
CAC inflation
0.52×
Full-year ROAS
62%
of paid budget concentrated here
HYPOTHESIS Audience saturation + attribution decay + creative fatigue from single-channel concentration. The business is paying more to reach the same person twice.
04 — Recommendations

The channel P&L

Every paid channel, with a scale / reduce / kill verdict.
05 — The Quality Signal

Trial-to-paid: the metric CAC misses

Which channels send users who actually convert after the trial.
What this reveals
Influencer sends the best users
29% trial-to-paid — 13pts above social ads and 7pts above the weakest market. Trust transfers.
Organic beats paid social
Direct, word-of-mouth, and PR all out-convert paid social channels on trial-to-paid.
One paid channel was the wrong audience
20.6% trial-to-paid + €70 CAC → the channel was paused mid-year. The data confirms it was the right call.
A market funnel is broken
17.6% — the lowest. Points to payment coverage, content depth, or paywall friction, not media spend.
06 — Segmentation

Three markets, three different stories

The same playbook produces very different results — that’s a signal.
Core market
Flagship
€33.41
CAC
1.17×
ROAS
26.0%
Trial→Paid
The engine. Best-in-class CAC, only market where ROAS exceeds 1.0×. Paid Search here returns 7.71× ROAS — an extremely strong, under-exploited signal.
Secondary market
Optimize
€48.04
CAC
0.85×
ROAS
27.5%
Trial→Paid
Highest intent (best trial-to-paid + ARPU) but expensive to reach — 44% higher CAC than the core market. Highest coupon usage too; pricing/promo strategy needs a review.
Emerging market
Fix Funnel
€43.37
CAC
0.87×
ROAS
17.6%
Trial→Paid
Trial-to-paid ~10pts below the others. This is a product/onboarding/payment problem, not a media one. Recommendation: don’t scale spend here until the funnel is fixed.
07 — Budget Hypothesis

The €1.3M reallocation

Same total spend, redistributed at observed channel CAC.

Proposed allocation

ChannelCurrentProposedΔ SpendΔ Conv.
Paid Social (dominant)€3.71M€2.40M−€1.31M−19,000
Influencer€1.70M€2.40M+€701k+18,750
Paid Search€75k€600k+€525k+54,070
Podcast partnerships€3k€250k+€247k+25k–49k
Underperforming social€447k€0−€447k−6,400
Test budget (new)—€298k+€298k+7,500
Net uplift (conservative)
+30k
to 55k
paid conversions on the same total spend
Implied rev. lift+€1.2M–2.2M
Blended CAC€38 → ~€28
Rollout90 days
Model assumes constant marginal CAC. Influencer capacity capped at +60% to reflect diminishing returns.
08 — How the Data Was Handled

Client data never left the box

Fully containerized, zero data egress

The entire analysis ran inside an isolated Docker container. The dataset was mounted read-only, every computation happened locally within that sandbox, and no client data ever crossed the container boundary — nothing was uploaded to third-party services, embedded into external tools, or persisted outside the ephemeral environment. When the container is destroyed, the data is gone. This is how sensitive commercial data should be handled: the analysis travels to the data, not the other way around.

Read-only data mount
No external API calls with raw data
Ephemeral environment
Anonymized outputs only
09 — Activation

From insight to a 90-day plan

Every recommendation with an owner and a success metric.
Weeks 1–2
Stop the bleeding
  • Cap dominant-channel spend at pre-inflation levels
  • Kill two channels burning budget for near-zero conversions
  • Confirm the mid-year channel pause is intentional
Owner
Performance Marketing Lead
Success: dominant-channel CAC stabilises
Weeks 3–6
Reallocate to winners
  • Increase Influencer budget +40% in the two strong markets
  • Scale Paid Search from 1.3% → 10% of paid budget
  • Pilot podcast partnerships, scale if ROAS holds
Owner
Channel Owners + Analyst
Success: blended CAC below €35
Weeks 7–12
Fix the weak funnel
  • Funnel deep-dive on the underperforming market
  • A/B test checkout, native payment methods, paywall copy
  • Geo-holdout incrementality test on top two channels
Owner
Analyst + Product Marketing
Success: trial-to-paid lifts above 22%