ROAS Analyzer
Enter spend and revenue by channel — get ROAS, CAC and contribution per channel, with a clear scale-vs-cut call on each.
01 · The opportunity
What it set out to solve
Founders look at ROAS per channel and still can't tell what to do. A 3× channel can be losing money and a 2× channel can be your best one — it depends on margin and CAC, which the ad dashboards never factor in.
02 · The approach
How I thought about it
I started from the real question — where should the next rupee of budget go? — and built the unit economics behind it: break-even ROAS from your margin, contribution per channel, and a scale/hold/cut call that accounts for both. Then a plain-English read that names the winner and the leak.
03 · What I built
- Editable channel table (add/remove rows) prefilled with Google, Meta, Email
- ROAS, CAC, AOV and contribution computed per channel
- Break-even ROAS derived from your gross-margin assumption
- Scale / Hold / Cut flags that account for margin, not just ROAS
- A plain-English verdict naming what to scale and what to fix
04 · The result
What changed
A working analyzer that turns a spend/revenue table into a budget decision in seconds — the kind of growth-finance screen I build live on a client's real channel data.
Find the budget leak.
Edit the spend and revenue by channel (or use the sample) and watch ROAS, CAC and contribution recompute — with a clear scale-vs-cut call and a plain-English read. Real math, in your browser.
Blended ROAS
2.86×
Total spend
₹4.70 L
Total revenue
₹13.45 L
Contribution
₹3.37 L
Channels
Break-even ROAS at 60.0% margin is 1.67× — below it a channel loses money.
| Channel | Spend ₹ | Revenue ₹ | Orders | ROAS | CAC | Contribution | Verdict | |
|---|---|---|---|---|---|---|---|---|
| 4.00× | ₹375 | ₹2.52 L | Scale | |||||
| 1.48× | ₹867 | ₹-29.0k | Cut | |||||
| 8.00× | ₹150 | ₹1.14 L | Scale |
The read
Blended ROAS is 2.86× and the mix throws off ₹3.37 L of contribution a month at 60.0% margin. Google Ads is your winner (4.00× ROAS, ₹2.52 L contribution) — push more budget here. Meta Ads is underwater at 1.48× — fix the funnel or cut it before scaling anything else.
Real math for the demo — ROAS, CAC and contribution from your inputs at the margin you set. A client build runs this live on your ad-platform and order data, with the narrative written by an LLM in your words.
05 · Decisions & trade-offs
The questions I'd get asked about this, and my answers
Why is break-even ROAS the anchor?
Because ROAS alone is meaningless without margin. At 60% gross margin you need ~1.67× just to break even on ad spend — so a channel doing 2× is barely contributing, while the same 2× at 80% margin is healthy. Anchoring on break-even is what turns a number into a decision.
Is the 'read' just a template?
The maths is real — ROAS, CAC and contribution are computed from your inputs at the margin you set. The read is rule-based on those results, so it's honest and explainable. In a client build the same logic runs on live ad-platform and order data with the narrative written by an LLM.