WhatsApp Message Templates: How to Get Approved and Never Get Rejected
You spend an hour crafting the perfect WhatsApp message template — clear language, a compelling offer, precise placeholder variables. You submit it for approval. Twenty-four hours later, Meta rejects it. No detailed explanation, just a rejection code and a link to policy documentation. Back to square one.
If this sounds familiar, you are not alone. According to data from messageblink.com, 47% of WhatsApp message templates are rejected on their first submission. Nearly half. For businesses that depend on WhatsApp for sales campaigns, order notifications, or customer service follow-ups, template rejections are not a minor inconvenience — they are a direct hit to revenue and operational efficiency.
This guide covers everything you need to know to write WhatsApp templates that pass review the first time: the three template categories, the most common rejection reasons, the formatting rules Meta actually enforces, and what to do when a rejection does occur. The final section walks through how to manage your approved template library at scale.
Why 47% of WhatsApp Templates Get Rejected on First Submission
The WhatsApp Business API uses message templates for all outbound conversations initiated by a business — not for replies to customers who messaged first, but for any proactive message a business sends. Before a template can be used, Meta must review and approve it. This review exists to prevent spam, protect user experience, and enforce WhatsApp's Messaging Policy.
The 47% rejection rate exists because most businesses approach template creation without understanding the review criteria. They write a message that sounds reasonable to them, submit it, and are surprised when Meta disagrees. The review process is not arbitrary — it follows a consistent logic once you understand the three template categories and the rules that govern each.
The Three Template Categories Explained
Every WhatsApp message template belongs to one of three categories. The category is not just a label — it determines which rules apply, what language is allowed, and what restrictions exist on content and timing.
Marketing templates cover any message that promotes a product, service, or offer. This includes promotional announcements, seasonal sales, product launches, re-engagement campaigns, and abandoned cart messages. Marketing templates have the most flexibility in language and content but require that users have opted in to receive promotional messages from your business. They also carry the highest risk of triggering user blocks if sent to disengaged audiences.
Utility templates cover transactional and service messages: order confirmations, shipping updates, appointment reminders, payment receipts, account notifications, and service alerts. These are messages the customer expects and has an active relationship with. Utility templates have strict content rules — they cannot contain promotional language, upsell offers, or calls-to-action unrelated to the transaction at hand.
Authentication templates are the most restricted category, covering one-time passwords (OTPs), login verification codes, and account security alerts. Meta provides a strict format that authentication templates must follow, with very limited customization allowed. Variables are restricted to the actual verification code.
Tip
The Top 5 Rejection Reasons (And How to Spot Them Before You Submit)
Understanding why templates get rejected is the fastest way to avoid rejections. Each rejection costs you time — up to 48 hours if your submission triggers a human review cycle — plus the delay compounds if your resubmission is also rejected.
1. Category Mismatch
Category mismatch is the single most common rejection reason. It happens when the content of a template does not match the category it was submitted under. The most prevalent form: a utility template that contains promotional language.
Example of a rejected "utility" template:
"Your order {{1}} has shipped! Track it here: {{2}}. While you wait, check out our summer sale — 20% off everything with code SUMMER20."
The shipping update is legitimate utility content. The "20% off" promotion makes this a marketing template. Mixing the two under "Utility" gets it rejected. The fix: either remove the promotional section and submit as Utility, or keep the promotion and submit as Marketing.
2. Placeholder Formatting Errors
WhatsApp variable placeholders must follow a specific format: double curly braces enclosing a sequential number, starting at 1. The format is {{1}}, {{2}}, {{3}}, and so on. Named variables like{{customer_name}} or {{order_id}} are not valid and will cause an automatic rejection.
Common placeholder mistakes:
- Using named variables:
{{name}}instead of{{1}} - Single curly braces:
{name}instead of{{1}} - Out-of-sequence numbering: using
{{1}}and{{3}}without{{2}} - Placeholder in a position not allowed for that component (e.g., header image URL with a variable)
3. Duplicate Templates
Meta will reject a template if the body content is substantially identical to an existing approved or pending template under your business account, even if the new template has a different name. This prevents businesses from accumulating near-identical templates that serve the same purpose.
The practical issue: if you get a template rejected and simply resubmit it with the same content and a new name, it will likely be rejected again for duplication. The fix is to meaningfully change the template content, not just rename it.
4. Banned Words and Prohibited Language
Certain categories of language are prohibited in WhatsApp templates regardless of category, and some language is only prohibited in Utility and Authentication templates (where it would be promotional).
Globally prohibited: content that violates WhatsApp's Commerce Policy (adult content, weapons, regulated goods), misleading claims, counterfeit goods promotion, and content that infringes intellectual property.
Prohibited in Utility templates: promotional language ("buy now," "limited time," "sale," "discount," "offer"), upsell content, and calls-to-action that are not directly related to the core utility of the message.
5. Missing Opt-In Documentation or Unclear Call-to-Action
For Marketing templates specifically, Meta expects that recipients have consented to receive promotional messages. While Meta does not verify your opt-in list during template review, templates that suggest they will be sent to purchased lists, scraped contacts, or non-consenting users can be rejected. Additionally, templates with vague or deceptive calls-to-action (e.g., "click here" with no description of where) may be flagged.
How Meta Reviews Your Templates: Machine vs. Human Review
Template review at Meta happens in two stages. Understanding which stage applies to your submission helps you set realistic expectations for approval timelines.
Machine review is the first pass. An automated system scans your template for obvious policy violations — prohibited words, formatting errors, and category mismatches that pattern-matching can detect. Machine review typically completes in minutes to a few hours. If your template is straightforward and follows the rules, this is often the only review step.
Human review is triggered when machine review cannot make a confident determination — when the content is borderline, when the template involves sensitive categories (healthcare, finance, political content), or when an account has a pattern of policy violations that flags it for closer scrutiny. Human review can take up to 48 hours.
Warning
Quality score also affects your account's phone number quality rating, which is visible in the WhatsApp Business Manager. Maintaining a high quality rating keeps your daily messaging limits from being reduced and prevents account suspension.
The Three Template Categories with Working Examples
The fastest way to write templates that pass review is to study examples that work. Each category has a different style, different restrictions, and a different standard for what "quality" means.
Marketing Templates
Marketing templates have the most flexibility. They can promote products, announce sales, send re-engagement messages, and include calls-to-action with URL buttons or quick reply options. The key constraint: recipients must have opted in to receive promotional messages.
Approved example — Seasonal promotion:
"Hi {{1}}, our summer collection just dropped! Use code {{2}} for 15% off your first order. Shop now: {{3}}"
Button: Shop Now (URL)
Approved example — Abandoned cart:
"You left something behind, {{1}}. Your cart with {{2}} is still waiting. Complete your purchase before it expires: {{3}}"
Approved example — Re-engagement:
"We miss you, {{1}}! It has been a while since your last order. Here is 10% off your next purchase: {{2}}. Valid until {{3}}."
Utility Templates
Utility templates must be strictly transactional. Every word should serve the purpose of informing the customer about a specific action or status related to a product or service they have already engaged with.
Approved example — Order confirmation:
"Order confirmed! Hi {{1}}, your order #{{2}} has been received. Expected delivery: {{3}}. Track your order: {{4}}"
Approved example — Appointment reminder:
"Reminder: You have an appointment at {{1}} on {{2}} at {{3}}. Reply CONFIRM to confirm or CANCEL to reschedule."
Rejected example — Utility with promotional content:
"Your appointment is confirmed for {{1}} at {{2}}. Don't forget — our premium membership gives you 20% off all services. Upgrade today!"
The upsell at the end makes this a marketing message. It would need to be submitted as Marketing and sent only to opted-in users.
Authentication Templates
Authentication templates are the most constrained. Meta provides a standard format: the template body must contain the OTP and follow specific structure. The content must not deviate from the expected verification message format.
Standard authentication format:
"{{1}} is your {{2}} verification code. For your security, do not share this code."
Where {{1}} is the OTP code and {{2}} is the name of your application or service. Authentication templates support an optional "Copy Code" button that copies the OTP to the user's clipboard.
Template Formatting Rules That Pass Every Time
Beyond category rules, WhatsApp enforces specific technical formatting constraints. Violating these causes automatic rejection regardless of your content quality.
Placeholder Syntax
Variables must use the format {{N}} where N is a number starting at 1 and incrementing sequentially. You cannot skip numbers — if you use {{1}} and {{3}}, you must also include {{2}} somewhere in the template. There is no maximum number of variables, but using more than 5-6 variables in a single template body is generally discouraged as it reduces readability and increases the risk of formatting errors at send time.
Character Limits
Each component of a template has a character limit:
- Header text: 60 characters maximum
- Body text: 1,024 characters maximum
- Footer text: 60 characters maximum
- Button text: 25 characters per button
- URL button URL: 2,000 characters maximum (including variable)
These limits apply to the template definition, not the final message after variable substitution. If your body text is at 900 characters before variables, and your variable values average 30 characters each, you may exceed the 1,024-character limit at send time. Build in a buffer.
Media Headers
Templates can include a media header: an image, video, or document. You can only choose one per template — not a combination. Image headers accept JPEG or PNG at a 1.91:1 aspect ratio (recommended 1200x628px). Video headers accept MP4. Document headers accept PDF.
A media header can either be static (the same file every time) or dynamic (a variable that accepts a different URL for each send). Dynamic media headers require the variable {{1}} to be specified in the header component, separate from body variables.
Button Types and Limits
Templates support three button types:
- Quick Reply buttons: Up to 3 per template. Static text labels that trigger a reply back to the business when tapped. Used for surveys, confirmations, or navigation menus.
- Call to Action — URL: Up to 2 per template. Opens a URL in the device browser. The URL can include a variable suffix (e.g.,
https://example.com/track/{{1}}). - Call to Action — Phone Number: Dials a phone number directly. Up to 1 per template. Number must be a valid E.164 format number.
Info
Language Codes
Each template is registered for a specific language. The language code must match the actual language of the template content. Common codes: en (English),en_US (English US), he (Hebrew), ar (Arabic),es (Spanish), pt_BR (Portuguese Brazil). If you need to send the same message in multiple languages, create a separate template for each language.
What to Do When Your Template Gets Rejected
A rejection is not the end of the road. Meta provides a rejection code with each decision, and understanding what each code means tells you exactly what to fix.
Read the Rejection Reason Carefully
Log in to WhatsApp Business Manager, navigate to Message Templates, and find the rejected template. Meta provides a reason code (e.g., "PROMOTIONAL_CONTENT_IN_UTILITY") and often a short explanation. Do not guess what the problem is — the code tells you directly.
Common Fixes by Rejection Type
PROMOTIONAL_CONTENT_IN_UTILITY: Remove or move all promotional language. Either strip it from the template entirely or change the category to Marketing.
INVALID_FORMAT: Check all placeholder variables. Verify they are numbered sequentially starting at 1, use double curly braces, and are not in unsupported positions.
DUPLICATE_TEMPLATE: You are resubmitting content that already exists. Make substantive changes to the template body — do not just rename it.
ABUSIVE_CONTENT: Your template contains language that violates WhatsApp's Commerce Policy. Review the policy and remove any prohibited content before resubmitting.
Resubmission Strategy
When resubmitting a rejected template, always use a new template name. WhatsApp's system can flag submissions that look like resubmissions of previously rejected content, even if the content itself has been corrected. A clean template name signals a fresh submission.
For borderline cases — where you believe your template was correctly classified and the rejection was a machine review error — you can appeal through the Meta Business Support portal. Appeals are routed to human reviewers and typically resolve in 24-48 hours. Use the appeal process sparingly and only when you have a clear policy argument, not as a routine resubmission path.
Template Best Practices for High Delivery Rates
Getting a template approved is the first hurdle. Ensuring it actually delivers and drives engagement is the second. Templates that send well share several characteristics.
Personalization at Scale
Templates that address recipients by name and reference specific details (order numbers, appointment times, product names) consistently outperform generic messages. Personalized messages have higher read rates and lower block rates. Use placeholders for every customer-specific detail: {{1}} for name, {{2}} for order number, {{3}} for the relevant date.
When using personalization variables, ensure your sending system always has a value for every variable. Sending a message with an empty placeholder — where a customer sees "Hi , your order..." instead of "Hi Sarah, your order..." — damages trust and may trigger reports.
Keep Marketing Templates Concise
Marketing templates perform best when they are direct and under 200 words in the body. WhatsApp is a conversational channel — users expect short, punchy messages, not email newsletters. Long marketing templates have lower read rates and higher skip rates. State the offer, the value, and the action in the fewest possible words.
Include an Opt-Out Option for Marketing Messages
While not technically required by WhatsApp policy for template approval, including an opt-out mechanism in your marketing templates — typically a "Reply STOP to unsubscribe" line or a quick reply button — serves two purposes: it satisfies GDPR and CAN-SPAM compliance requirements in most jurisdictions, and it allows disengaged users to self-remove rather than blocking your number, which would harm your quality score.
Tip
Test Before Broad Send
Before sending an approved marketing template to your full contact list, send it to a small test segment of 50-100 recipients. Monitor delivery rates, read rates, and — critically — the block rate. If a significant percentage of recipients block your number after receiving the template, that is a signal the message is unwanted or irrelevant to that audience. Address the segmentation problem before scaling up.
If your broadcasts are getting blocked even with an approved template, see our guide on why WhatsApp broadcasts fail and how to fix deliverability issues.
Timing and Frequency
Even a perfectly written marketing template will generate blocks if it arrives at 2am or if recipients have already received three messages from you this week. WhatsApp's quality system monitors block rates in real-time — a spike in blocks after a template send can temporarily restrict your messaging tier.
Best practice: send marketing templates during business hours in the recipient's time zone, and limit marketing messages to no more than 2-3 per week per contact. Utility messages (order confirmations, reminders) are less time-sensitive in terms of user tolerance but should still avoid sending between midnight and 7am.
Managing and Reusing Templates in Waiflow
For businesses running multiple WhatsApp campaigns across a team, managing an approved template library manually — through WhatsApp Business Manager alone — quickly becomes a bottleneck. Waiflow's template management system connects directly to the WhatsApp Business API to bring your full approved template library into a centralized, searchable interface your entire team can access.
Creating a Template in Waiflow
In Waiflow, navigate to Templates in the left sidebar. The template editor provides a structured form that maps directly to the WhatsApp Business API template format. Select your category (Marketing, Utility, or Authentication), choose your language, and build your template with the header, body, footer, and button components.
Waiflow validates your template in real-time before submission: it flags placeholder numbering gaps, alerts you when you approach character limits, and warns if body language patterns match common rejection reasons. This pre-submission check catches the formatting errors that account for a significant portion of the 47% rejection rate.
Using Templates in Campaigns
Approved templates in Waiflow are directly available in the campaign composer. When you create a new broadcast campaign using Waiflow's campaign features, you select a template from your approved library, define your contact segment, schedule the send time, and configure anti-spam timing between individual sends.
Waiflow's campaign system handles the per-recipient variable substitution automatically: if your template uses {{1}} for the customer name, you map that variable to the "First Name" field in your contact database. Every recipient receives a personalized message without any manual data entry.
Templates are also the foundation of effective WhatsApp drip campaigns. Each step in a Waiflow drip sequence uses an approved template, ensuring every automated follow-up message complies with WhatsApp policy from the moment it is sent.
Template Usage Tracking
In Waiflow's analytics dashboard, you can see performance data for each template used in campaigns: delivery rate, read rate, reply rate, and — for templates with URL buttons — click-through rate. Over time, this data identifies which templates perform best with which audience segments, enabling you to retire underperformers and replicate the structure of high-performers.
Performance data is broken down by campaign, so you can distinguish between a template that performs well with loyal customers and the same template that underperforms with cold re-engagement audiences. Segmentation and template selection compound: the right template sent to the wrong segment is as ineffective as the wrong template sent to the right segment.
Team Access to the Template Library
In a team environment, templates are a shared resource. Waiflow's role-based access control lets you define who can create and submit new templates for approval, who can use existing templates in campaigns, and who can view-only. This prevents team members from accidentally duplicating existing templates (which causes rejection) or submitting templates that have not been reviewed for policy compliance.
Managers can also build a library of pre-approved templates for common scenarios — appointment confirmations, payment reminders, product launch announcements — so that team members running campaigns simply select from a curated set rather than drafting new templates from scratch. This is particularly valuable for businesses with high campaign volume, where the overhead of template management would otherwise be disproportionate to the content effort.
Info
Key Takeaways
The 47% first-submission rejection rate is not a sign that WhatsApp template approval is arbitrary. It reflects a consistent set of rules that, once understood, makes the approval process predictable.
- Category selection is the most important decision. Match your content to the correct category — Marketing for promotions, Utility for transactions, Authentication for OTPs. When in doubt, submit as Marketing.
- Placeholder format must be exact. Use
{{1}},{{2}}sequentially. Named variables and single curly braces are automatic rejections. - Utility templates must be purely transactional. Any promotional language — even a single upsell line — reclassifies the message as Marketing.
- Character limits are hard constraints. Build in a buffer between template length and the 1,024-character body limit to account for variable values at send time.
- Resubmit with a new name. After fixing a rejected template, use a new template name for the resubmission to avoid duplicate-content flags.
- Protect your account quality score. High rejection rates and high block rates both reduce your daily messaging tier. Submit templates you are confident about and monitor block rates after each campaign send.
With a well-managed template library, clear category discipline, and proper variable formatting, template approval becomes a minor administrative step rather than a recurring obstacle. The businesses that scale WhatsApp marketing successfully are the ones that treat template management as a system — not an afterthought.