Pricing
Pay for the messages you send, in advance
Per-message prices from $0.0003, a prepaid wallet and message packages for volume on your highest-priced channels. No monthly fee, no charge for inbound or failed messages, no contract.
Message packages
Buy messages in bulk
A package is a block of message credits at one price per message, whatever the channel. One credit sends one outbound message on any channel the package covers, so a package pays off on channels whose pay-as-you-go price is higher than the package price.
10k messages
$8
$0.0008 per message
For getting started and low-volume notifications.
- 10,000 outbound messages
- Valid for 3 months from purchase
- Valid on every channel type
100k messages
Featured$60
$0.0006 per message
Best value for growing products.
- 100,000 outbound messages
- Valid for 6 months from purchase
- Valid on every channel type
1m messages
$400
$0.0004 per message
High-volume messaging with a full year of validity.
- 1,000,000 outbound messages
- Valid for 12 months from purchase
- Valid on every channel type
Pay as you go
Per-message prices by channel
Charged from the wallet when no package credit applies. Prices are the gateway fee in US dollars and exclude what the channel provider charges you. Inbound, failed and test-mode messages are free.
| Channel | Per message | Per 1,000 messages |
|---|---|---|
| WhatsApp Business | $0.001 | $1.00 |
| Telegram | $0.0003 | $0.30 |
| SMS | $0.0005 | $0.50 |
| SMS OTP | $0.0005 | $0.50 |
| Messenger | $0.0005 | $0.50 |
| $0.0005 | $0.50 | |
| TikTok | $0.0005 | $0.50 |
Estimator
Compare both ways to pay
Enter a monthly volume and a channel. The estimator finds the cheapest mix of packages and wallet for that many messages.
Pay as you go
$100.00
100,000 × $0.001
Best package mix
$60.00
1 × 100k messages
Packages save $40.00 (40%) against the pay-as-you-go price for 100,000 WhatsApp Business messages.
At a steady 100,000 messages a month, one 1m package lasts about 10 months, which works out to $40 a month.
Estimate only. Unused credits stay available until the package expires. Fees charged by Meta, carriers or other providers are not included.
How billing works
Six rules, no surprises
Billing is decided when the API accepts a message, so the response to a send request already tells you what it cost.
- 01
Prepaid wallet
Top up in US dollars, from $10 to $10,000 per payment. There is no invoice at the end of the month and no way to overspend.
- 02
Charged on acceptance
A message is charged in the same step that accepts it. If neither a package nor the wallet can cover it, the API answers
402 insufficient_balanceand nothing is queued. - 03
Packages first
When a package applies to the channel, one credit is used instead of the wallet. With several packages, the one that expires earliest is used first.
- 04
Failed messages refunded
A message that ends as failed is refunded automatically: the credit goes back to its package if that has not expired, or the amount goes back to the wallet.
- 05
Free where it should be
Inbound messages, test-mode messages, webhook deliveries and the console are not charged.
- 06
Optional auto-recharge
Save a card during a top-up and choose a threshold and an amount. The wallet is recharged when it drops below the threshold, at most once per hour.
What counts as a billable message?
One outbound message accepted by POST /v1/messages, or one accepted item of a batch. A template, a media message and a plain text cost the same on a given channel. Inbound and test-mode messages are free.
Do packages expire?
Yes. Each package has a validity period that starts at purchase and is shown on its card above. Unused credits are removed when it ends. The package.expiring and package.exhausted webhook events tell you before that becomes a surprise.
Can I use a package and the wallet together?
Yes. Package credits are used first, earliest expiry first. When no applicable package has credits left, sending continues from the wallet at the pay-as-you-go price without any change on your side.
Is a package always cheaper than paying per message?
No. A package credit has one price on every channel, while pay-as-you-go prices differ by channel, so a package only pays off where its price per message is below the pay-as-you-go price.
- On WhatsApp Business, every package costs less per message than pay as you go.
- On SMS, SMS OTP, Messenger, Instagram and TikTok, only the 1m package costs less per message than pay as you go.
- On Telegram, pay as you go costs less than any package.
Credits are used before the wallet on every channel a package covers, so buy a package for the channels where it is the lower price. The estimator on this page compares both for your volume.
Are Meta, carrier or provider fees included?
No. You connect your own channels, so conversation fees from Meta and carrier or provider fees for SMS are billed to you by them. The prices on this page are the gateway fee only.
How do I pay?
By card through Stripe Checkout, from the billing page of the console. Suggested top-up amounts are $25, $100 and $500, and you can enter any amount between $10 and $10,000.
What do I get on signup?
100 free messages, granted as a bonus package that is valid for 30 days. No card is needed to create an account or to use test mode.
Do you offer custom pricing for higher volumes?
Per-account prices can be arranged for sustained high volume. Contact sales with your channels and expected monthly messages.
Send your first message in test mode today
Create an account, copy a test key and call the API before you connect a single channel. Every new account starts with 100 free messages.