How to Get Your WhatsApp Message Template Approved by Meta
To send proactive WhatsApp messages to customers — broadcasts, order updates, appointment reminders — you need Meta-approved message templates. Meta reviews every template before it can be used, and rejections are more common than most businesses expect. This guide explains the process and exactly how to write templates that pass.
What are WhatsApp message templates?
WhatsApp message templates (also called HSMs — Highly Structured Messages) are pre-approved message formats that businesses use to send outbound messages to customers. Unlike a regular chat, you can't send arbitrary messages to a customer who hasn't messaged you recently — you must use an approved template.
Templates can include variable placeholders (like the customer's name or order number), buttons (call-to-action or quick reply), and media (images, documents). They cover categories like marketing, utility, authentication, and service.
The template approval process
- 1Write your template: Create your template in your WhatsApp Business API platform (e.g., Ceylo Labs). Specify the category, language, body text, and any buttons or media.
- 2Submit for review: Submit the template through the platform. Meta's automated review system checks it — most decisions come back within minutes, but some take up to 24 hours.
- 3Receive a decision: Meta will either approve the template (status: Approved) or reject it (status: Rejected) with a rejection reason code.
- 4Edit and resubmit if rejected: You can edit a rejected template and resubmit. Understanding the rejection reason is critical — the same template with a small wording change often passes the second time.
Most common rejection reasons — and how to fix them
✕ Promotional content in a non-marketing category
Fix: If your template promotes a product, discount, or sale, it must be in the Marketing category. Submitting promotional copy as Utility or Service will be rejected.
✕ Unclear variable usage
Fix: Variables like {{1}} must have an obvious, predictable value. “Hi {{1}}, your order {{2}} has been shipped” is fine. A template where the variable could be used for any purpose — “Click here: {{1}}” — will be rejected as potentially abusive.
✕ Missing opt-out language
Fix: Marketing templates must include an opt-out mechanism. Add a footer or button like “Reply STOP to unsubscribe” to every marketing template.
✕ Threatening or pressure language
Fix: Avoid urgency language that creates fear or undue pressure: “Act NOW or lose your account”, “This is your LAST chance”. Keep it informative and respectful.
✕ Vague or incomplete content
Fix: Meta needs to understand what the template will be used for. If the body is too generic or ambiguous, it will be rejected. Be specific about the context.
Tips for writing approvable templates
- ✓Be specific. State clearly what the message is about in the first line.
- ✓For marketing templates, always include an opt-out button or footer.
- ✓Use variables only for values that are clearly predictable (names, order numbers, dates, amounts).
- ✓Avoid ALL CAPS, excessive punctuation (!!!!), and emoji overuse.
- ✓Keep the body under 1,024 characters.
- ✓Test your template text with a sample variable substitution before submitting — sometimes the rendered version reveals issues.
- ✓When in doubt, choose a more specific category. Meta would rather approve a correctly categorised template than a vaguely categorised one.
Example: approved marketing template
Category: Marketing
Body:
Hi {{1}}, your exclusive 20% discount on {{2}} is valid until {{3}}. Use code {{4}} at checkout.
Footer:
Reply STOP to unsubscribe.
Button:
Shop Now → ceylolabs.com/shop
Send approved broadcasts with Ceylo Labs
Submit templates, get them approved, and send broadcasts — all from one dashboard.
Get Started Free