
WhatsApp Template Rejected? Split It in Two
Most WhatsApp templates that fail review are doing two jobs at once. Since April 2025 the promotional ones are not rejected: they pass as marketing.
A WhatsApp template rejected by Meta is usually failing one of two tests: a format rule (a variable at the start or end, two variables side by side, a body made only of variables) or a category test (the content does not match the category you picked). Format problems take a minute to fix. The category problem is the expensive one, and since 9 April 2025 it usually does not even show up as a rejection: a utility template that sounds promotional is simply approved as marketing, at about six times the price per message in Malaysia.
The position this post takes: the template to worry about is not the rejected one. It is the one that came back "approved" with the wrong label. And the fix is not cleverer wording. It is cutting the message in two.
Meta rejects a WhatsApp template for its format, its category or a policy problem, and review takes up to 24 hours. Format rules are mechanical: words around every variable, a sample for every variable, no more than 10 emojis. The category rule is the one that costs money, because a utility template must contain no promotion at all, so one line of offer turns a reminder of about RM0.06 into a marketing message of about RM0.35. Give the utility template one job, the one the customer asked for, and move the offer to the reply or to its own marketing template.
Why does Meta reject a WhatsApp template?
Meta rejects a template for one of three reasons: the format breaks a rule, the content does not match the category or language you chose, or the content breaks Meta's policies. Every rejection carries a reason code, and reading it is the first job before you change a word (Meta template status reference).
| Reason Meta gives | What it means | Typical SME cause | Fix |
|---|---|---|---|
| INVALID_FORMAT | A variable, sample or formatting rule is broken | Message starts with the customer name variable, or two variables sit together | Put words around every variable and add real samples |
| INCORRECT_CATEGORY or TAG_CONTENT_MISMATCH | The content, or the language, does not match what you selected | Malay text submitted with English selected | Match the language and category to the content |
| PROMOTIONAL, ABUSIVE_CONTENT or SCAM | The content breaks Meta policy | Lucky draw wording, a threatening payment chase, a request for an IC copy | Rewrite the message or take that part out of the template |
The format list is short and fixed. Meta's own review page names missing or mismatched curly braces, special characters such as #, $ or % inside a variable, numbering that skips, too many variables for the length of the message, and a variable at the very start or end. Every variable also needs a sample value, and a template with the same body and footer wording as one you already have is rejected as a duplicate (Meta template review). Twilio, a WhatsApp Business Solution Provider, adds the rest of the usual list: a language that does not match the text, more than 10 emojis, a button that links straight to a wa.me address, wording that reads like gambling ("raffle", "win a prize"), and templates too vague to judge, such as "Hi {{1}}, thanks" (Twilio template approval docs).
Four of those are easy to trip over in Malaysia:
What changed in 2025 and 2026?
The review rules settled in 2025. What 2026 changed is the price of getting the category wrong. Here are the dates that matter for a Malaysian sender.
A template submitted as utility that Meta judges to be marketing is approved as marketing instead of rejected. The old allow_category_change setting was retired because this became the default.
Businesses already warned for misusing utility lose the one-day notice. Their utility-to-marketing changes happen instantly.
Every delivered template is billed on its own, by category. Utility templates sent inside an open 24-hour window became free for a time.
Templates sent in large campaigns can be delivered in batches, so Meta has time to gather feedback before the full send.
Malaysian accounts can be billed in MYR. The currency is chosen when the account is created.
Replies inside the 24-hour window are billed per message, and utility templates sent inside an open window are charged again.
The sources for these are Meta's template categorization guide, its developer changelog and its pricing page. The 9 April change is the easiest one to miss. Before it, a promotional utility template bounced back and you rewrote it. After it, the template comes back approved, with Marketing where you chose Utility, and unless someone checks that label, the first sign is the invoice.
Why is "approved as marketing" worse than a rejection?
A rejection stops you before you have spent anything. A template recategorised as marketing keeps sending, at the higher price and under the per-user marketing cap, until somebody notices. That is three costs where a rejection has none.
The first cost is the rate. Meta's ringgit rate card lists a marketing template at RM0.3467 and a utility template at RM0.0564 per delivered message (ChatMaxima, Malaysia rates from Meta's MYR rate card). Accounts billed in US dollars pay USD 0.0860 and USD 0.0140, the same six-to-one gap. Take an aircon servicing company in Shah Alam sending 1,500 booking confirmations and reminders a month. As utility, the Meta fee is about RM85. As marketing, it is about RM520. That one promotional line in the reminder costs around RM435 a month, or over RM5,000 a year. The full category breakdown is in our WhatsApp Business API pricing guide.
The second cost is delivery. Marketing templates fall under Meta's per-user marketing cap, which quietly stops some messages reaching people who have already received a lot of marketing messages recently, from any business. Utility templates do not. We explain the cap, and why resending makes it worse, in why your WhatsApp marketing message was not delivered.
The third cost builds over time. Meta re-checks templates that are already approved, gives one day's notice by email, webhook and a WhatsApp Manager banner, then moves them to marketing. And if it decides a business keeps filing marketing as utility, it escalates (Meta template categorization):
| Level | What Meta does | How long |
|---|---|---|
| Warning | Written warning to the account admins; later utility-to-marketing changes become instant | Not stated |
| Rate limit | Utility volume capped over a rolling 24 hours; messages over the cap are rejected | At least 7 days |
| Utility restriction | Every approved utility template on the account becomes marketing; no new utility templates or category reviews | 7 days, 30 for a repeat |
| Portfolio restriction | The same, across every WhatsApp account in the business portfolio | 30 days |
This is the contrarian part. It is tempting to treat the utility label as a discount to be won with careful wording. It is not worth it. A promotion that slips through as utility saves about RM0.29 a message. A utility restriction moves every honest delivery update, appointment confirmation and payment reminder on the account to marketing for a week or a month. You do not get to pick the category. Meta does, and it keeps checking.
How do you rewrite a template so it passes first time?
Give each template one job, the job the customer asked for, and put words around every variable. Meta's rule for utility is that the message must have no promotional or persuasive intent and must be specific to something the customer did or needs, and its own example of what fails is "an order update with a promo" (Meta template categorization). Here is what that looks like on the kind of messages Malaysian businesses send. These are our own samples, not templates from a customer account.
The aircon booking confirmation from Shah Alam, before. Submitted as utility, a template like this comes back as marketing, because the second line is a sale.
Hi {{1}}, your aircon service at {{2}} is booked for {{3}}.
Add a chemical wash this visit and get 15% off!
Reply YES to add it.After. The utility template keeps the facts of the booking and one way to reply.
Hi {{1}}, your aircon service at {{2}} is booked for {{3}}. Our
technician will message you when they are on the way. Reply here if
you need to change the time.The offer did not disappear. If the promotion is real, it becomes its own marketing template, filed honestly as marketing, sent less often, and with an easy way out.
Hi {{1}}, chemical wash is 15% off for Shah Alam homes until
30 November. Reply BOOK for a slot, or reply STOP if you would rather
not get offers from us.A dental clinic in Penang, before. The confirmation is utility. The whitening price and the Instagram line are not, so the whole template is marketing.
Your appointment with Dr {{1}} is confirmed for {{2}}.
This month only: teeth whitening at RM399! Follow us on Instagram for more deals.After.
Your appointment with Dr {{1}} at our Jelutong clinic is confirmed
for {{2}}. Please arrive 10 minutes early. Reply here if you need to
change the time.A car workshop in Klang, before. This one is rejected for format, not category: it starts and ends with a variable, and three variables in a nine-word message is likely to trip the too-many-variables rule as well.
{{1}}, your car {{2}} is ready for collection {{3}}After, with samples such as "Encik Rahman", "WXY 1234" and "2pm today" filled in at submission.
Hi {{1}}, your car with plate number {{2}} is ready for collection
at our Klang workshop from {{3}}. Please bring your job sheet.A tuition centre in Subang, before. Meta treats a template whose content is unclear, its own examples are a lone variable or "Congratulations!", as marketing.
Congratulations {{1}}! 🎉After. Specific to one enrolment, so it reads as the confirmation it is.
Hi {{1}}, the Form 4 Add Maths place for {{2}} is confirmed. The first
class is on {{3}} at 4pm. Reply here if you have any questions.How to Rewrite a Rejected WhatsApp Template So It Passes First Time
The edit limits in step 6 come from Meta: rejected or paused templates can be edited without limit, approved templates up to 10 times in 30 days and once in 24 hours, and the category of an approved template cannot be changed (Meta template management).
Step 7 is the one we would not skip. Across the sending accounts we have watched, a brand-new template is one of three moves that show up right before a number gets restricted. The other two are a sudden jump in volume and a switch to a fresh number. A template that has just passed review has passed review, nothing more. How customers react to it is still unknown, which is why Meta now paces large sends of a template while it collects feedback. Our guide to the WhatsApp quality rating covers what that reaction does to your messaging limit.
Frequently Asked Questions
Where does the offer go, if not in the template?
Into the conversation the utility template starts. When the customer replies, or taps a reply button, they have messaged you, and the 24-hour customer service window opens. Inside it you can write freely, and since 1 October 2026 those replies are free for the first 1,000 a month on each business number, then billed at the utility rate (respond.io on the October 2026 change). The offer that would have cost about RM0.35 as a template now costs nothing or about RM0.06, and it only goes to people who answered.
It also lands better there. What we have seen across MSME sales operations is that the outbound message that gets a reply brings something new to the reader (an offer, a voucher, an event, a new product) and does not hard-sell. An offer stapled to a reminder is a hard sell. The same offer, sent after Puan Aini replies "OK, see you Saturday", is a helpful extra: "Thanks, see you Saturday. If you want a chemical wash on the same visit, it is 15% off until 30 November." Only use a promotion you are actually running, with its real end date.
For the customers who never reply, the offer goes out as its own marketing template to the opted-in list, filed as marketing, with a STOP line. That costs more per message, so you send it less often and to a smaller, warmer list, which is also what keeps the quality rating healthy.
In Raion HUB, templates are written and submitted to Meta from inside the app. The editor refuses to submit a template that breaks a mechanical rule Meta rejects on, such as a body made only of fields, more than 10 emojis, or a field with no sample. A "Check before submitting" button flags fields placed at the start, at the end or side by side, and wording that reads as spam. Each template shows its category, its status and Meta's rejection reason. Approved templates then go out as campaigns to a filtered list, with each lead's own details filled in, or as timed steps in a follow-up sequence. One honest limit: no tool can tell you in advance which category Meta's review will choose. The editor catches the format. The one-job rule is still yours.
The bottom line
A WhatsApp template rejected for its format is fixed in a minute: words around every variable, a sample for each, plain formatting, the right language. The expensive failure is the template approved as marketing because one promotional line rode along with a reminder, which in Malaysia means about RM0.35 a message instead of about RM0.06, the per-user marketing cap, and, if it keeps happening, every utility template on the account moved to marketing. Give each template one job, send the offer as its own marketing template or as a reply inside the 24-hour window, and send a new template small before you send it big.
