> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apifycloud.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Approval flow

> From submit to approved, how rejections work, and how to handle re-submission

Once you submit a template, Meta takes over. This page explains what
happens next, what the statuses mean, and how to resolve rejections
cleanly.

## The flow, end-to-end

<Steps>
  <Step title="You submit">
    The template moves from `draft` to `pending`.
  </Step>

  <Step title="Meta reviews">
    Automated checks run immediately; human review may follow,
    especially for Marketing and borderline content.
  </Step>

  <Step title="The console shows the verdict">
    The status chip flips to `approved` or `rejected`. If rejected, the
    reason text appears on the detail view.
  </Step>
</Steps>

Typical timing: **minutes to a few hours**. Marketing and novel content
can take longer (up to 24h).

## Reading a rejection

Open the rejected template to see:

* **Reason** — Meta's short label (e.g., `CATEGORY_MISMATCH`,
  `INVALID_FORMAT`, `TAG_CONTENT_MISMATCH`)
* **Description** — Meta's explanation (shown when provided)
* **Old category / new category** — if Meta reclassified, what they
  suggest

## Most common rejection reasons

<AccordionGroup>
  <Accordion title="CATEGORY_MISMATCH (or TAG_CONTENT_MISMATCH)">
    The category you submitted (Utility, say) doesn't match the content,
    which looks promotional or authentication.

    **Fix:** switch category in the editor (only available while rejected
    or draft) and resubmit. If the content is ambiguous, bias toward the
    higher-friction category (MARKETING) — it won't bounce back.
  </Accordion>

  <Accordion title="INVALID_FORMAT">
    Structural issue: variable out of place in URL, unsupported header
    type combination, missing sample values.

    **Fix:** open the editor; the offending field is usually flagged.
    Re-preview and resubmit.
  </Accordion>

  <Accordion title="INCORRECT_CATEGORY / PROMOTIONAL_CONTENT_IN_UTILITY">
    Promotional copy in a Utility template.

    **Fix:** either remove the promotional language (keep it
    transactional) or change the category to MARKETING.
  </Accordion>

  <Accordion title="SCAM / PHISHING SIGNALS">
    Content resembles fraudulent patterns (unverified urgency, opaque
    links, mimicking another brand).

    **Fix:** rewrite to reflect your real business. Use a verified display
    name at Meta. Avoid generic "click here to claim" language.
  </Accordion>

  <Accordion title="MISSING_OPT_OUT_INFORMATION">
    Marketing template missing an opt-out line.

    **Fix:** add "Reply STOP to unsubscribe" (or locale equivalent) to
    the footer. Resubmit.
  </Accordion>

  <Accordion title="PARAMETER_MISMATCH">
    The number of variables in the body/header doesn't match the sample
    values you provided.

    **Fix:** update sample values to match the variables.
  </Accordion>
</AccordionGroup>

## Edit and resubmit

<Steps>
  <Step title="Open the rejected template">
    Status chip shows `rejected`; reason is visible on the detail view.
  </Step>

  <Step title="Click Edit">
    The editor opens with all fields populated. Category is editable (it's
    not after approval).
  </Step>

  <Step title="Apply the fix">
    Address the specific rejection reason, not the symptoms. Re-preview.
  </Step>

  <Step title="Resubmit">
    Status goes back to `pending`. Meta reviews again.
  </Step>
</Steps>

<Warning>
  Meta applies per-template edit rate limits. The editor shows the
  remaining quota. If you're close to the limit, sometimes it's
  faster to submit a new template with a suffixed name
  (`order_confirmation_v2`).
</Warning>

## Status after approval

Once approved, the template is selectable everywhere:

* **Messages composer** — direct sends
* **Campaigns wizard** — template step
* **Widgets and flows** — template references

The detail view shows:

* Approved on (timestamp)
* Current quality rating (updated by Meta over time)
* Category (plus a change indicator if Meta reclassified it later)
* Buttons and header type, with icons per type (URL, phone, voice,
  quick reply, copy code)
* CPR chip if flagged, Voice chip if any VOICE\_CALL button

## Quality rating after approval

Every approved template carries a **quality rating** that updates
over time based on user engagement:

| Rating     | What it signals                                                      |
| ---------- | -------------------------------------------------------------------- |
| **High**   | Minimal negative feedback, good read and reply rates                 |
| **Medium** | Some negative signals emerging; worth reviewing content or audience  |
| **Low**    | Significant negative feedback or poor read rates; at risk of pausing |

The rating is shown on the template detail view. Use a drop to
Medium or Low as your early warning — it's much cheaper to iterate on
content now than to recover from a paused template.

<Note>
  Official Meta reference:
  [Template quality rating](https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates#template-quality-rating).
</Note>

## Paused by Meta

Meta can pause an approved template when quality signals decline.
Status flips from `approved` to `paused`.

**What triggers a pause:**

* Low read rates sustained across many sends
* Recurring negative feedback — blocks, reports, mutes
* Complaints from users about a specific template

**What paused means:**

* The template **cannot be sent** — the composer, campaign wizard,
  and widget all treat it the same as `pending` or `rejected`
* A pause reason is shown on the detail view
* The pause is **temporary** — Meta may lift it automatically once
  user signals improve, or after a cooling-off period

**How to recover:**

<Steps>
  <Step title="Read the pause reason">
    The detail view shows why Meta paused the template. Match the
    content against the reason.
  </Step>

  <Step title="Revise content or audience">
    Often the problem is the audience, not the template — you sent
    to users who didn't opt in, or to a segment that's already
    saturated on marketing. Fix the targeting.
  </Step>

  <Step title="Wait or resubmit">
    Some pauses lift on their own. If they don't, edit and resubmit
    (subject to edit rate limits) or create a fresh template with
    revised content.
  </Step>
</Steps>

## Disabled by Meta

**Disabled** is a more serious state than Paused. Meta disables a
template when negative feedback is repeated and severe enough that
recovery isn't viable.

| State      | Severity | Reversible?                                               |
| ---------- | -------- | --------------------------------------------------------- |
| `paused`   | Warning  | Yes — typically recovers with better targeting or content |
| `disabled` | Terminal | Generally no — create a new template instead              |

A disabled template:

* Cannot be sent and won't recover on its own
* Stays in the template list with the `disabled` status for history
* Points you toward creating a replacement rather than trying to
  rehabilitate

<Note>
  Official Meta reference:
  [Template pausing](https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates#template-pausing).
</Note>

## Archived by Meta

Templates that haven't been used for **12+ months** are automatically
**archived**. Archived templates are effectively dormant: not
selectable for sending, but still in your account history. If an
archived template stays unused for **28 more days**, it's deleted
permanently.

If you have a seasonal template you only use once a year, keep it
active by sending at least one message with it per year — or accept
that you'll recreate it when needed.

## Category change after approval

If Meta reclassifies an approved template, the template detail view
shows:

* The **old category** (what you submitted)
* The **new category** (what Meta decided it should be)
* An indicator in the list view

Change is retroactive in pricing: future sends are priced under the
new category. Past sends are not re-billed. Review the impact on
your spending projections before launching the next campaign.

Details: [Template categories — reclassification](/guides/whatsapp/template-categories#reclassification-after-approval).

## What's next

<CardGroup cols={2}>
  <Card title="Template categories" href="/guides/whatsapp/template-categories">
    How categories work and what triggers reclassification.
  </Card>

  <Card title="Template examples" href="/guides/whatsapp/template-examples">
    Copy-and-adapt patterns for Marketing, Utility, and
    Authentication templates.
  </Card>
</CardGroup>
