WhatsApp API guide

WhatsApp API pricing and what goes into the bill

WhatsApp API pricing depends on the model: Meta's official API charges per template message, with rates by category and country, while unofficial APIs usually charge per connected number. The subscription is only part of it; servers, development time and downtime cost money too.

By D-API engineering team5 min read

The two ways to charge

Almost every WhatsApp API quote falls into one of two models. Knowing which one you're buying explains why two quotes for the same project can look impossible to compare.

Per message (official API)

On the official API, Meta is the one charging for the message. The fee is per template message delivered and varies by category (marketing, utility, authentication) and by the recipient's country. The rate card belongs to Meta and changes from time to time, so any cost spreadsheet needs periodic review. On top of that, the provider that gives you access to the API charges its own fee, which may be flat, per number or by volume.

The practical effect is a cost that rises with usage. A campaign that worked and doubled your sends also doubles your Meta bill.

Per connection (unofficial API)

On the unofficial API, the number is connected by QR code, like WhatsApp Web, and there is no per-message fee from Meta. The provider charges for what actually costs it money: keeping each connection alive, with servers, network and monitoring. That's why the pricing unit is the connected number. The volume that number sends doesn't enter the invoice.

Pricing models compared

CriteriaPer message (official)Per connection (unofficial)Self-hosted open source
Billing unitTemplate delivered, plus provider feeConnected numberServers and your team's hours
PredictabilityLow, depends on volume and categoryHigh, depends on the number of connectionsMedium, with spikes when something breaks
Who keeps the connection upMeta and the providerThe providerYou
Cost of growing in volumeGrows with every sendNo change per messageMore machines and more maintenance
Cost of growing in numbersPer-number fee, depending on the providerOne more connection per numberMore instances to operate

The costs that don't show up in the quote

The subscription is the easy part to compare. The lines below rarely appear in a quote and, added up, often weigh more than it does.

  • Your own infrastructure. Running an open source solution means paying for servers, a database, a queue, media storage and, so all your numbers don't go out from the same address, proxies. Each item has its own invoice and someone has to configure it.
  • Development time. Integrating takes days; maintaining takes months. Updating the library when WhatsApp changes the protocol, investigating why a number stopped receiving, fixing the webhook that lost events. Those are hours from an expensive developer that aren't moving your product forward.
  • A number that's down. This is the most expensive cost and the least measured. A connection offline for an afternoon means reminders that didn't go out, customers without a reply and, if you sell software, a support ticket from your customer. Multiply by the number of affected customers when the problem is on a shared server.
  • Switching providers. If the integration is tied to a very specific payload format, moving later means rewriting code. It's worth asking from day one what leaving would look like.

How to estimate it for your case

A quick calculation that avoids surprises in month three:

  1. List how many numbers need to stay connected today and how many in a year.
  2. Separate what needs to be official (templates for people who haven't messaged you yet, compliance requirements) from what can be unofficial.
  3. For the official part, estimate templates per month and the category of each, using Meta's current rate card for each destination country.
  4. For the unofficial part, multiply the number of connections by the provider's price per connection.
  5. Add the integration hours and an honest estimate of monthly maintenance, at your team's hourly cost.
  6. Ask the provider what happens to the price when you double the number of connections.

Item 6 is often what separates similar quotes. If you sell software and add a number with every new customer, a per-connection price that drops with volume makes your margin better as your base grows, not worse.

How D-API charges

On D-API, billing is per connection, not per message, and the price per connection gets lower as you grow. The tier you reach applies to all your connections:

  • 1 to 9 connections: $15.00 per connection/month.
  • 10 connections: $9.90 per connection/month.
  • 11 to 50 connections: $8.75 per connection/month.
  • Over 50 connections: talk to sales.

Infrastructure is included: each connection runs isolated, with its own IP, and reconnection is handled by the platform. SaaS companies that come in through sales pay $9.90 per connection from the first one, with 14 days free. For everyone else there's a 3-day free trial, no credit card. Current prices are on the pricing page.

If you also need the official API, it uses the same integration. In the SaaS model, D-API charges a platform fee per connection and Meta's per-message charges go to the end customer, who owns the account. The details are in official WhatsApp API.

To compare both models beyond price, read official vs unofficial API. And if the idea is to pay nothing at all, it's worth understanding what actually exists in free WhatsApp API.

Frequently asked questions

Is the official WhatsApp API paid?
Yes. Meta charges per template message delivered, and the rate varies by message category (marketing, utility, authentication) and by the recipient's country. On top of that, the provider that gives you access to the API usually charges its own fee.
Why do unofficial APIs usually charge per number?
Because the provider's real cost is keeping each connection running: server, IP, monitoring and reconnection. Message volume barely moves that math, so pricing follows the number of active connections.
Do incoming messages cost anything?
Not in the per-connection model: sending and receiving are covered by the same connection price. On the official API, Meta's charges apply to template messages sent, and the rules on which conversations are billed are set and changed by Meta itself.
How do I estimate the monthly cost before signing up?
Count how many numbers will stay connected, not how many messages will go out. If the official API is part of the setup, also estimate how many templates per month and in which category. Then add your team's time to integrate and maintain it.
Where can I see D-API's prices?
On the pricing page. Billing is per connection, with no per-message fee, and the price per connection drops as the number of connections grows. Every plan starts with a 3-day free trial, no credit card.

Try D-API's WhatsApp API

3-day trial with full access. No credit card, no lock-in.