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

# WhatsApp templates — approval, quality rating, and advanced formatting

> Master WhatsApp message templates — categories, Meta approval process, quality ratings, interactive buttons, media headers, localization, and best practices.

## Why templates matter

WhatsApp message templates are the **only way** to start a conversation with a customer outside the [24-hour messaging window](/conversations/whatsapp-24hr-window). Every outbound campaign, appointment reminder, order notification, and re-engagement message requires an approved template.

Getting templates right means:

* Higher approval rates from Meta
* Better quality ratings (which determine your sending limits)
* More engaging messages with buttons, media, and personalization
* Lower costs through proper category classification

For basic template creation steps, see [WhatsApp settings](/settings/whatsapp). This page covers advanced topics.

## Template categories deep dive

Meta classifies every template into one of three categories. The category determines pricing and what content is allowed.

<Tabs>
  <Tab title="Marketing">
    **Purpose**: Promotions, offers, product launches, re-engagement, newsletters

    **Examples**:

    * "Flash sale! 30% off all items this weekend"
    * "We miss you! Come back and get a free shipping code"
    * "New arrivals just dropped — check them out"

    **Pricing**: Most expensive category

    **Rules**:

    * Must include opt-out language or an unsubscribe mechanism
    * Cannot be misleading about offers or urgency
    * Subject to stricter quality scrutiny
  </Tab>

  <Tab title="Utility">
    **Purpose**: Transactional updates the customer expects — order confirmations, shipping updates, appointment reminders, account alerts

    **Examples**:

    * "Your order #12345 has shipped. Track it here: `{{1}}`"
    * "Reminder: Your appointment is tomorrow at `{{1}}`"
    * "Your payment of `{{1}}` has been received"

    **Pricing**: Mid-range

    **Rules**:

    * Must relate to an existing transaction or relationship
    * Should not contain promotional content
    * If Meta detects promotional intent, it may reclassify as marketing
  </Tab>

  <Tab title="Authentication">
    **Purpose**: One-time passwords, verification codes, login confirmations

    **Examples**:

    * "Your verification code is `{{1}}`. It expires in 10 minutes."
    * "Use this code to log in: `{{1}}`"

    **Pricing**: Cheapest category

    **Rules**:

    * Must use Meta's authentication template format
    * Limited to OTP and verification use cases
    * Auto-expiry and security disclaimers recommended
  </Tab>
</Tabs>

<Warning>
  Meta determines the final category during review. If your template content doesn't match the category you selected, Meta will either reject it or reclassify it to the correct (often more expensive) category.
</Warning>

## Template approval process

<Steps>
  <Step title="Create the template">
    In HoopAI, navigate to **Settings > WhatsApp > Templates** and click **Create Template**. Choose your category, language, and write the content. See [WhatsApp settings](/settings/whatsapp) for step-by-step creation.
  </Step>

  <Step title="Submit for review">
    When you save the template, it's automatically submitted to Meta for approval.
  </Step>

  <Step title="Meta reviews">
    Meta's automated and manual review process checks the template against their [commerce](https://www.whatsapp.com/legal/commerce-policy/) and [business messaging](https://www.whatsapp.com/legal/business-policy/) policies.
  </Step>

  <Step title="Approval or rejection">
    Templates are typically reviewed within **minutes to 24 hours**. Most templates are reviewed within 1-2 hours. You'll see the status update in HoopAI's template manager.
  </Step>
</Steps>

### Approval timeline

| Template type                  | Typical review time       |
| ------------------------------ | ------------------------- |
| Authentication                 | Minutes (often automatic) |
| Utility                        | 30 minutes - 2 hours      |
| Marketing                      | 1 - 24 hours              |
| Templates with media           | May take slightly longer  |
| Re-submitted (after rejection) | Same as initial review    |

## Template rejection reasons and fixes

Common reasons Meta rejects templates:

| Rejection reason                         | What went wrong                                                          | How to fix                                                   |
| ---------------------------------------- | ------------------------------------------------------------------------ | ------------------------------------------------------------ |
| **Scam or misleading content**           | Content appears deceptive                                                | Remove urgency language, unclear offers, or suspicious links |
| **Incorrect category**                   | Content doesn't match selected category                                  | Resubmit with the correct category                           |
| **Missing variable**                     | Template references dynamic content without proper `{{variable}}` syntax | Add `{{1}}`, `{{2}}`, etc. for dynamic values                |
| **Abusive or threatening**               | Language is inappropriate                                                | Rewrite in a professional, neutral tone                      |
| **Violates commerce policy**             | Prohibited products/services (alcohol, tobacco, weapons, etc.)           | Remove prohibited content                                    |
| **Too similar to rejected template**     | Resubmitting the same rejected content with minor changes                | Make substantial changes to address the root issue           |
| **Contact information request**          | Asking for sensitive personal information                                | Remove requests for passwords, credit card numbers, etc.     |
| **Non-transactional content in utility** | Promotional message submitted as utility                                 | Change category to marketing or remove promotional content   |

<Tip>
  When a template is rejected, you'll see the reason in HoopAI's template manager. Address the specific issue and resubmit — don't just change one word and try again.
</Tip>

## Template quality rating

Every approved template has a **quality rating** that Meta updates based on customer feedback:

| Rating              | Meaning                                            | Impact                                                  |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------- |
| **Green** (High)    | Customers engage positively, low block/report rate | Full sending capacity                                   |
| **Yellow** (Medium) | Some negative signals detected                     | Warning — improve content or targeting                  |
| **Red** (Low)       | High block/report rate                             | Rate limits reduced, template may be paused or disabled |

### How quality is measured

Meta tracks:

* **Block rate** — how often recipients block your number after receiving the template
* **Report rate** — how often recipients report the message as spam
* **Read rate** — low read rates may signal irrelevant content

### Maintaining high quality

* **Target relevant audiences** — don't send marketing templates to contacts who haven't opted in
* **Personalize content** — use variables for names, order numbers, dates
* **Provide clear opt-out** — include unsubscribe instructions in marketing templates
* **Don't over-message** — respect frequency preferences
* **Monitor ratings** — check template quality regularly in Settings > WhatsApp

## Template rate limits

Your sending limits depend on your **phone number quality rating** and **business verification status**:

| Tier             | Messages per 24 hours   | How to reach                        |
| ---------------- | ----------------------- | ----------------------------------- |
| **Tier 1** (new) | 250 unique contacts     | Default for new numbers             |
| **Tier 2**       | 1,000 unique contacts   | Send to 250 and maintain quality    |
| **Tier 3**       | 10,000 unique contacts  | Send to 1,000 and maintain quality  |
| **Tier 4**       | 100,000 unique contacts | Send to 10,000 and maintain quality |
| **Unlimited**    | No limit                | Consistent high quality at Tier 4   |

<Note>
  Rate limits apply to the number of **unique contacts** you can message per 24-hour period, not the total number of messages. You can send unlimited messages to contacts within an open conversation.
</Note>

## Dynamic variables and personalization

Templates support dynamic variables using the `{{1}}`, `{{2}}`, `{{3}}` syntax:

```
Hi {{1}}, your appointment with {{2}} is confirmed for {{3}} at {{4}}.

Reply YES to confirm or NO to reschedule.
```

When sending, HoopAI maps these variables to contact fields:

| Variable | Mapped to           |
| -------- | ------------------- |
| `{{1}}`  | Contact first name  |
| `{{2}}`  | Provider/agent name |
| `{{3}}`  | Appointment date    |
| `{{4}}`  | Appointment time    |

### Variable best practices

* Always provide **sample values** when creating the template (required by Meta)
* Use **fallback values** for optional fields — e.g., "Hi `{{1 | there}}`"
* Keep variable count reasonable — templates with 5+ variables are harder to manage
* Never use variables for the entire message body — Meta requires meaningful static text

## Interactive templates

### Quick reply buttons

Add up to **3 quick reply buttons** that let the customer respond with a single tap:

```
Your order #{{1}} is ready for pickup at {{2}}.

[Pick up today]  [Reschedule]  [Cancel order]
```

Quick replies generate an inbound message, which **opens a service conversation window** — allowing you to continue the chat without additional template costs.

### Call-to-action buttons

Add up to **2 CTA buttons**:

* **Visit website** — opens a URL (can include a dynamic path variable)
* **Call phone number** — initiates a phone call

```
Hi {{1}}, your invoice is ready.

[View invoice]  →  https://app.hoopai.com/invoice/{{2}}
[Call support]  →  +1-555-0123
```

### List messages (inside window only)

List messages with multiple options are only available as **free-form messages inside the 24-hour window**, not as templates.

## Templates with media

Templates can include a **header** with media:

| Header type | Supported formats | Max size |
| ----------- | ----------------- | -------- |
| Image       | JPEG, PNG         | 5 MB     |
| Video       | MP4               | 16 MB    |
| Document    | PDF               | 100 MB   |

Example template with image header:

```
[Header: Product image]

New season, new styles! Check out our latest collection.

Use code {{1}} for 15% off your first order.

[Shop now] → https://shop.example.com
```

<Tip>
  Templates with images get significantly higher engagement than text-only templates. Always include a relevant header image for marketing templates.
</Tip>

## Template localization

You can create the same template in **multiple languages**:

<Steps>
  <Step title="Create the base template">
    Start with your primary language (e.g., English).
  </Step>

  <Step title="Add language variants">
    In the template editor, add translations for each target language. Each language variant is submitted separately for approval.
  </Step>

  <Step title="Automatic language matching">
    When you send the template, WhatsApp delivers the version matching the customer's phone language setting. If no match exists, the default language is used.
  </Step>
</Steps>

Supported languages include English, Spanish, Portuguese, French, German, Italian, Arabic, Hindi, Indonesian, and dozens more.

## Template examples by use case

<AccordionGroup>
  <Accordion title="Appointment reminder (utility)">
    ```
    Hi {{1}}, this is a reminder about your upcoming appointment.

    📅 Date: {{2}}
    🕐 Time: {{3}}
    📍 Location: {{4}}

    Reply CONFIRM to confirm or RESCHEDULE to change your appointment.
    ```
  </Accordion>

  <Accordion title="Order confirmation (utility)">
    ```
    Thank you for your order, {{1}}!

    Order #{{2}} has been confirmed and is being processed.

    Estimated delivery: {{3}}

    [Track order] → https://track.example.com/{{2}}
    ```
  </Accordion>

  <Accordion title="Re-engagement (marketing)">
    ```
    Hi {{1}}, we noticed it's been a while since your last visit!

    We'd love to see you again. Here's a special offer just for you:

    🎁 {{2}} off your next purchase

    Offer expires {{3}}.

    [Claim offer]  [Unsubscribe]
    ```
  </Accordion>

  <Accordion title="Promotional offer (marketing)">
    ```
    [Header: Sale banner image]

    {{1}}, our biggest sale of the year is here!

    Up to {{2}} off everything in store and online.

    Sale ends {{3}}. Don't miss out!

    [Shop now] → https://shop.example.com/sale
    [Unsubscribe]
    ```
  </Accordion>

  <Accordion title="Shipping update (utility)">
    ```
    Great news, {{1}}! Your order #{{2}} has shipped.

    🚚 Carrier: {{3}}
    📦 Tracking #: {{4}}

    [Track shipment] → https://track.example.com/{{4}}
    ```
  </Accordion>

  <Accordion title="OTP / verification (authentication)">
    ```
    Your HoopAI verification code is {{1}}.

    This code expires in 10 minutes. Do not share it with anyone.
    ```
  </Accordion>
</AccordionGroup>

## Best practices for high approval rates

1. **Match content to category** — don't disguise marketing as utility
2. **Include sample variable values** — Meta needs to see what the final message looks like
3. **Use professional language** — avoid slang, excessive caps, or aggressive urgency
4. **Add opt-out for marketing** — required for marketing templates
5. **Keep it concise** — templates with clear, focused content get approved faster
6. **Avoid prohibited content** — no alcohol, tobacco, adult content, gambling, weapons
7. **Don't request sensitive data** — never ask for passwords, SSN, or full credit card numbers
8. **Test with a simple template first** — if you're new, start with a utility template to build quality history

## Frequently asked questions

<AccordionGroup>
  <Accordion title="How many templates can I create?">
    Meta allows up to **250 templates per WhatsApp Business Account** (WABA). If you need more, contact Meta support for an increase.
  </Accordion>

  <Accordion title="Can I edit an approved template?">
    No. Once approved, templates cannot be edited. You must create a new template with the changes and submit it for approval. You can then delete the old template.
  </Accordion>

  <Accordion title="Can I delete a template?">
    Yes. You can delete templates from HoopAI's template manager. Deleted templates cannot be recovered — you'll need to create and submit a new one.
  </Accordion>

  <Accordion title="Why was my template reclassified to marketing?">
    If Meta detects promotional intent in a utility or authentication template, they'll reclassify it. Common triggers: discount codes, CTAs like "Shop now", or language encouraging a purchase.
  </Accordion>

  <Accordion title="How long does template approval take on weekends?">
    Meta's review is largely automated and operates 24/7. Weekend approvals typically take the same time as weekdays for simple templates.
  </Accordion>

  <Accordion title="Can I use emojis in templates?">
    Yes. Emojis are allowed and can increase engagement. Use them sparingly and professionally.
  </Accordion>
</AccordionGroup>
