Why your template was rejected, in one screen
Meta does not publish an industry-wide template rejection rate, but first-submission rejection is common enough that experienced teams plan for it as the default outcome rather than an exception. Nearly every rejection falls into one of four families: wrong category, broken format, promotional content, or a policy violation.
Last verified: August 2026 against Meta's template guidelines and Commerce Policy. Meta revises these rules regularly - re-check anything business-critical against the current policy before a large submission.
Meta's rejection notice tells you almost nothing. You get a status of REJECTED and a generic reason such as INVALID_FORMAT, ABUSIVE_CONTENT or TAG_CONTENT_MISMATCH, with no indication of which line caused it. That opacity is why teams resubmit the same message template four times with cosmetic edits and stay stuck.
Start by mapping the reason code you received to the family it belongs to:
| Reason shown | Family | Go to |
|---|---|---|
INVALID_FORMAT | Structural | Placeholders, sample values, punctuation - section 2 |
ABUSIVE_CONTENT | Content or policy | Tone, urgency, prohibited goods - sections 3 and 4 |
INCORRECT_CATEGORY / TAG_CONTENT_MISMATCH | Category | Utility vs marketing - section 1 |
SCAM / PROMOTIONAL | Policy | Section 4 |
No reason / stuck PENDING | Queue | Section 6 |
Work the family, not the symptom. A template rejected as INVALID_FORMAT will keep failing until the structural problem is fixed, no matter how you reword the copy. If a template send later fails at runtime rather than at review, that is a different problem with a different fix - see our WhatsApp API error codes reference for the 132xxx family that covers send-time template failures.
Family 1: Category mismatch - the single most common cause
Category is where most rejections originate, and it is also where most money leaks, because marketing templates cost materially more than utility templates and carry no volume discount at any scale.
Meta's test is simple and stricter than most teams assume: a utility template must relate to a specific transaction the customer has already entered into. Not a relationship. Not a past purchase in general. A specific, identifiable transaction.
| Message | Correct category | Why |
|---|---|---|
| "Your order #4821 has shipped" | Utility | Tied to a specific transaction |
| "Your appointment is tomorrow at 3pm" | Utility | Tied to a specific booking |
| "You left items in your cart" | Marketing | No transaction completed - this is re-engagement |
| "Your subscription renews in 3 days" | Utility | Tied to an active agreement |
| "We miss you! Here's 20% off" | Marketing | Promotional, no transaction |
| "Your ticket #99 has been resolved" | Utility | Tied to a specific support case |
| "Rate your recent experience" | Marketing | Surveys are usually classed as marketing |
1. One promotional sentence contaminates the whole template
This is the most expensive mistake in the entire guide. A genuine utility message with a marketing line appended gets recategorised as marketing, and you pay the higher rate on every send of that template forever.
Rejected as miscategorised:
Hi {{1}}, your order {{2}} has shipped and will arrive {{3}}.
By the way, everything in our winter sale is 30% off this week!Approved as utility:
Hi {{1}}, your order {{2}} has shipped and will arrive {{3}}.
Track it here: {{4}}If you need to promote the sale, send it as a separate marketing template to people who opted in for marketing. Do not smuggle it into a transactional send - you pay for the privilege on every single message.
2. Meta recategorises silently after approval
Approval is not permanent. Meta re-evaluates templates in use, and one that was approved as utility can be moved to marketing later, at which point your costs rise without anything in your system changing. This is not a rumour: Meta runs a recurring automated process that identifies miscategorised templates and publishes notice of the coming change on the first day of a month, with the recategorisation applying on the first day of the following month - so there is a short window to fix the copy before the higher rate lands, if you are watching for the notice. Check the category column in WhatsApp Manager monthly regardless. A support bill that grew for no apparent reason is very often a silent recategorisation.
3. Authentication templates have their own strict form
Authentication templates must contain only the verification code and standard security wording. Adding a greeting, a brand tagline or a support link gets them rejected or recategorised. Meta provides fixed authentication template formats - use them verbatim rather than writing your own.
The category test applied across industries
The transaction test in the table above is easy to state and surprisingly easy to misapply once you are inside a specific vertical, because "transaction" means something different in each one. A few worked examples, since the wrong call here is the single most expensive mistake in this guide:
| Industry | Utility (approved) | Marketing (gets rejected as utility) |
|---|---|---|
| Healthcare | "Your appointment with Dr. {{1}} is confirmed for {{2}}" | "Book your annual checkup today" |
| Ecommerce | "Order {{1}} has shipped, arriving {{2}}" | "Items in your cart are back in stock" |
| Real estate | "Your viewing at {{1}} is confirmed for {{2}}" | "New listings matching your search" |
| Education | "Your enrolment for {{1}} is confirmed" | "Enrol now for our spring intake" |
| Hospitality | "Your stay at {{1}} is confirmed for {{2}}" | "Weekend rates just dropped" |
| Restaurant | "Your table for {{1}} at {{2}} is booked" | "Try our new seasonal menu" |
| Automotive | "Your service appointment is confirmed for {{1}}" | "This month's trade-in offers" |
| Insurance | "Your claim {{1}} has been updated" | "Get a free coverage review" |
| Logistics | "Shipment {{1}} is out for delivery" | "Ship with us this peak season" |
| Legal | "Your consultation with {{1}} is confirmed" | "Free case review this week" |
| Mortgage | "Your application {{1}} has moved to underwriting" | "Rates just dropped, refinance now" |
| Government / public services | "Your permit application {{1}} has been received" | "New services now available in your area" |
Notice the pattern: the utility column always names a specific record - an order number, a case reference, a named appointment slot - that exists because the customer already did something. The marketing column is always an invitation to do something new. When you are drafting a template and cannot point to the specific record it relates to, it is marketing, whatever the copy sounds like.
Family 2: Format errors - mechanical, and mechanically fixable
Structural rejections are the easiest to fix once you know the rule, and the most frustrating because Meta never names the offending character.
4. Placeholders are not sequential
Variables must run {{1}}, {{2}}, {{3}} with no gaps. Deleting a middle variable during editing and leaving {{1}}, {{2}}, {{4}} is an automatic rejection. Renumber after every edit.
5. Sample values are missing
Every variable requires a realistic sample value at submission. Reviewers read the hydrated message, not the skeleton. Submitting {{1}} with a sample of test or xxx gives the reviewer no way to judge the message and gets rejected. Supply real-looking values: Sarah, #4821, 14 August.
6. Floating parameters
A variable cannot sit at the very start or the very end of the message body, and two variables cannot be adjacent. All of these are rejected:
{{1}}, your order is ready. <- starts with a variable
Your order ships on {{1}} <- ends with a variable
Hi {{1}} {{2}}, welcome! <- adjacent variablesThe fix is to anchor them in static text:
Hi {{1}}, your order is ready.
Your order ships on {{1}} - track it any time.
Hi {{1}}, welcome to {{2}}.The reasoning is that a template consisting mostly of variables can be turned into arbitrary content after approval, which defeats the review entirely.
7. Whitespace and newline violations
Templates cannot contain more than four consecutive spaces, and formatting that relies on stacked newlines to create visual layout will be rejected. Variables passed at send time must also be free of newlines and tabs, or you will pass review and then fail at runtime with error 132007 - covered in our WhatsApp API error codes reference.
8. Length limits
Body copy is capped at 1,024 characters, header text at 60, and footer text at 60. Buttons have their own tighter caps. Remember that the limit applies to the hydrated message: a body that fits with short samples can overflow in production when a real product name is 80 characters long. Leave headroom.
9. Emoji and special characters in the wrong place
Emoji are permitted in the body but not in variables, and not in authentication templates at all. Heavy emoji use also nudges the classifier towards marketing - two or three is fine, a decorated block reads as promotional.
10. Template name violations
Names must be lowercase, use only letters, numbers and underscores, and be unique within your account for that language. Order Update fails; order_update passes. Names are also permanent - you cannot rename a template, only create a new one, so adopt a convention such as order_shipped_v2 before you have fifty templates.
Family 3: Content and tone - where good marketers get rejected
These rejections frustrate experienced marketers because the copy is effective. WhatsApp is a personal messaging app, and Meta polices it accordingly: language that performs well in email reads as intrusive here.
11. Manufactured urgency
Phrases such as "Act now or lose access", "Last chance", "Only 2 left" and "Offer expires in 1 hour" are strong rejection triggers, particularly when stacked.
Rejected:
HURRY {{1}}! Your 50% discount EXPIRES IN 2 HOURS!!!
Click NOW before it's gone forever!!!Approved:
Hi {{1}}, your 50% discount is available until {{2}}.
View your offer: {{3}}The same information, without the pressure. Note what changed: capitals removed, exclamation marks removed, an actual date substituted for a countdown, and the false scarcity dropped.
12. Excessive capitals and punctuation
ALL CAPS words beyond an occasional single word, and repeated exclamation or question marks, both trip the classifier. One exclamation mark in a message is fine. Three is a rejection risk.
13. Vague or misleading claims
"Guaranteed results", "You've been selected", "Congratulations, you've won" and "Risk-free" read as scam patterns to an automated reviewer regardless of your intent. Legitimate prize notifications are among the hardest templates to get approved for exactly this reason - be specific about what was won, why, and what the recipient did to enter.
14. No clear sender identity
The recipient must be able to tell who is messaging them. A template that opens "Hi, your order is ready" with no business name anywhere is more likely to be rejected than one that says "Hi {{1}}, this is {{2}} - your order is ready". Include your business name, ideally in static text rather than a variable.
15. Content that belongs in a service message
If the message is a reply to something the customer just said, it does not need to be a template at all. Free-form service messages are permitted inside the 24-hour window. Teams sometimes submit templates for conversational replies and get rejected for content that would have been perfectly acceptable sent free-form. Note that since 1 October 2026 those service messages are billable - see our guide to the October 2026 service message billing change for what that costs.
Family 4: Policy violations - the ones no rewrite will fix
These are rejections of your business, not your copy. Rewording will not help.
16. Prohibited goods and services
WhatsApp's Commerce Policy bars a defined list of categories from being transacted or promoted, including alcohol, tobacco and vaping products, drugs including many supplements, weapons and ammunition, gambling and real-money gaming, adult content and dating services, live animals, medical and healthcare devices, body parts and fluids, unsafe or recalled products, and - a category that surprises a lot of fintech teams - payday loans, paycheck advances, peer-to-peer lending, debt collection and bail bonds. Multi-level marketing business models are also excluded outright, independent of what any individual template says.
Enforcement varies by jurisdiction and is not always intuitive - a licensed pharmacy in one market may operate normally while a supplements retailer in another is blocked. If your category appears anywhere on that list, resolve it before investing in WhatsApp as a channel.
17. Financial services claims
Loan offers, investment returns, credit repair and cryptocurrency face heightened scrutiny. Templates promising specific returns, guaranteed approval or debt elimination are rejected consistently. Regulated financial businesses can operate on WhatsApp, but templates must be conservative, factual and free of any performance promise.
18. Third-party brand references
Using another company's trademark, logo or name in a way that implies endorsement or affiliation gets rejected. "Official Nike reseller" requires you to actually be one, and Meta may ask you to prove it.
19. Collecting sensitive data in-message
Templates that ask for full card numbers, passwords, government ID numbers or health information are rejected. Direct the customer to a secure page instead. This applies to the template's request, not just what you store - asking is enough to fail.
The appeal process, and when it is worth using
You have two routes after a rejection: appeal the decision, or fix and resubmit. Choosing correctly saves days.
| Situation | Do this | Why |
|---|---|---|
| You can see the format error | Fix and resubmit | Faster than appeal; the automated check will pass |
| You believe the category call was wrong | Appeal | Category disputes are genuinely winnable on review |
| Content flagged but you think it is compliant | Appeal once, then rewrite | Human review overturns false positives; a second rejection means rewrite |
| Prohibited category | Neither | This is a business-model issue, not a copy issue |
How to appeal
In WhatsApp Manager, open the rejected template, select Request Review, choose an appeal reason, and submit. Appeals are reviewed manually and Meta typically responds within 24 to 48 hours.
Two things materially improve your odds. Appeal quickly - the review pathway is most responsive shortly after rejection. And state the business justification plainly: name the transaction the message relates to, name the opt-in mechanism, and say what the customer did to trigger it. "This is a delivery notification sent only to customers with an active order who opted in at checkout" is a far stronger appeal than "this template is compliant".
Do not resubmit the same template repeatedly
Submitting a near-identical template several times after rejection is itself a negative signal, and can affect your account quality rating. If two attempts fail, change the approach rather than the punctuation. Templates that keep failing on policy grounds are a symptom worth watching at the account level too - see our guide to WhatsApp Business account restrictions for how repeated violations escalate from a template problem into an account problem.
Category reviews are a separate, narrower request
If your only disagreement is the category - not the content, not a format error - Meta provides a dedicated category review path rather than a general appeal. You can request a category review on a template that was rejected under UTILITY or MARKETING, and also on a template that was approved as MARKETING if you believe it should have been UTILITY. That second case matters more than it sounds: a template that has been running for months at the marketing rate because of an early miscategorisation is worth a review request even though nothing is currently "broken" - the fix shows up as a lower bill, not a status change.
Templates stuck in PENDING
Most templates are reviewed within minutes. A template sitting in PENDING for more than 24 hours usually means one of three things.
- It was escalated to human review. Anything touching a sensitive category, or containing language the classifier is uncertain about, goes to a person. This can take a few days.
- Your account is under review. If several templates are pending simultaneously, the problem is the account rather than the templates. Check Account Quality in Business Manager.
- It was submitted during a policy transition. Review queues lengthen noticeably around major policy changes.
There is no way to expedite a review. Resubmitting creates a duplicate rather than a fresh position in the queue. Plan for it instead: submit templates at least a week before the campaign that depends on them, and never build a launch around a template submitted the day before.
Stop refreshing the dashboard - use a webhook instead
Template status changes fire a message_template_status_update event to your configured webhook, the same delivery mechanism that carries inbound messages and delivery receipts. Wiring this once means your system finds out the moment a template moves to APPROVED, REJECTED or PAUSED, rather than a person checking WhatsApp Manager manually before a campaign launch. For a team submitting more than a handful of templates a month, this is the difference between discovering a rejection the morning of a send and discovering it a week earlier with time to fix it.
The pre-submission checklist
Running this before submitting takes about two minutes and catches most of the mistakes covered above before they cost you a review cycle. Our free WhatsApp template checker automates the mechanical half of this list - placeholder sequencing, sample values, length and floating parameters - so you only need to eyeball category and tone by hand.
| Check | Pass condition |
|---|---|
| Category | Tied to a specific transaction = utility. Anything else = marketing. |
| Promotional contamination | Zero promotional sentences in a utility template |
| Placeholder sequence | 1, 2, 3 with no gaps after your final edit |
| Sample values | Realistic, not "test" or "xxx" |
| Floating parameters | No variable at start or end; none adjacent |
| Length with real data | Body under 1,024 chars using your longest realistic values |
| Tone | No ALL CAPS, max one exclamation mark, no countdown urgency |
| Sender identity | Business name visible in static text |
| Sensitive data | No request for card numbers, passwords, ID or health data |
| Naming | lowercase_with_underscores, versioned, unique |
| Timing | Submitted at least a week before the campaign needs it |
Two habits that compound
Keep a template library with approval status and category. Once you pass twenty templates, nobody remembers which variant was approved or which got recategorised. A simple sheet showing name, category, status, approval date and last category check prevents both duplicated work and silent cost increases.
Review category assignments monthly. Silent recategorisation from utility to marketing is one of the most common causes of an unexplained rise in WhatsApp spend, and the only way to catch it is to look. If you send transactional links inside templates - tracking pages, booking confirmations, payment receipts - our free WhatsApp link generator is a quick way to build the pre-filled wa.me or deep links those templates point to, without hand-assembling query strings each time.
A third habit, if you run this at any real volume
Treat the checker as a pre-commit gate, not a pre-submission afterthought. Teams that only run through this list once, right before clicking submit in WhatsApp Manager, still lose time to mistakes that a second reviewer would have caught earlier - a promotional line added during a late copy edit, a placeholder renumbered by one person and not propagated to the sample values by another. Building the checklist into whatever review step already exists before a template reaches WhatsApp Manager - a pull request, a marketing sign-off, a shared draft doc - catches the same errors days earlier, when fixing them costs a comment rather than a rejection and a resubmission cycle.
Get your templates right the first time
Template approval is a tax on operating WhatsApp directly, and it compounds: every campaign, every new flow and every seasonal variation goes back through the same review lottery. First-pass failure is not a reflection of anyone's copywriting - it is the cost of learning nineteen unwritten rules by trial and error, and WhatsApp is Conferbot's one Business-plan channel specifically because that overhead is real.
Conferbot's WhatsApp integration reduces how often that lottery matters. The platform manages window state and decides automatically whether a given message can go free-form or needs a template, so templates get used where they are genuinely required rather than everywhere by default. Flows are built once in a visual editor and deployed across Telegram, Instagram, Messenger, Slack and a website widget, which means the channels without an approval process can absorb the volume that does not need to be on WhatsApp at all - see omnichannel for how the same flow reaches every channel from one build.
Start free with Conferbot - the free plan includes 600 conversations a month and needs no credit card, so you can build and test the flow before committing to a template strategy.
Working through a rejection right now? Start with the category test in section 1 - it is the cause more often than the copy, and it is the one that also quietly determines what you pay. And if the rejection you are looking at is really an account-level problem in disguise, our guide to recovering a restricted WhatsApp Business account covers the escalation path.
Was this article helpful?
Build and deploy in 10 minutes. No coding needed.
WhatsApp Template Rejected? The 19 Reasons Meta Says No, and How to Get Approved FAQ
Everything you need to know about chatbots for whatsapp template rejected? the 19 reasons meta says no, and how to get approved.
About the Author
The Conferbot team writes about building, deploying, and improving AI chatbots.
View all articles