WhatsApp Business API pricing and message categories
Billing moved from per-conversation to per-message on 1 July 2025. How the four categories are enforced, and when a template actually incurs a charge.
· 7 min read
Why this is confusing even for businesses already using it
A dealership service desk sends the same service-reminder template to two hundred customers on a Tuesday and gets billed differently from what an older explanation of WhatsApp pricing would predict. That is not a mistake on the dealership's part — WhatsApp Business Platform pricing changed structurally on 1 July 2025, when Meta moved from conversation-based pricing to per-message pricing. Anything written or half-remembered from before that date describes a billing model that no longer applies.
Under the old model, one open conversation window — typically 24 hours — covered every message exchanged inside it for a single flat fee. Under the current model, Meta charges per delivered template message, not per conversation. Free-form replies sent inside an open customer service window still cost nothing; what changed is how the paid, template-based messages outside that window are billed. This distinction matters for anyone estimating what a broadcast or reminder sequence will cost, because the two models produce different totals for the same sending pattern.
The result is that pricing now tracks more closely with actual usage, but a business cannot apply one flat 'per conversation' number to every scenario anymore. Meta reserves the right to change rates with as little as one month's notice for a rate card update, three months for a new pricing tier, and six months for a change to the pricing model itself, so this article deliberately avoids printing a rupee figure that would likely be stale within a business cycle.
The four message categories, and why the category matters more than the content
Every template message on the WhatsApp Business Platform is billed according to one of four categories, and the category is what determines the rate — not how long the message is or how many variables it contains. Marketing covers anything promotional: a sale, a new arrival, an incentive to come back and buy. Utility covers transactional confirmations tied to something the customer already agreed to: an order confirmation, a delivery update, an appointment reminder. Authentication covers one-time passcodes and login verification, nothing else. Service messages are the free-form replies sent inside an open customer-service window, which are not templates at all and are billed differently.
The categorisation is not optional in practice — Meta reviews the actual content of the template against the category selected at submission, and a mismatch between what a template says and what category it claims gets caught, either at review or later through quality monitoring. A cosmetics seller who submits 'your order is confirmed, and here's 10% off your next one' as a utility template has embedded a marketing incentive inside a transactional message, and Meta's categorisation system is built to catch exactly this pattern. The consequence is not a polite correction; repeated miscategorisation risks escalating restrictions on the business's ability to send utility messages at all, which is a far larger cost than paying the marketing rate honestly in the first place.
Rates also vary by the recipient's country calling code, which is why the same weekend-package reminder template sent by a travel agency to a customer in India and a customer travelling abroad can carry two different costs despite being identical approved text. A business with any cross-border messaging — an edtech company recruiting international students, an export-focused b2b seller — needs to check Meta's published rate card for each relevant market rather than assume a single domestic rate applies everywhere.
What actually triggers a charge
A charge is triggered when Meta successfully delivers a template message to a recipient's device, not when the business clicks send. If a message fails to deliver — a wrong number, a device switched off long enough to bounce it, a number that's since deactivated its WhatsApp — no charge applies, because there is nothing to bill. This matters before assuming a broadcast's cost from its recipient count alone; the actual bill depends on how many of those recipients the message technically reached, which a delivery report shows after the fact.
Replies a business sends inside an open customer service window are not template messages and are not charged per the categories above — this is the free-form messaging that makes a live conversation with a customer cost nothing extra once they've written to the business first, or once a qualifying free entry point such as clicking a Click-to-WhatsApp ad has opened a window. A salon replying to a client's question about Saturday's availability, inside that open window, pays nothing for that specific reply, because it isn't a template send at all — it's a session message.
This is why the mechanics of the 24-hour customer service window matter as much as the pricing categories themselves: a business that keeps a conversation alive inside that window, replying with plain messages rather than templates, spends nothing extra on messages that would otherwise require a paid template outside it. Understanding when a window is open, and what closes it, is a cost-control skill as much as a compliance one, and it is worth its own separate reading.
Volume tiers and how they interact with billing
Separately from the pricing categories, Meta also runs volume-based tiers for utility and authentication messages, giving a business access to more attractive per-message rates as its genuine, sustained usage grows. This is different from the messaging-limit tiers that govern how many unique customers a business can message in a rolling period — one tier system is about the rate charged per message at higher usage, the other is about the ceiling on how many conversations a business is even allowed to initiate. Conflating the two is an easy mistake: a business celebrating that its messaging limit went up is not automatically getting a better price per message.
A marketing agency running WhatsApp campaigns for several retail clients, each on a different number, should expect each client's account to be evaluated separately for both kinds of tier, because Meta assesses usage per business portfolio, not by pooling every client's volume together under the agency's overall footprint. Checking each connected account's current status directly through Meta's own reporting, rather than assuming the agency's largest client's volume benefits the smallest one, avoids budgeting for a rate the smaller account hasn't actually reached.
Because both the rate card and the volume-tier thresholds are the kind of detail Meta revises with advance notice, the responsible way to plan a campaign budget is to pull the current rate directly from Meta's published pricing documentation at the time of planning, not from a partner's sales deck or a figure remembered from a previous quarter.
Building a realistic budget without guessing at numbers
The most reliable way for a kirana store or a small clinic to estimate a campaign's cost is to work backward from three inputs that are each individually verifiable: the number of recipients, the category of the template being sent, and the countries those recipients are in. Multiplying an assumed flat rate by a recipient count is the single most common source of a wildly wrong estimate, because it silently assumes every recipient is in the same country and every message is the same category, when a real customer list rarely is.
A practical habit is to check Meta's current published rate for the specific category and market before every large send, not just once when a campaign type is first set up. Rates for a given market-category pair can change with as little as a month's notice under Meta's own stated update policy, and a business relying on a rate it checked three campaigns ago is trusting a number that may already be stale. Building this check into the campaign-launch routine, rather than treating pricing as a fixed constant learned once, is the difference between a bill that matches expectations and one that doesn't.
For a business running its WhatsApp messaging through a platform like Wavy, a pre-send cost estimate calculated from the segment's actual recipient countries and the chosen template's category is the kind of guardrail that replaces this manual checking — but even then, the estimate is only as accurate as the underlying rate table it's built on, and no tool can promise a number Meta itself hasn't fixed yet for the send date in question.
What genuinely won't change even as rates do
A few mechanics are structural rather than pricing decisions, and they are safe to plan around regardless of what happens to specific rates. Charges apply to delivered template messages, not sent ones. The category a template is submitted under is what determines its billing treatment, and that category is enforced against the actual content, not just the label chosen at submission. Free-form replies inside an open window are billed differently from template sends outside one. These three facts have been stable through the shift from conversation-based to per-message pricing and are the load-bearing parts of the system worth understanding properly, rather than the specific numbers layered on top of them.
What a business owner should take away from all of this is less a set of figures to memorise and more a discipline: check the category before submitting a template, check the current published rate before committing to a send at any real volume, and never assume last quarter's number still holds. Meta's own pricing documentation, kept current at developers.facebook.com/docs/whatsapp/pricing, is the only source worth trusting for the actual rupee figure on the day a campaign goes out.
Common questions
Is WhatsApp Business API messaging still billed per conversation?
No. Meta replaced conversation-based pricing with per-message pricing on 1 July 2025. Businesses are now charged per delivered template message, with the rate depending on the message's category — marketing, utility, or authentication — and the recipient's country, rather than one flat fee covering an entire 24-hour conversation window regardless of how many template messages were sent inside it during that time.
Why did two identical broadcasts cost different amounts?
The most likely cause is that recipients were split across different countries, since Meta's rates vary by the recipient's country calling code as well as by template category. A second possibility is that one send fell partly within an already-open conversation window carrying over from before the pricing switch, which can apply a different rate to messages that opened before 1 July 2025 versus after.
Do free-form replies to customers cost anything?
A free-form reply sent inside an open customer service window (typically the 24 hours following the customer's last message, or a qualifying free entry point window) is not a template message and is not charged under the per-message categories. Charges apply specifically to template messages delivered outside that window, which is why keeping a conversation active inside the free window has real cost benefits.
Where can I find the actual current rate for my market?
Meta publishes and updates its rate card directly at developers.facebook.com/docs/whatsapp/pricing, broken down by market and message category. Because rates change with as little as a month's notice, this is the only source worth checking before committing to a large send — a rate quoted anywhere else, including this article, may already be out of date by the time it's read.