All guides
Templates7 min readPublished

WhatsApp templates — how to get one approved first time

Most rejections happen for the same handful of simple reasons. This counts them off.

Why templates exist at all

On the Cloud API, any message you initiate — meaning the customer has not written to you in the last 24 hours — must be a template Meta approved beforehand. That is not bureaucracy; it is what stops WhatsApp turning into a spam market.

Inside the 24-hour window you are free to write whatever you like, with no template.

The category sets the price

When you create a template you choose its category, and that category is what Meta bills you by. The gap is large:

Utility
Tied to an existing transaction: order confirmation, shipping update, appointment reminder. The cheapest.
Authentication
One-time codes only. Roughly the same price as Utility.
Marketing
Anything promotional. The most expensive by a wide margin — around 18×.

If your template relates to a real transaction, categorise it Utility. Filing an order confirmation as Marketing multiplies your invoice for no benefit whatsoever.

Variables

Meta templates use positional variables: `{{1}}`, `{{2}}`. Order is what binds a value to a slot.

  • A template cannot start or end with a variable — there must be text around it.
  • Two variables cannot sit next to each other with nothing between them.
  • You must supply an example for each variable at creation time, and the example must be realistic.

The usual reasons for rejection

  • Promotional content in a template filed as Utility. Meta reads the content; it does not take the category on trust.
  • Variables at the very start or very end of the text.
  • Unrealistic examples like `{{1}} = xxx` — Meta rejects those.
  • Frequent spelling errors, or text that does not parse.
  • Exaggerated promises or medical claims.
  • Asking for sensitive data such as passwords or card details.

The practical steps

  • Write the template in Settings → Templates.
  • Pick the right category the first time — changing it later needs a fresh review.
  • Submit it to Meta and wait. Review is usually minutes to hours.
  • If it is rejected, read Meta’s stated reason — it is usually specific.
  • Run "Sync from Meta" so the status here matches the status there.