Skip to main content

Documentation Index

Fetch the complete documentation index at: https://knowledge.flowella.io/llms.txt

Use this file to discover all available pages before exploring further.

Meta reviews every template you submit. Most rejections come down to a small set of recurring issues. This page covers the common ones and what to change before resubmitting. For the format itself (categories, headers, buttons, variables) see Template reference.

Where to read the rejection reason

In Flowella, open Templates and find the rejected template. The rejection reason returned by Meta appears on the template page, usually as a short string like INVALID_FORMAT or a sentence explaining the issue.

Common rejection reasons

Wrong category

You submitted a Marketing-style message under Utility. Common signs:
  • Promotional copy (“Sale ends Friday”, “Get 20% off”)
  • An offer or coupon
  • Re-engagement messaging
Resubmit as Marketing. If the template is genuinely transactional (order updates, password resets, appointment reminders), keep it as Utility but tighten the copy.

Promotional language in Authentication

Authentication templates can contain only the verification code and minimal supporting text. Anything that reads like marketing — branding statements, offers, links to your site — will be rejected. Strip back to the code, an expiry note, and “Do not share this code”.

Sample variable values don’t match the body

When you add a variable like {{1}}, Meta requires a sample value that matches what you’d really send. Common mistakes:
  • A sample link that’s a generic homepage when the body promises an order tracking page.
  • A sample name with special characters that imply unsupported formatting.
  • Samples that don’t match the template’s tone (e.g. John for a first name when the body addresses the recipient as “Customer”).
Use realistic samples. For URLs, use a real production-style URL with placeholder IDs.

Spammy text in the body

These get rejected fast:
  • Excessive capitalisation (FREE!!!)
  • Multiple exclamation marks
  • “Click here” without context
  • Over-promising language (“guaranteed”, “100% off”)
  • Misleading urgency (“Last chance!” without a real deadline)
Rewrite as a calm, factual message. WhatsApp templates should read like a useful update, not a banner ad.

Variable indexes out of order

Variables must be sequential starting from {{1}}. {{1}} then {{3}} will be rejected. Renumber so they go {{1}}, {{2}}, {{3}} in order.

Broken or unreachable media header

For IMAGE, VIDEO, and DOCUMENT headers, Meta tries to fetch the URL during review. If it 404s, redirects through a login page, or is blocked by your CDN to non-browser user-agents, the template is rejected. Host on stable infrastructure that allows Meta’s crawler.

Buttons that don’t comply

  • Quick reply labels longer than 25 characters
  • URL buttons whose URL pattern doesn’t make sense (https://example.com/{{1}} with a sample of not-a-path)
  • Phone buttons in non-E.164 format
Fix the offending button, leave the others in place.

Duplicate template name

A WABA cannot have two templates with the same name and language. If you re-submitted with the same name without removing the old one, the new one will be rejected. Either pick a new name, or delete the old version first.

Resubmitting

After fixing the issue:
  1. Open the rejected template in Flowella.
  2. Click Edit.
  3. Apply your changes.
  4. Submit again. The template re-enters the PENDING state and Meta usually responds within 24–48 hours.
Keep working APPROVED templates untouched. Edit a copy when you want to make significant changes — that way your live sends keep working while Meta reviews the new version.

Still rejected after fixing?

If the same template is rejected twice and you can’t see why, contact support with:
  • The template name and language
  • The full rejection reason from Meta
  • A screenshot of the template body, header, and buttons
We can often spot the issue quickly or escalate to Meta on your behalf.