Documentation
Sign inGet started

Marketing templates

Every WhatsApp template carries one of Meta's three categories: authentication, utility, or marketing. Marketing is the promotional one, and it is the only category Meta routes through a second API. Marketing sends go to Meta's Marketing Messages API and every other category goes to the Cloud API, over the same phone number.
The category also sets the price. A marketing template costs the marketing rate for the recipient's country whichever of the two APIs carries it. Rates are on the WhatsApp pricing page, and Cost and billing covers when each part of a send is charged.

What you need to send one

Our managed catalog holds authentication and utility templates only, so a marketing send always uses a template your workspace authored:
  1. Connect a WhatsApp Business Account of your own, since a template you author is registered on your account rather than ours. See Phone number setup.
  2. Author a template with the category marketing and submit it for review. Meta reviews the category alongside the content, and it recategorizes a template that is promotional in substance. Template guidelines covers what passes review.
  3. Send from a number on the account that holds the template. A template belongs to one WhatsApp Business Account, so a send that names a number on a different account is rejected before it reaches Meta.

Marketing Messages API on the business account

Open Numbers, pick a number, and open its business account to see what Meta reports about the account the number sends under. The Marketing Messages API row is that account's onboarding state:
ValueMeaning
EligibleMeta would accept an onboarding request for this account
OnboardedThe account is onboarded and its marketing sends are optimized
The row is absent until Meta has reported a value, and it reflects the account as of Last read from WhatsApp rather than this instant. We re-read each connected account from Meta roughly hourly.
Meta accepts the terms once for a whole business portfolio, so the panel carries a second, portfolio-wide state as well: not_started, request_sent, or term_of_service_signed. Meta gives both fields the same name and two different vocabularies. Read the account row for eligibility and the portfolio row for progress through the terms.
Onboarding happens at Meta rather than in the Bird dashboard. Someone with full control of the business portfolio accepts the Marketing Messages API terms in WhatsApp Manager, under Overview > Accept terms to get started. Meta's onboarding guide has the current steps.

Sending before the account is onboarded

An outstanding onboarding does not block your marketing sends. Every marketing send carries Meta's product_policy of CLOUD_API_FALLBACK, so an account that has not finished onboarding has its message carried over the Cloud API rather than refused. Delivery and price are unchanged.
What you lose until the account is onboarded is everything the Marketing Messages API adds on top of delivery. Per Meta's feature comparison, that is:
  • Delivery optimization. Meta weighs how likely a message is to be read and clicked when it applies a recipient's per-user marketing limit, so engaging templates get through more often.
  • Automatic creative optimizations. Meta applies image and text treatments, such as headline extraction and text reformatting, then keeps the variant with the highest click-through rate. Onboarded accounts have these enabled by default.
  • Animated GIF headers. A gif header is accepted on a marketing template and nowhere else, and only the Marketing Messages API delivers one. A gif template sent from an account that has not onboarded fails at WhatsApp, so treat onboarding as a prerequisite for authoring one.
  • Benchmarks and recommendations. Read and click rates for your template against comparable templates from other businesses in your region.
  • Click and conversion metrics in Meta's Ads Manager and Insights API surfaces.

The defaults a marketing send carries

Meta exposes several per-template and per-send controls on the Marketing Messages API. Every send takes the default for each of them:
  • Rate card pricing. Meta's optimization_spec caps what one delivery may cost. A send carries no such cap, so a marketing message prices at the published rate for the recipient's country. Meta plans to require a cap in eligible countries from Q2 2027.
  • Meta's retry window. A delivery time-to-live is registered on authentication templates only, so a marketing template keeps Meta's own validity period.
  • Every creative optimization on. Meta's creative_features_spec switches individual optimizations off. A template carries none, so each one runs at Meta's default of enabled.
  • No conversion or deep-link configuration. Template authoring and the send path carry neither Meta's conversion-measurement setup nor its Android deep links.
Which API carried a message is recorded either way. Meta reports a delivery it optimized with the pricing category marketing_lite, which prices at the marketing rate, the same rate the Cloud API path pays.

Where marketing messages are limited

Marketing is the most restricted category, and most of the limits belong to Meta rather than to us:
  • The United States. Meta has not delivered marketing template messages to recipients in the US since April 1, 2025, across every Business Messaging API. Sends fail with WhatsApp error 131049, reported as rate_limited. A US business phone number can still message recipients elsewhere.
  • Per-user limits. Meta caps how many marketing templates one person receives from any business in a period, starting with recipients least likely to engage. A send over that cap also fails with 131049.
  • Countries without optimization. In the European Economic Area, the United Kingdom, Japan, South Korea, Nigeria, and South Africa, Meta applies neither delivery optimization nor per-user limits, and it reports no click or conversion metrics.
  • Sanctioned regions. Businesses in Cuba, Iran, North Korea, Syria, Venezuela, and the sanctioned regions of Ukraine cannot onboard, and no Business Messaging API delivers to recipients there.

When a recipient stops marketing messages

WhatsApp gives every recipient an Offers and announcements control on your business profile. Choosing Not interested feeds Meta's per-user limits, and stopping delivery outright blocks your marketing templates while leaving utility and authentication messages untouched.
Meta accepts a send to a recipient who has stopped marketing messages and then declines to deliver it, reporting error 131050. The message reaches a failed status carrying that code, so a rising count of 131050 in the message log tells you about your list rather than about delivery.
Your workspace's WhatsApp suppression list holds the entries you make, by API or in the dashboard. A stop action a recipient takes inside WhatsApp lives at Meta and does not appear on that list, so treat repeated 131050 failures for one recipient as a reason to suppress them yourself.

Next steps