PHII Labs
2027-01-25WhatsApp Automation7 min read

WhatsApp template approval: real timelines and rules

How long WhatsApp message template approval actually takes, what gets rejected, and how to write utility and marketing templates that pass first time

Sergei Suvorin · Co-founder, PHII Labs

Template submission flow with approval stages and rejections

WhatsApp template approval takes minutes to 48 hours, depending on which category you pick. Utility templates often clear review in minutes through an automated check; marketing templates get stricter human review and can take the full 24 hours. A rejection resets the clock, so the fastest route is writing templates that pass first time

We build WhatsApp systems for Dubai businesses, mostly real estate, and template review is where launches stall. Below: the actual timeline, the category and pricing split, the rejection causes we see most, the sample rules Meta enforces, and the five templates we submit on day one

Note

Template decisions show up in WhatsApp Manager as a status change. Poll that, not the BSP dashboard, which can lag by hours

How long does WhatsApp template approval actually take?

Meta reviews every template you submit, and the decision takes up to 24 hours (Meta: template review). Within that window the actual time varies a lot:

  • Minutes. Simple utility templates with clean placeholders clear an automated, machine-assisted review almost immediately. A viewing confirmation with one date variable and no promotional copy is a good example
  • Hours to 24 hours. Templates that need human review go slower. Marketing templates land here because reviewers look for opt-out context, claim accuracy and spam patterns that an automated check misses
  • Up to another 24 hours on appeal. If Meta rejects a template and you disagree, you can appeal, and the appeal decision takes up to another 24 hours (Meta: template review).

The number that surprises most clients is the total worst case: submit, wait 24, get rejected, appeal, wait another 24, lose. That is why we submit the first five templates on day one of a setup, before the number is live, so review runs in parallel with business verification and the webhook build. By the time the number can send, the templates are approved

The other thing to budget for is that Meta can re-categorize a template you submitted as utility into marketing. Since April 2025 that decision is not a rejection, it is an approval at the marketing rate (Meta: template categorization). Your viewing confirmation still sends, but it bills at 3.7 times the utility price.

What's the difference between utility and marketing templates?

Meta places every template into a category at review, and the category drives both the review stringency and the price per delivered message. For UAE recipients on the rate card effective 1 October 2026, the numbers are (Meta pricing docs):

CategoryWhat it doesReviewAED per delivered message
UtilityServes a user-initiated transaction: payment reminders, viewing confirmations, status updatesFast, often automated0.0576
MarketingPromotions, new launches, re-engagement, anything that drives a purchaseSlower, human review0.2115
AuthenticationOne-time passcodes and account verificationFast, tightly scoped0.0576

Utility is the cheaper and faster lane because the message answers an action the user already took. Marketing is the promotional lane, and Meta prices it a lot higher because it interrupts the user unprompted. For a Dubai agency the difference is six-fold per message, so the cheapest win is usually to keep a reminder on utility and drop the promotional sentence that would flip it to marketing

The boundary is where most re-categorizations happen. "Your viewing is confirmed for 4 pm" is utility. Append "also check out our new Dubai Hills launch" and the whole message becomes marketing, priced at 0.2115 AED instead of 0.0576 AED

Why do WhatsApp templates get rejected?

Most rejections are mechanical, not a judgment on your business. Here are the causes we see in production, with the fix for each:

Rejection causeWhat it looks likeFix
Variables out of sequence{{1}} used before {{1}} is first, or numbers not in orderNumber positional variables 1, 2, 3 in the order they appear
Variable at the start or endA message like "{{1}}, confirm your viewing" or "your payment of {{1}}"Wrap leading and trailing variables in fixed words
Too many variables for the length4 placeholders in a 20-word messageCut to 1–2 variables, keep the text fixed
Promotional language in utility"Act fast", "offers", "limited time"Remove anything that pitches; re-file as marketing if it must sell
Sensitive identifiers requested"Send your Emirates ID and passport copy"Collect documents inside a conversation or via a secure upload link
Duplicate or reused wordingThe body matches another active templateRewrite so templates are audibly distinct

The sensitive-identifier row catches real estate teams more than any other. A template that asks a tenant to send an Emirates ID or passport copy for an Ejari registration will be rejected, because Meta blocks requests for restricted identifiers inside templates (Meta: message template guidelines). You collect those documents in the conversation the customer started, or through a secure upload link, not in a template body.

A related trap is the fake-sample test. Meta compares the sample text you submit against the variables in the body. If the sample is a real-looking phone number, a placeholder email that reads like a live inbox address, or text that does not match the declared category, the template can be flagged even when the body is fine

What sample text does Meta require?

Every template needs sample values for its variables, and those samples are part of the review. The rules are small and easy to get wrong:

  • Do not use real phone numbers, Emirates IDs, email addresses or names that look like a real person's. Use obviously synthetic values: 0501234567 for a phone number, a name like John Doe, and an obviously fake email like the admin address on a sample company's own domain
  • Make the sample category-consistent. A utility reminder with a sample that reads like a sales pitch sets up a re-categorization
  • Match the number of samples to the number of variables, in order. One extra or missing value is a rejection
  • Keep the sample body free of the request for government identifiers, whatever the category

We keep a tiny lookup table of safe sample values in the build: John Doe for names, 0501234567 for UAE phone numbers, AED 4,500 for amounts, 01 Jan 2026 for dates. That table removes the most common rejection we ship past

Which five templates should a business start with?

You do not need a large template library on day one; you need the five that cover the transaction flow. These are the ones we submit together before launch, because approval runs in parallel with everything else:

  1. Welcome (utility). Confirms the conversation is active and what happens next. E.g. "Hi {{1}}, thanks for getting in touch. An advisor will reply within one working hour"
  2. Qualification follow-up (utility). A gentle nudge with a concrete ask: "Still researching {{1}} in {{2}}? Reply with your budget and we will shortlist properties today"
  3. Document request (utility). Asks for a document without naming a government identifier: "To proceed with {{1}} we need your title deed and Emirates ID. Upload them securely here: {{2}}"
  4. Reminder (utility). For viewings and payments: "Reminder: your viewing at {{1}} is confirmed for {{2}}. Reply R to reschedule"
  5. Re-engagement (marketing). For opted-in contacts outside the window: "{{1}} on the market: {{2}} new units this month in {{3}}. Reply J to see the list"

The first four are utility, so they are cheap and they usually clear fast. The fifth is marketing, which you pay more for, which is why it only goes to contacts who opted in. WhatsApp requires opt-in before you message someone first, and a purchased list gets numbers banned, so re-engagement only reaches people who asked (WhatsApp Business Messaging Policy).

How do you keep templates approved after launch?

Template management is not a one-time task; it is a maintenance loop, because Meta re-reviews and can re-categorize templates whenever content changes or quality flags appear. The loop we run:

  1. Each template gets one owner in WhatsApp Manager or the BSP dashboard, so status changes are seen the same day
  2. Every body edit is treated as a fresh submission; we re-test sample values against the new variables before sending anything to review
  3. Category is checked against the message intent every quarter, because a utility template that drifts toward promotional language gets re-priced, not rejected
  4. Opt-out context stays attached to marketing templates. Meta requires it, and a template missing it is a rejection risk every time

New business portfolios also face the messaging limit: a fresh, unverified portfolio can message 250 unique users per rolling 24 hours outside the service window, until business verification raises it (Meta: messaging limits). That matters when a launch broadcast is planned for the same week the templates clear, because the templates can be approved and the send still capped.

Again, the field data supports keeping this loop small. In the property management app we built for a property-management platform and launched as an MVP in 10 days, around 60% of tenant chats are handled by AI, and the templated messages are the ones that cleared review fastest because they stay on utility and never ask for a government identifier (a property-management platform). For portal leads the same pattern runs through WhatsApp bots for Property Finder and Bayut leads

Most template rejections we see in production are mechanical: a variable numbered out of sequence or a sample cell that does not match the body. Fix those two and the review clock rarely becomes a project delay

Sergei Suvorin · Co-founder, PHII Labs

The takeaway

WhatsApp template approval is minutes to 48 hours: fast for clean utility templates, slower and stricter for marketing, and a full reset on rejection. The lever is not speed, it is passing on the first attempt: right category, ordered variables, no government identifiers in the body, and sample values that match. Submit the first five on day one so review runs in parallel with the rest of setup

A Dubai business that keeps templates off the rejection path also keeps the Meta bill down, because utility at 0.0576 AED is six times cheaper than marketing at 0.2115 AED. The rest of that cost model is covered in WhatsApp Business API in the UAE: costs and setup, and the consent rules that keep those marketing sends legal are in WhatsApp opt-in rules for UAE businesses

If you want us to check your template categories and rejection history, book a free automation audit. We map your template library against Meta's rate card and fix the ones that will re-categorize into marketing or stall a launch

FAQ

How long does WhatsApp template approval take?

Typically minutes to 48 hours. Utility templates approve fastest; marketing templates get stricter review. Rejections reset the clock — write them to pass first time

Why do WhatsApp templates get rejected?

Top causes: promotional language in a utility template, missing opt-out context on marketing sends, placeholder samples that don't match the variable, and anything that looks like spam patterns

What's the difference between utility and marketing templates?

Utility templates serve a specific user-initiated transaction (confirmations, reminders, updates) and price lower. Marketing covers promotions and re-engagement and costs more per message

How many templates should a business prepare?

Start with 3–5: one welcome, one qualification follow-up, one document request, one reminder, one re-engagement. Each takes approval time — submit them together before launch

Sources

Want systems like this?

We build and ship AI systems for real operations