Meta requires pre-approval for any WhatsApp message you send to a customer outside the 24-hour window that follows their last inbound message. That pre-approval lives at the template level — you draft a template, submit it to Meta, and once approved it can be used in campaigns and one-to-one replies. This page explains what templates are, how to write one, and what happens after you submit.

Categories and pricing
Every template is filed under one of Meta’s three categories. The category determines what the template is allowed to say and how Meta prices it:
| Category | Used for | Notes |
|---|---|---|
| Utility | Order confirmations, shipping updates, appointment reminders | Cheapest tier. Must be transactional — no marketing language. |
| Authentication | OTPs, login codes, password resets | Strictest tier. Body must read like a code-delivery message. |
| Marketing | Promos, newsletters, re-engagement | Most expensive tier. Meta inspects more aggressively. |
Misfiling a marketing message as utility is the most common rejection reason. If in doubt, file as marketing.
Variables
Templates support runtime substitution using {{1}}, {{2}}, {{3}}, in order of appearance. There’s a per-template ceiling on how many you can use (currently 10), and Meta requires a sample value for each one when you submit — that’s what their reviewers see, so make the sample look realistic (“Anna Smith” beats “test test”).
In a campaign, each variable maps to a contact field — {{1}} to first_name, {{2}} to order_id, whatever you choose at compose time.
Header, body, footer, buttons
The structure of a WhatsApp template:
- Header (optional) — short text, or one of: image, video, document, or location. Useful for an order screenshot or a hero banner.
- Body (required) — the main message. Variables live here.
- Footer (optional) — a short disclaimer line, no variables.
- Buttons (optional) — up to three quick-reply buttons or two call-to-action buttons (URL or phone). Quick replies become inbound messages back into the inbox when tapped.
Submission flow

The states a template goes through:
- Draft — saved locally, not yet sent to Meta. Editable.
- Submitted — handed to Meta for review.
- Approved — usable in campaigns and in the inbox.
- Rejected — Meta refused it. The rejection reason is shown on the row; common ones include “looks like marketing under utility” and “uses formatting Meta forbids”.
- Paused — Meta auto-pauses a template if its quality score drops (lots of recipients block or report it). Resubmit after fixing the underlying issue.
Approval usually arrives in a few minutes. Marketing templates can take up to 48 hours, especially right after a Meta policy change.
Where templates surface
In Creating a campaign, step 3 swaps the free-text composer for the template picker when the chosen channel is WhatsApp. In the Unified Inbox, the reply box switches to template-only when the customer’s 24-hour window has expired.