Pricing and choosingDeep dive

WhatsApp API pricing, and what you actually pay for

Per-message or per-account, what a WhatsApp API really costs at one number and at fifty, and the four line items most invoices hide.

wuapiPricing and choosing8 min read
Three steps of graduated pricing: $6 for the first number, $4.50 each from 2 to 50, $3.50 each from 51, plus proxy traffic per GB.$6NUMBER 1$4.502 TO 50$3.5051 AND UP+ 0.5 GB proxy per number, then $0.99/GB[PRICING AND CHOOSING]

The price list is the easiest page to read and the hardest one to compare, because two APIs that both say "from six dollars" can charge you in completely different units. One bills the message. One bills the conversation. One bills the number and nothing else. This post is about the units first, then the numbers, then the line items that do not appear in most price lists.

#Four units, and they are not interchangeable

Before any amount means anything, the unit has to be clear. There are four ways to charge for WhatsApp, and they move in different directions as you grow.

  • Per message. You pay for every message you send. Marketing campaigns cost more than receipts.
  • Per conversation. A conversation is a 24 hour window opened by a message, and it is recharged when a new window opens. Support is cheaper than marketing.
  • Per account. You pay a flat monthly price for each number connected to your project, whatever it sends.
  • Per user. Common on the official platform, where a conversation is billed against the customer's phone number.

The same volume can be four different bills. A support line that sends 4,000 messages a month from one number is cheap under per-account and expensive under per-message. A campaign that sends 400,000 messages across 50 numbers is the reverse.

The official Cloud API is the per-message case, and its rates are public. The Cloud API rate table has the rate for every country and category, including replies inside the 24 hour window, which are charged from October 1, 2026, with a calculator that puts the same month next to a per-account bill.

#What wuapi charges

wuapi bills per connected account, monthly. Messages are never billed, sent or received, in chats or in groups. The bands graduate, and each band keeps its own price.

the numberits monthly price
your first number$6
each number from the 2nd to the 50th$4.50
each number from the 51st on$3.50

Four numbers cost $19.50 a month, not the price of the next plan up. There is no plan to jump to, because the bands are already graduated.

import { tierRows, formatCents, monthlyAccountsCents } from "./pricing"

for (const count of [1, 4, 50, 51, 200]) {
  console.log(count, formatCents(monthlyAccountsCents(count)))
}
// 1 "$6" · 4 "$19.50" · 50 "$226.50" · 51 "$230" · 200 "$751.50"

The same code drives the calculator on the pricing page, so the number in this post and the number on the invoice come from one array.

#The line item most invoices hide

Every account reaches WhatsApp through a residential proxy. It is always on, which means it uses traffic whether or not you are sending. That traffic is the second thing you pay for, and it is the one a provider can mention last and still be telling the truth.

wuapi includes 0.5 GB of proxy traffic per account each month, pooled across the organization. Past that, the overage is $0.99 per GB. Text is light. Media moves a lot more.

Included per account
0.5 GB of proxy a month
Overage
$0.99 per GB, metered
Pooling
the allowance adds up across every account in the organization
Measurement
every byte is metered and shown, included or not

The practical way to size this: five accounts get 2.5 GB between them. A text-only support line will not reach it. An account sending images and documents all day will.

#The arithmetic, at four sizes

Numbers an agency or a platform actually runs, priced on the bands above.

connected numbersaccounts billproxy includedwhat a month costs
110.5 GB$6
442 GB$19.50
505025 GB$226.50
200200100 GB$751.50

At 200 numbers the average account costs about $3.76 a month, because the third band carries most of them. That is the shape of graduated pricing: the unit price falls as you grow, but never below the last band.

#What changes the bill

Four things move a bill, and only one of them is volume.

  • How many numbers are connected. The only line that scales with your customer count. Each account is billable from the first time it reaches ready.
  • Proxy traffic past the allowance. Media-heavy accounts cost more. The pool counts the highest number of billable accounts you had in the month.
  • Mid-month changes. Connect an account on the 20th and you pay only for the days left in the period. Remove one and the unused days come back as a credit.
  • What you send. Nothing. There is no per-message line, so a busy month does not cost more per message.

That last point is the one that changes how a team plans. If you are pricing a customer's usage, you are pricing numbers, not messages.

#The per-message model, and why it punishes support

It is worth spending a paragraph on the model you are probably comparing against, because the difference is not subtle once volume arrives.

A per-message price looks like a small number next to a per-account price. It is a fraction of one, because a message is a fraction of a number. The bill arrives a month later and is proportional to something you do not control: how much your customers write to you.

per messageper connected account
cost of a quiet monthnear zerofixed
cost of a viral weeklarge and suddenunchanged
a support line at 4,000 messages a monththousands of small line itemsone line
forecast difficultyneeds volume historyneeds an account count

The viral week is the part that bites. A product notification goes out at 8am, a thread forms, a thousand people reply, and the month closes with an invoice nobody budgeted. Per-account pricing makes that week free.

#Reading any price list

Four questions turn a price list into a cost model, and they take two minutes.

  1. What is the unit? Message, conversation, number or user.
  2. What is the rate at my volume, not at one? Most pages lead with the cheapest unit price, which is the one nobody gets.
  3. What is included? An allowance, a free plan, a support tier.
  4. What is the smallest thing I can be charged for? One number, one day, one message.

If a page answers all four, you can budget from it. If it answers one, you are looking at advertising.

#What a provider might quote much less

If a price looks far below $6 per number, there is usually a reason, and it is worth asking about before you sign.

  • It is not per number. It is per message, or per conversation, and a support line at scale costs more than the headline suggests.
  • The proxy is extra. Residential exit is a real cost. If it is not in the price, it is in an add-on, or the number connects from a datacenter address.
  • The limits are not documented. If a provider will not say what a number can send per minute, the limit is still there. It is just not written down.
  • The support tier is separate. Response times and uptime commitments are often sold apart from the usage, which is fair, but it should be visible when you compare.

The last one deserves a sentence of its own, because a cheap usage price with an expensive support tier is a perfectly reasonable commercial choice and a terrible surprise if it is hidden. Ask for the total including the support you actually need, at the number of accounts you will really have in six months.

#The number nobody prices: your own time

The line item that is hardest to see is the one you pay in engineering hours. Every provider's price is comparable on a spreadsheet, and none of them include the work you do to keep the thing running.

Three costs show up on any WhatsApp integration, whichever provider you choose:

  • The first integration. Reading a provider's conventions, learning its error codes, building the webhook handler. Budget a week.
  • Keeping up. Providers add fields, change defaults and rename things. Somebody has to read the changelog.
  • The 3am part. A number drops, a queue backs up, a customer notices. Somebody has to be woken up, or has to have made it self-healing first.

Self-hosting moves the third item onto your team permanently. A managed provider does not remove it, but it removes the parts where you are holding a WhatsApp session in memory and wondering why it dropped.

#Questions people ask

If a price looks far below $6 per number, there is usually a reason, and it is worth asking about before you sign.

  • It is not per number. It is per message, or per conversation, and a support line at scale costs more than the headline suggests.
  • The proxy is extra. Residential exit is a real cost. If it is not in the price, it is in an add-on, or the number connects from a datacenter address.
  • The limits are not documented. If a provider will not say what a number can send per minute, the limit is still there. It is just not written down.
  • The support tier is separate. Response times and uptime commitments are often sold apart from the usage, which is fair, but it should be visible when you compare.

#What a free plan is worth

Getting a real answer before paying for it is worth a lot, so a free tier that is genuinely usable is the most useful thing a provider can offer. On wuapi every organization starts on the Free plan, with no card: one number, 2,000 messages (sent and received together) and 0.5 GB of proxy a month. Sending, webhooks and the Inbox all work. At a limit the number pauses until the month ends, and upgrading lifts the limits the same day.

Nothing used on Free is billed, including proxy traffic in the month you upgrade.

#Where the money goes

Billed
Connected accountsOne monthly price per number, banded$6 → $4.50 → $3.50
Proxy overageOnly traffic past the pooled allowance$0.99 per GB
Never billed
Messages sentIn chats or in groups
Messages receivedInbound does not cost either
Separate
Support plansResponse targets and an uptime SLA
White labelRemoving the wuapi mark from invitations

What a monthly bill is made of

Read the left column first. Two things are billed, and the list of things that are not billed is longer than the list that are.

#Questions people ask

How much does the WhatsApp API cost per message?

On wuapi, nothing. You pay per connected account each month, and what that number sends or receives does not change the bill. Providers that bill per message charge a different amount for marketing than for a receipt, so the unit matters as much as the rate.

What is the cheapest way to send WhatsApp messages?

Per connected account, with the sending capped by the account's pace rather than by your bill. That is the model wuapi uses: $6 for the first number, $4.50 for each one after, and $3.50 from the 51st, with no per-message fee on top.

Is there a free WhatsApp API for testing?

Yes. The Free plan needs no card and includes one number, 2,000 messages and 0.5 GB of proxy traffic a month, with sending and webhooks working. At a limit the number pauses until the month ends; upgrade to lift the limits and connect more numbers.

Do you charge for incoming WhatsApp messages?

No. On a paid plan messages are never billed, sent or received. The only usage line that is not your account count is proxy traffic past the 0.5 GB each account includes, which matters for accounts that send a lot of media.

How is the proxy traffic included?

Every connected account includes 0.5 GB a month, pooled across the organization, so five accounts get 2.5 GB between them. Every byte is metered and shown. Only what goes past the pool is billed, at $0.99 per GB. Text is light; media is not.

#Where to go next

The pricing page has the calculator and the full question list. What a WhatsApp API costs in a month works through the numbers at four sizes, and choosing a WhatsApp API provider is about the questions to ask before you trust a price list.

wuapi is an independent service. It is not affiliated with, endorsed or sponsored by WhatsApp. WhatsApp is a trademark of its respective owner.

03/What to read next

Every post

Link a number and send your first message.

One REST call, a typed SDK, and webhooks signed with HMAC-SHA256 over the raw body. No per-message fees.

The whole API is in the docs, and the docs are in one file if you are handing the work to a coding agent.

All posts · openapi.json