IAtechXSoftware and automation
Business

What the WhatsApp Cloud API Actually Costs Per Message

Billing moved to delivered messages in July 2025. Categories, Spanish and Portuguese rates, and the classification mistake that multiplies the bill.

NBNelson Barbosa
2026-09-196 min read
What the WhatsApp Cloud API Actually Costs Per Message

What changed in July 2025

For years the WhatsApp Business Platform billed by conversation: a 24-hour window opened and everything inside it was paid for. Anyone who designed automations then designed them for that logic. On 1 July 2025, Meta moved to billing per delivered message. Every marketing, utility or authentication template that reaches the recipient is charged according to its category, the recipient's market and accumulated monthly volume. The difference is not cosmetic. A flow that sent three templates inside the same window used to cost one conversation and now costs three messages. If you have automations built before that date and have never revisited their structure, you are probably paying more than you need to for a design that made sense under the old rules.

The three categories, and what really separates them

Marketing is anything that promotes: campaigns, announcements, abandoned carts, win-back messages to dormant customers. It is the most expensive category and the only one with no volume discount. Utility accompanies a transaction or a request the customer already made: order confirmation, shipping notice, appointment reminder, invoice issued. It is substantially cheaper than marketing. Authentication is strictly for verification codes. The border between marketing and utility is where money is won or lost, and it is not a matter of opinion: it depends on whether a prior customer action exists that the message answers. A reminder for an appointment the customer booked is utility. The same text sent to someone who booked nothing is marketing. An order confirmation that also suggests two related products stops being utility.

Spanish and Portuguese rates

The figures below are reference rates checked in September 2026. Mind the currencies: sources publish Spain in dollars and Portugal in euros, and Meta adjusts the lists periodically. Use them to size an order of magnitude, not to close a quote — confirm against the official table before committing numbers to a client. What stands out is the ratio inside each market. In Spain a marketing message costs roughly four and a half times a utility one. In Portugal the gap is wider still: close to three and a half times between marketing and utility, with authentication and utility sitting at almost the same level. This is why template classification is not paperwork. On an operation sending fifty thousand messages a month, misclassifying one recurring template is the difference between a bill in the hundreds and one in the thousands.

CategorySpain (USD)Portugal (EUR)
Marketing~0,0615~0,0490
Utility~0,0135~0,0142
Authentication~0,0298~0,0142
Reply inside the 24h windowGrátisGrátis
Volume discountUtilidade e autenticaçãoUtilidade e autenticação

The 24-hour window is still free, and that is what is left

When a customer writes first, a 24-hour service window opens. Replies inside it are not billed. It is the piece that survived the model change, and the one everything else should be designed around. The practical consequence for anyone building automations: every paid template you send should be designed to invite a reply. A utility message that ends in a useful question opens the window, and the conversation that follows — which is where the value is — costs nothing. The opposite pattern is the one we see most and the most expensive: four templates sent in sequence through the day, none inviting a reply, all billed. That was one conversation under the old model. Today it is four messages. One detail that gets missed: the window runs from the customer's last message, not their first. An active conversation keeps itself open.

The category mistake that multiplies the bill

Meta classifies templates at approval and reclassifies them later if the content does not match the declared category. A template submitted as utility that carries a promotional sentence becomes marketing, and costs the marketing rate on every send from the reclassification onwards. The typical case: an appointment confirmation that ends with a line promoting another service. The intention is good, the cost is not. If that template goes out ten thousand times a month, the promotional line costs the difference between the two rates, times ten thousand, every month. What we do when reviewing an account: list templates by send volume, check the assigned category rather than the submitted one, and split anything that mixes the two natures into two separate templates. One clean utility message, and one marketing message sent to a narrower list far less often. Worth checking periodically rather than only at build time, because reclassification happens without warning and the bill only reveals it the following month.

The country that counts is the recipient's

The rate follows the country code of the number receiving the message, not the head office of the company sending it. A Portuguese company messaging a German number pays the German rate. For anyone operating on both sides of the Iberian border this has two consequences. First, cost estimates have to be built per market rather than in aggregate: a contact base split between Spain and Portugal has two different rates running at once. Second, the volume tiers for utility and authentication are also per market and reset monthly. Splitting the same volume across two markets means reaching the tiers later in both than if it were concentrated in one. The effect is small on small operations and stops being small somewhere past a few tens of thousands of messages a month.

Estimating the bill before you start

The sum we run before proposing a WhatsApp project has four lines, and none of them needs the platform built. How many contacts will receive messages a month, split by market. How many paid messages per contact, counting templates only and not replies inside the window. What share of those is marketing and what share is utility, being honest about the border. And what share of recipients replies, because every reply turns the rest of that conversation into free traffic. An example with round numbers to show the mechanics rather than to be quoted: two thousand Portuguese contacts, one utility message each per month, comes in under thirty euros. The same two thousand contacts with a monthly marketing campaign lands near a hundred. Same operation, four times the cost, on category alone. If someone hands you a WhatsApp quote that does not separate categories and markets, that quote is guessing.

Number quality costs more than the rate

There is a cost that never appears in the pricing table and is larger than any category optimisation: losing the number. Meta assigns a quality rating to each sending number based on how recipients behave. Blocks and reports push it down. A low rating cuts the daily limit of unique recipients you can message; if it keeps falling, the number can be restricted. The arithmetic is brutal and easy to ignore. A marketing campaign that looks successful in absolute numbers — say, a reasonable reply rate — can still generate enough blocks to halve next month's sending capacity. You saved a few euros on rates and lost the channel. This is why we insist on two things before building anything. First, verifiable opt-in: knowing when, where and how each contact agreed to receive messages, with a record. It is not only a GDPR requirement; it is what separates a list that survives campaigns from one that burns the number. Second, an obvious way out in every marketing template. Someone who wants to leave and cannot find how will block instead — and a block costs far more than an unsubscribe. Our working rule is simple: if you cannot say on what day and through what route a contact consented, that contact does not go into a marketing campaign. At most it goes into a utility message tied to something they asked for themselves.

Frequently Asked Questions

Does replying to a customer cost money?

No, as long as the reply falls inside the 24-hour window the customer's message opened. Only marketing, utility and authentication templates are billed. The window runs from the customer's last message, so an active conversation stays open at no cost.

How do I know if a template is classified as marketing?

The assigned category shows in the account's template manager, and it may not be the one you submitted: Meta reclassifies when content does not match. Review your highest-volume templates periodically, because reclassification gives no warning and only shows up on next month's bill.

Is an appointment reminder marketing or utility?

It is utility if the customer booked the appointment: the message answers something they did. It stops being utility if it also promotes another service, or if it goes to someone who booked nothing. The border is a prior customer action, not the tone of the message.

Do volume discounts apply to marketing campaigns?

No. Volume tiers exist for utility and authentication, are calculated per market and reset monthly. Marketing is charged at the same rate on every delivery regardless of volume.

Do I need a BSP or can I connect to Meta directly?

The Cloud API allows a direct connection, in which case you pay Meta only the per-message rates. A BSP adds a per-message margin or a monthly fee in exchange for an interface, support and local invoicing. If you already have technical staff, connecting directly saves that layer; if you do not, a BSP usually pays for itself.

Related articles