Owners often judge a WhatsApp campaign by how many replies came in on the day, which says little about whether it made money. With WappBlaster's itemised billing and per-template reports, the numbers needed for a real return figure already exist; the work is collecting them consistently and doing the arithmetic the same way every time. This article sets out that method, step by step, with one worked example.
The WhatsApp marketing ROI formula to keep on one page
ROI = (incremental gross margin − total campaign cost) ÷ total campaign cost
Two words in it do most of the work. Gross margin, not revenue, because a ₹2000 order on which you keep ₹500 is worth ₹500 to this calculation. Incremental, because some of the people you messaged would have bought anyway, and counting them flatters every campaign you run.
Marketing ROI numbers to gather before you press send
- Meta charges for the campaign's delivered templates, taken from the itemised invoice. Meta bills per delivered message, by category and recipient country, so a mixed India and UAE list has two rates.
- Platform share: the annual fee divided by the number of campaigns you expect to run in the year.
- Staff time: hours spent on copy, template approval, segmenting and answering replies, at a realistic hourly cost.
- Creative: any paid design, photography or video.
- Average gross margin per order, after the campaign discount.
- A holdout group: a random slice of the same segment that you deliberately do not message.
Counting sales inside the WhatsApp chat toward ROI
UTM parameters on call-to-action buttons catch website orders, but a lot of WhatsApp selling happens in the thread: a customer replies "is the blue one available in M?", an agent confirms, and payment arrives by UPI link. To catch those, tag every recipient with the campaign name at send time, and have agents mark the thread with a "won" tag or the CRM stage when the order closes. Then count conversions by tag, across both website and chat. Per-template campaign analytics give you delivered, read, replied and clicked counts per template, which sit next to the tag-based conversion count in your sheet.
Set an attribution window before you look at results, such as seven days from delivery, and keep it fixed across campaigns.
A worked WhatsApp ROI example (invented round numbers)
The figures below are made up for illustration, not benchmarks. Read your own from your invoice and order records.
| Line | Example value |
|---|---|
| Meta charges for delivered templates (from invoice) | ₹10000 |
| Platform share: annual fee ÷ 12 campaigns | ₹667 |
| Staff time: 4 hours × ₹500 | ₹2000 |
| Total campaign cost | ₹12667 |
| Orders from tagged recipients in 7 days | 60 |
| Orders the holdout rate suggests would have happened anyway | 20 |
| Incremental orders × ₹1000 margin each | ₹40000 |
ROI = (₹40000 − ₹12667) ÷ ₹12667 ≈ 2.16, or roughly 216%. Had the holdout been ignored, all 60 orders would have counted and the figure would read about 374%. The gap between those two numbers is the reason the holdout exists. The platform line comes from WappBlaster's flat ₹7999 annual fee ($200 for international accounts), while Meta's portion is passed through at cost as a separate invoice line, as set out on the WappBlaster pricing page.
Comparing WhatsApp marketing ROI fairly with email and SMS
The only benchmark worth using is your own: what the same offer, sent to a comparable segment, cost and returned on another channel. Run it with the same discount, the same attribution window and fully loaded costs on both sides. If SMS is counted at gateway cost only while WhatsApp carries staff time and platform fees, the comparison is rigged. A longer discussion of the channel trade-offs is in WhatsApp marketing versus SMS ROI.
Shortcuts that make WhatsApp ROI lie
- Using revenue instead of margin, which turns break-even campaigns into apparent winners.
- Leaving out the platform fee because it is "already paid".
- Changing the attribution window after seeing the results.
- Ignoring opt-outs. A campaign that returns well but loses a slice of your list has a cost the formula does not show; track the opted-out count beside the ROI.
- Judging a single send. Look at a quarter of campaigns before drawing conclusions.