Where your WhatsApp money actually goes
Your monthly WhatsApp bill has two independent layers that often get blurred together. Layer one is what Meta charges: a per-conversation (now per-message, per category) fee for marketing, utility, authentication and service messages, billed in your WhatsApp Business Account currency. Layer two is what your BSP / aggregator charges on top: platform fees, per-message markup, channel/setup fees, and sometimes minimum monthly commitments.
The single biggest source of overspend is not knowing which layer a charge belongs to. When a vendor quotes "₹X per message" as one blended number, you usually cannot see how much is Meta pass-through and how much is their margin. The first job of a cost audit is to separate the two layers so every rupee is attributable.
The four Meta message categories (and why they cost differently)
Meta prices messages by category, not by length. Marketing messages (promotions, offers, re-engagement) are the most expensive. Utility messages (order updates, payment reminders, account notifications tied to an existing transaction) are cheaper. Authentication messages (OTPs) have their own rate. Service messages — your replies inside the 24-hour customer-care window — are free.
The audit win hiding here: businesses routinely send messages in the WRONG category. A shipping update written as a "marketing" template is billed at the marketing rate when it should qualify as utility. An OTP forced through a marketing template wastes money on every login. Re-categorising templates correctly is often the fastest, zero-risk saving on the whole bill.
The free 24-hour service window most senders waste
When a customer messages you, a 24-hour customer-care window opens. Inside it, your service replies are free — you can answer questions, send confirmations and resolve issues at zero conversation cost. The mistake is sending a paid template message to a contact who is already inside an open free window, when a normal session reply would have cost nothing.
A good audit measures your "window utilisation": of all the messages you send to recently-active contacts, how many ride the free window versus how many trigger a fresh paid conversation. Routing support and confirmations through the free window — and reserving paid templates for genuinely re-engaging cold contacts — is one of the highest-leverage changes you can make.
Platform fees and per-message markup — the silent tax
Many BSPs charge a monthly platform or seat fee, a one-time setup/onboarding fee, and a per-message markup over Meta's pass-through rate. Individually these look small; annualised across thousands of messages they are usually the largest controllable cost in the entire stack.
Run the numbers: a ₹0.20-0.40 markup per message on 50,000 messages a month is ₹10,000-₹20,000 every month in pure margin — before any platform or setup fee. The audit worksheet has you write down each of these fees explicitly so you can compare a pass-through model (you pay Meta directly, plus a small flat per-message fee) against a marked-up SaaS-pays model and see the real annual difference.
Failed sends, retries and duplicate-blast leakage
Cost leaks accumulate quietly. Templates that fail Meta quality review still consume effort and sometimes retries; broadcasts sent to invalid or opted-out numbers waste conversation initiations; the same campaign accidentally fired twice doubles the bill; and poorly segmented blasts pay marketing rates to send to people who will never convert, dragging quality ratings down (which then raises future cost).
The audit lists each leak as a checkable line item: failed-template rate, invalid-number rate, opt-out hygiene, duplicate-send incidents and segmentation discipline. You do not need exact figures to start — even rough percentages from your last three months expose where the money is escaping.