← Blog

·

WhatsApp Business API volume discounts: how utility and authentication tiers work

Updated on October 29, 2026

The WhatsApp Business API only offers volume discounts on utility and authentication messages: the more charged messages you send to one country in a month, the lower the price of the messages above each threshold, down to 25% below the list rate. Volume is counted per market-category pair (for example, Brazil-utility), summed across every messaging account in the same business portfolio, and resets every month. Marketing and service messages get no volume discount.

This article explains the rules using Meta’s official pricing page and the “Volume tiers in BRL” rate card (effective October 1, 2026), with Brazil’s thresholds and math in Brazilian reais (BRL, R$).

First, the model: per-message pricing since July 2025

Since July 1, 2025, Meta charges per delivered message instead of per 24-hour conversation. Each business-to-user message has one category (marketing, utility, authentication, service or Meta Business Agent) and generates at most one charge. The price depends on the category and on the market, which is set by the recipient’s country code.

Volume tiers launched at the same time, also on July 1, 2025: you start the month at the full list rate and, as you cross each threshold, the following messages get cheaper.

For the full cost picture, see how much the WhatsApp API costs in Brazil. This article covers only how the discount works.

Which categories get volume discounts

CategoryVolume tiers?Notes
UtilityYesOrder, delivery and the customer’s own billing notices
AuthenticationYesOne-time passcodes (OTP)
Authentication-internationalYes, in markets where it existsDoes not apply to Brazil
MarketingNoFixed rate per the rate card on Cloud API
ServiceNoHas a free tier of 1,000 per number per month, not a discount
Meta Business AgentNoCharged per token

Marketing is where most people get confused: a business sending large campaigns pays R$ 0.3217 per delivered message to Brazil from the first send of the month to the last. The only marketing price variation Meta describes is the maximum price feature of the Marketing Messages API, which is not a volume discount. Learn more in how Meta categorizes your template.

Want to try it while you read? Create a Vectalk account and send your first message through the official API. Create free account →

How your tier is calculated

The pricing page sets four rules.

1. Per market and per category

Each combination of recipient country and category has its own count. Brazil-utility is one tier track; Brazil-authentication is another; Mexico-utility is another. Sending lots of utility messages to Brazil does not lower your authentication price in Brazil or your utility price in Argentina.

2. Summed across the whole business portfolio

Volume is aggregated at the business portfolio level (formerly Business Manager), across every messaging account the portfolio owns. If your company has three numbers in three messaging accounts under the same portfolio, utility messages to Brazil from all three go into the same count.

Meta gives an example with two partners: a business with messaging accounts at two different providers. Provider 1 sends the first messages of the month and takes the business into a discounted tier; when provider 2 starts sending, all of its messages are already billed at that tier’s lower rate. In other words, the tier belongs to the business, not to the provider. For how the WhatsApp account and the messaging account were split, see the new WABA structure.

3. Only charged messages count

Free messages don’t move you up a tier. Utility and authentication messages sent inside a free entry point window (conversations started from a Click-to-WhatsApp ad) are not counted.

This is where the October change matters: since October 1, 2026, utility templates sent inside the customer service window are charged. Since the rule is “only charged messages count”, those sends now also count toward your utility tier. Details in what changed for utility messages in October 2026.

4. Monthly, with the discount only above each threshold

The count resets every month at midnight on the 1st, in the messaging account’s time zone. And the discount is not retroactive: when you reach a tier, only the messages inside that tier get the lower rate. Earlier messages keep the rate they were billed at.

With messaging accounts in different time zones, one account may still be counting toward the previous month while another has already started the new one.

Brazil’s tiers (BRL, since October 1, 2026)

Figures from Meta’s official “Volume tiers in BRL” rate card, linked on the pricing page:

TierUtility: messages/monthAuthentication: messages/monthPrice per message (BRL)vs. list
List0 to 250,0000 to 500,0000.03500%
Tier 1250,001 to 2,000,000500,001 to 3,000,0000.0333−5%
Tier 22,000,001 to 17,000,0003,000,001 to 5,250,0000.0315−10%
Tier 317,000,001 to 35,000,0005,250,001 to 10,000,0000.0298−15%
Tier 435,000,001 to 70,000,00010,000,001 to 20,000,0000.0280−20%
Tier 5Over 70,000,000Over 20,000,0000.0263−25%

The per-tier prices are the same for both categories; only the thresholds differ. Utility gets its first discount sooner (at 250,000 messages); authentication only after 500,000.

Meta can change volume tiers with at least one month’s notice, and only on the first day of a quarter (January 1, April 1, July 1 or October 1). Check the current rate card before you lock in a budget.

Worked example with Brazil’s rates

An online store with a single portfolio sends, in one month, to Brazilian numbers:

  • 600,000 charged utility templates (order confirmation, invoice, tracking);
  • 800,000 charged authentication codes (app login);
  • 300,000 delivered marketing templates.
CategoryTiered calculationTotal with tiersTotal without tiersSavings
Utility250,000 × 0.0350 + 350,000 × 0.0333R$ 20,405.00R$ 21,000.00R$ 595.00
Authentication500,000 × 0.0350 + 300,000 × 0.0333R$ 27,490.00R$ 28,000.00R$ 510.00
Marketing300,000 × 0.3217R$ 96,510.00R$ 96,510.00R$ 0.00

Two things stand out. First, the effective discount is much smaller than tier 1’s 5%, because the first 250,000 (or 500,000) messages stay at list rate: on utility, the saving was 2.8%. Second, marketing, the largest line on the bill, gets no discount at all.

At higher volume the effect grows. For 3,000,000 utility messages in a month: 250,000 × 0.0350 + 1,750,000 × 0.0333 + 1,000,000 × 0.0315 = R$ 98,525.00, versus R$ 105,000.00 at full rate (a saving of R$ 6,475.00, or 6.2%).

These figures exclude taxes and provider fees. To simulate before you send, use the WhatsApp API pricing calculator.

Calculating it in code

A simple function to estimate one category’s monthly cost with marginal tiers:

# Brazil-utility tiers (BRL), effective October 1, 2026
UTILITY_TIERS = [
    (250_000, 0.0350),
    (2_000_000, 0.0333),
    (17_000_000, 0.0315),
    (35_000_000, 0.0298),
    (70_000_000, 0.0280),
    (None, 0.0263),
]

def tiered_cost(qty, tiers):
    total, start = 0.0, 0
    for limit, price in tiers:
        end = qty if limit is None else min(qty, limit)
        if end > start:
            total += (end - start) * price
        if limit is None or qty <= limit:
            break
        start = limit
    return round(total, 2)

print(tiered_cost(600_000, UTILITY_TIERS))  # 20405.0

qty is the portfolio’s charged total for the month, in that market and category. Meta has the final word on the amount and warns that insights data is approximate.

How to track which tier you’re in

Meta offers two ways:

  1. The pricing_analytics endpoint: shows tier progress during the month and the tier applied to delivered messages.
  2. The account_update webhook with event set to VOLUME_BASED_PRICING_TIER_UPDATE, sent since October 1, 2025 whenever a messaging account reaches a new tier in any market.

The webhook format, based on the documentation example (which uses India as the market):

{
  "field": "account_update",
  "value": {
    "event": "VOLUME_BASED_PRICING_TIER_UPDATE",
    "volume_tier_info": {
      "tier_update_time": 1743451903,
      "pricing_category": "UTILITY",
      "tier": "25000001:50000000",
      "effective_month": "2025-11",
      "region": "India"
    }
  }
}

tier holds the new tier’s bounds, pricing_category the category and region the market. If the same event arrives more than once, use the one with the smallest tier_update_time.

Practical ways to lower utility and authentication costs

  • Keep your numbers in the same portfolio. Messaging accounts spread across different portfolios don’t pool volume.
  • Keep notices as utility. A coupon inside an order confirmation pushes the template into marketing, which costs about nine times more in Brazil and has no tiers. Keep notices and promotions in separate templates.
  • Use authentication for OTP. See verification codes with an authentication template.
  • Compare countries separately if you serve customers outside Brazil: each market has its own rates and tiers. See WhatsApp API pricing by country.

How it works with Vectalk

Vectalk is a proxy for the official WhatsApp API (Meta’s Cloud API): you pay Vectalk, and Vectalk pays Meta. The model is simple: you pay the plan’s monthly fee and load a prepaid balance on the platform; Vectalk attaches its own credit line to your number, and each delivered message is deducted from your balance. You don’t need to add a card at Meta. Details in WhatsApp API payment methods and provider fee vs. Meta fee.

Questions about how messages show up in your balance and invoices can go to the Vectalk help center. To get started, create an account at apps.vectalk.com.br/register; the documentation is at docs.vectalk.com.br.

Frequently asked questions

Once I reach a tier, does it apply to the whole month?

Not retroactively. Only the messages inside each tier pay that tier’s rate. If you reached 300,000 utility messages to Brazil, the first 250,000 are billed at R$ 0.0350 and the next 50,000 at R$ 0.0333.

Do marketing messages get volume discounts?

No. On Cloud API, marketing has a fixed rate per the rate card regardless of volume. For Brazilian numbers, that’s R$ 0.3217 per delivered message.

I have several numbers. Is the tier per number?

No. The count is per business portfolio, across all its messaging accounts, split by market and category. What is per number is the free tier of 1,000 service messages a month, which is unrelated to volume tiers.

Do utility messages sent inside the 24-hour window count toward the tier?

Since October 1, 2026, yes: those messages are now charged, and every charged utility message counts. Messages sent inside a free entry point window are still free and don’t count.

When does the count reset?

At the start of each month, at midnight in the messaging account’s time zone.


Official sources consulted on October 29, 2026: Pricing on the WhatsApp Business Platform (Meta for Developers), including the sections on volume tiers for authentication and utility messages, tier webhooks and when Meta can update pricing, plus the “List rates in BRL” and “Volume tiers in BRL” rate cards (effective October 1, 2026) linked there; Platform pricing on the WhatsApp Business website.

Put your business on the official WhatsApp

Create your account, connect your number to the official API (you can keep the app with coexistence) and start serving customers and sending messages.