WhatsApp Message Templates: A Guide to Getting Them Approved

Every message you send outside the 24-hour window has to be a pre-approved template. Here's how the categories work, what the review actually checks, and how to fix the templates that keep getting rejected.

ChatSetu AI Team10 min read

Templates are the part of WhatsApp business messaging that catches everyone out. You write what feels like a perfectly ordinary message, submit it, and it comes back rejected with a one-word reason and no explanation. Then a nearly identical message from a competitor lands in your own phone that afternoon.

The review is less arbitrary than it looks. Most rejections come down to a handful of repeatable mistakes, and once you know what the reviewer is checking for, approvals become boring — which is exactly what you want.

Why templates exist at all

On the WhatsApp Business Platform you can reply freely to a customer for 24 hours after their last message. Outside that window, you cannot send free-form text at all. The only way to reach someone is a message template — a message whose structure and wording Meta reviewed and approved before you ever sent it.

The reason is straightforward: WhatsApp is a personal inbox, and pre-approval is how Meta stops businesses turning it into a marketing channel. If the mechanics of the platform are new to you, start with what the WhatsApp Business API actually is and come back.

Plan templates before campaigns. Review can take anywhere from a few minutes to around a day. Writing your campaign copy the morning it is due to go out is how launches slip. Submit early, submit variants, and keep approved templates on the shelf.

The three template categories

Every template belongs to one of three categories. The category you pick determines how hard the review is, what you are allowed to say, and what Meta charges when the message sends. Meta also reclassifies templates itself if it thinks you have chosen wrongly — so choosing accurately is in your interest either way.

CategoryWhat it's forReview scrutiny
UtilityMessages tied to something the customer already did: order confirmations, delivery updates, appointment reminders, payment receipts, account notices.Moderate. Reviewers check the content genuinely follows from an action rather than merely mentioning one.
AuthenticationOne-time passcodes and login verification, nothing else. In most markets these use a fixed structure you fill in rather than free copy.Narrow. Easy to pass if you use it for codes; instantly rejected if you slip anything promotional in.
MarketingEverything else: offers, launches, re-engagement, abandoned-cart nudges, event invitations, even a friendly "we're back in stock".Highest. Most rejections happen here, and Meta prices this category highest.

The boundary that causes the most trouble is utility versus marketing. A useful test: could you write this message without knowing anything the customer specifically did? If yes, it is marketing. "Your order #4417 has shipped" is utility. "Your order shipped — here's 10% off your next one" is marketing, because the promotional half is the point.

Meta's rates differ by category and by the recipient's country, and the model has been revised more than once. Check Meta's current published rates for the markets you send to rather than budgeting from a figure quoted in an article.

How a template is built

A template has up to four parts. Only the body is required, and the instinct to fill in all four is usually wrong — shorter templates pass more often and read better.

Header (optional)

A short line of text, or a single image, video or document. Text headers are capped at around 60 characters and can hold at most one variable. A header is not decoration — if it repeats the first line of your body, drop it.

Body (required)

The message itself, up to roughly 1,024 characters, with basic formatting available. This is where variables do their work and where almost all rejection decisions are made.

Footer (optional)

A short muted line, around 60 characters, with no variables allowed. Best used for the thing you would otherwise clutter the body with: "Reply STOP to opt out" or "No action needed."

Buttons (optional)

Two kinds, and you can mix them. Quick replies send a short text back to you when tapped — good for "Track order", "Confirm", "Not now". Call-to-action buttons open a URL or dial a phone number. URL buttons can take a variable on the end of a fixed base URL, so one template can deep-link every recipient to their own order.

For marketing templates, add an explicit opt-out button even where it is not strictly required. It costs a tap-width of space and protects the thing that matters most: your quality rating.

Variable rules that quietly fail you

Variables are numbered placeholders — {{1}}, {{2}} — filled in per recipient at send time. The numbering rules are where submissions quietly break.

  • Number them sequentially from 1, with no gaps. A body using {{1}} and {{3}} is rejected as malformed.
  • Never start or end the body with a variable. A message that opens with {{1}} gives the reviewer no idea what it will actually say.
  • Never place two variables next to each other. {{1}} {{2}} with only a space between them is treated the same way — unreviewable.
  • Supply realistic sample values. The review is done against your samples. "Name", "xxx" or "test" tells the reviewer nothing; "Priya" and "#4417" tell them exactly what the message becomes.
  • Keep variables short and predictable. A slot approved for a first name should not later carry an entire paragraph.

One more habit worth building: name templates in lowercase with underscores and a version suffix — order_shipped_v2. Names cannot be edited later, and you will end up with variants.

Why templates get rejected, and what to do

Meta returns a terse reason code. Here is what each usually means in practice.

ReasonWhat it usually meansThe fix
Invalid formatA structural rule was broken: variable numbering, a variable at the start or end of the body, missing samples, a length overrun, or a footer containing a placeholder.Fix the structure, not the wording. Re-read the variable rules above before resubmitting.
Incorrect categoryYou filed a promotional message as utility or authentication. Very common with "your order shipped, here's a discount" messages.Either resubmit as marketing, or split it into two templates — one genuinely transactional, one promotional.
Abusive or policy-violating contentA restricted product or industry, aggressive phrasing, or claims the reviewer reads as misleading.Check your industry against WhatsApp's commerce and business policies — some categories cannot be promoted at all.
Potential scam or spam signalsUrgency stacking, prize and cash-reward language, shortened or mismatched links, ALL-CAPS shouting, excessive emoji.Rewrite plainly, use your own domain in links, and remove anything that reads like a lottery win.
Unclear or generic contentUsually a body that is almost entirely variables, so the reviewer cannot tell what recipients will actually receive.Put real words around the placeholders so it reads as a message.
Duplicate templateYou already have an approved template with the same or nearly identical content.Reuse the existing one, or make the new variant meaningfully different.

A rejection is not a strike against your account the way a wave of blocks from real recipients is. Fix it and resubmit. Repeatedly resubmitting the same violating content, though, is a different matter.

A rejected template, rewritten

Here is a marketing template of a kind that gets rejected constantly.

{{1}} 🎉🎉 CONGRATULATIONS!!! You have been SELECTED for our MEGA SALE!!! Up to {{2}} OFF EVERYTHING — TODAY ONLY!!! Click now before it's gone 👉 bit.ly/xy4k2 {{3}}

Almost everything here is a problem:

  • The body starts with a variable and ends with one.
  • "You have been SELECTED" reads as a prize scam — the fastest way to fail review.
  • Shouting caps, stacked exclamation marks and piled-on emoji are all spam signals.
  • A shortened link hides the destination, so the reviewer cannot verify it.
  • There is no opt-out anywhere.

The same offer, rewritten to pass:

Header: Our monsoon sale is on

Body: Hi {{1}}, our monsoon sale has started — up to {{2}} off across the store until Sunday. Your saved items are included. Tap below to browse.

Footer: Reply STOP to unsubscribe

Buttons: "Shop the sale" (URL: yourdomain.com/sale) · "Unsubscribe" (quick reply)

Samples submitted with it: {{1}} = "Priya", {{2}} = "40%". The offer is identical. What changed is that a reviewer can now read the message, see what a recipient receives, verify where the link goes, and find the way out. It also performs better, because people are not suspicious of it.

What happens after approval: quality rating and limits

Approval is permission to send, not a guarantee of reach. Once messages start going out, two mechanisms decide how much you can keep sending.

Quality rating

Each of your numbers carries a quality rating — shown as high, medium or low — derived from how recipients react over a rolling recent period. Blocks and reports push it down; replies and engagement hold it up. Notably, it is driven by recipient behaviour, not by content review, so a perfectly approved template sent to people who did not want it will still damage you.

Messaging limits

New numbers start with a modest cap on how many unique customers you can message in a rolling 24 hours. Send consistently, keep quality high, and the tier increases in steps. Let quality slip and the tier can be reduced again.

Template pausing

Individual templates are scored too. One generating unusually negative feedback can be paused for a period, paused again for longer if it recurs, and eventually disabled. Watch per-template results, not just overall campaign numbers — a single badly targeted template can drag down the number all your other messaging depends on.

The habit that protects everything else: segment before you send. A relevant message to a small, opted-in audience costs you less in quality than the same message blasted at everyone on your list.

Frequently asked questions

How long does WhatsApp template approval take?

Often within minutes, and typically within a day. Treat the fast cases as a bonus rather than the plan — submit templates well ahead of the campaign that needs them.

Can I edit a template after it has been approved?

Limited edits are possible, and an edited template goes back for review. The template name cannot be changed, which is why a version suffix in the name saves pain later.

My template was rejected with no useful reason. What now?

Check the structural rules first — format errors are the most common and the easiest to miss. If the structure is clean, the issue is almost always category or tone: recategorise, strip urgency and prize language, and use a full link on your own domain.

Do I still need opt-in if my template is approved?

Yes. Approval says the content is acceptable; it says nothing about whether a given person agreed to hear from you. Opt-in is a separate requirement and it is enforced through recipient behaviour.

Can one template serve several campaigns?

If the variables carry the differences, yes — and it beats maintaining near-duplicates, which risk a duplicate-content rejection anyway.

Putting it into practice

Templates get easier once you treat them as an approval workflow rather than copywriting: choose the category honestly, keep the structure clean, write for a reviewer who knows nothing about your business, and watch what recipients do afterwards.

ChatSetu AI is built on the official WhatsApp Business Platform, with template management, audience segmentation and campaign sending in one place, on top of a shared team inbox and automation. If you are still setting up access, our page on the WhatsApp Business API covers what the platform involves, and how to get the WhatsApp Business API walks through the steps. When you're ready, talk to us and we'll get you onboarded at launch.

WhatsApp message templatesWhatsApp template approvalWhatsApp template categoriesWhatsApp marketing

Keep reading

Ready to run this on WhatsApp?

Tell us about your business and we'll get your number connected, or message us on WhatsApp and we'll help you set it up.