Skip to main content

WhatsApp Templates

Create professional WhatsApp Business message templates for marketing, transactional, and authentication messages. All WhatsApp marketing messages require pre-approved templates from Meta (Facebook).

Important: Meta Approval Required

WhatsApp marketing messages MUST use approved templates. You cannot send custom messages to contacts unless:

  • They messaged you first (within last 24 hours), OR
  • You're using an approved template

Approval time: 1-24 hours (usually 2-6 hours)

Template Categories

Meta requires categorizing templates:

CategoryPurposeExamplesApproval Time
MARKETINGPromotional contentSales, offers, product launches12-24 hours
UTILITYAccount/transactional updatesOrder status, delivery, account changes2-6 hours
AUTHENTICATIONOTPs, verification codesLogin codes, 2FA, password reset1-2 hours

Choose the correct category - it affects approval time and usage limits.

Creating a WhatsApp Template

Step 1: Start New Template

  1. Navigate to Channel → Templates
  2. Click + New Template
  3. Select WhatsApp as channel
  4. Fill in template details:
    • Template Name: Unique identifier (lowercase, underscores only)
      • Good: order_confirmation_v2
      • Bad: Order Confirmation V2 (no spaces/caps)
    • Category: MARKETING, UTILITY, or AUTHENTICATION
    • Language: Select language (can create multi-language versions)

Step 2: Design Template Components

WhatsApp templates have 4 optional components:

1. Header (Optional)

Choose one:

  • Text: Short title or greeting (max 60 characters)
    Your Order Confirmation
  • Image: Product photo, banner (JPG/PNG, < 5MB)
  • Video: Product demo, announcement (MP4, < 16MB)
  • Document: PDF invoice, catalog (PDF, < 100MB)

2. Body (Required)

Main message content:

  • Max 1,024 characters
  • Can include numbered variables for personalization
  • Supports bold, italic, strikethrough, monospace

Example:

Hi {{1}},

Your order {{2}} has been confirmed!

*Order Details:*
- Total: ${{3}}
- Delivery: {{4}}

Track your order: {{5}}

Thanks for shopping with us!

3. Footer (Optional)

Small text at bottom (max 60 characters):

Reply STOP to opt out

4. Buttons (Optional)

Choose one button type:

Call-to-Action Buttons (max 2):

  • Visit Website: Opens URL
    [Shop Now] → https://yourstore.com
  • Call Phone Number: Direct dial
    [Call Us] → +1234567890

Quick Reply Buttons (max 3):

  • Predefined response options
    [Yes] [No] [Maybe Later]

Step 3: Add Variables

Variables allow dynamic content per contact:

Variable Syntax:

  • Use numbered placeholders starting from 1, 2, 3, etc.
  • Number them sequentially (don't skip numbers)
  • Max 10 variables per template

Example Template:

Header: [IMAGE]

Body:
Hi {{1}},

We're excited to launch our new {{2}}!

As a valued customer, you get *exclusive early access* and {{3}}% off.

Offer valid until {{4}}.

Footer: Reply STOP to opt out

Buttons:
[Shop Now] → https://store.com/{{5}}

Variable Mapping (done in campaign):

  1. Variable 1 → Contact name
  2. Variable 2 → Product name
  3. Variable 3 → Discount percentage
  4. Variable 4 → Expiry date
  5. Variable 5 → Product URL slug

Step 4: Submit for Meta Approval

  1. Review template carefully
  2. Check Meta's guidelines (see below)
  3. Click Submit for Approval
  4. Wait for approval (1-24 hours)

Approval Status:

  • Pending: Under review by Meta
  • Approved: Ready to use ✅
  • Rejected: Needs fixes (see rejection reason)

Meta Template Guidelines

✅ Allowed:

  • Product updates and launches
  • Sales and promotions
  • Event invitations
  • Order updates
  • Appointment reminders
  • Customer surveys
  • Account notifications

❌ Not Allowed:

  • Cryptocurrency, gambling
  • Tobacco, alcohol, drugs
  • Adult content
  • Weapons
  • Political content
  • Misleading information
  • Spam or mass messaging

Quality Guidelines:

  1. Be Clear and Specific

    • Good: "Your order will be delivered on [date]"
    • Bad: "Important update about your thing"
  2. Use Proper Grammar

    • Correct spelling and punctuation
    • Avoid all-caps (except brand names)
    • Professional tone
  3. Generic Template Text

    • Don't include specific offers in template
    • Use variables for dynamic content
    • Good: "Get [percentage]% off"
    • Bad: "Get 50% off" (hardcoded)
  4. Include Opt-Out

    • Add opt-out language in footer
    • "Reply STOP to unsubscribe"

Template Examples

1. Order Confirmation (UTILITY)

Template Name: order_confirmation

Header: Your Order Confirmation

Body:
Hi {{1}},

Your order {{2}} has been confirmed!

*Order Details:*
Total: ${{3}}
Delivery Date: {{4}}

You can track your order using the button below.

Thank you for your purchase!

Footer: Questions? Reply to this message

Buttons:
[Track Order] → https://store.com/track/{{5}}

2. Appointment Reminder (UTILITY)

Template Name: appointment_reminder

Header: [IMAGE: Calendar icon]

Body:
Hi {{1}},

This is a reminder about your appointment:

*Appointment Details:*
- Service: {{2}}
- Date: {{3}}
- Time: {{4}}
- Location: {{5}}

Please confirm or reschedule using the buttons below.

Footer: Reply STOP to opt out

Buttons:
[Confirm] [Reschedule]

3. Product Launch (MARKETING)

Template Name: product_launch

Header: [IMAGE: Product photo]

Body:
Hi {{1}},

🎉 Introducing our new {{2}}!

{{3}}

As a valued customer, you get *{{4}}% off* for the first week.

Use code: {{5}}

Footer: Offer expires {{6}}. Reply STOP to opt out

Buttons:
[Shop Now] → https://store.com/{{7}}
[Learn More] → https://store.com/{{8}}

4. OTP/Authentication (AUTHENTICATION)

Template Name: otp_verification

Header: Your Verification Code

Body:
Your {{1}} verification code is:

*{{2}}*

This code expires in {{3}} minutes.

If you didn't request this code, please ignore this message.

Footer: Never share this code with anyone

Buttons: (None for security)

Best Practices

Template Design

1. Keep It Concise

  • Max 3-4 sentences for marketing
  • Get to the point quickly
  • Use bullet points for clarity

2. Use Formatting

  • Bold for important info
  • Italic for emphasis
  • Strikethrough for old prices
  • Monospace for codes

3. Clear Call-to-Action

  • What do you want them to do?
  • Make it obvious with buttons
  • Use action words

4. Personalization

  • Always use variable 1 for contact first name
  • Personalize content when possible
  • Makes messages feel less automated

Variable Planning

Before creating template, map out variables:

VariableField NameExample Value
Variable 1Contact first name"Sarah"
Variable 2Product name"Premium Plan"
Variable 3Price"49.99"
Variable 4Expiry date"Dec 31"
Variable 5Coupon code"SAVE20"

Increasing Approval Chances

Do:

  • Follow naming conventions (lowercase_with_underscores)
  • Use correct category
  • Include opt-out language
  • Write clear, professional copy
  • Check spelling and grammar
  • Use variables for dynamic content
  • Include business name

Don't:

  • Use misleading content
  • Make exaggerated claims
  • Include prohibited content
  • Hardcode offers/prices in template
  • Use all-caps excessively
  • Forget opt-out language

Multi-Language Templates

Create versions in different languages:

Process:

  1. Create template in primary language
  2. Get approved
  3. Create new template with same content in different language
  4. Submit for approval
  5. System auto-selects based on contact's language preference

Example:

  • welcome_message_en (English)
  • welcome_message_es (Spanish)
  • welcome_message_fr (French)

Template Status & Management

Template States

StatusDescriptionActions Available
DraftNot submittedEdit, Delete, Submit
PendingAwaiting Meta approvalView, Cancel
ApprovedReady to useUse in campaigns, Edit, Duplicate
RejectedDid not meet guidelinesView reason, Edit, Resubmit
PausedTemporarily disabledView, Resume
DisabledMeta disabled due to policy violationView only

Editing Approved Templates

Important: You cannot edit approved templates directly!

To make changes:

  1. Duplicate the template
  2. Make edits to the duplicate
  3. Submit duplicate for approval
  4. Once approved, archive old template
  5. Use new template in campaigns

Template Limits

Meta Limits:

  • 250 templates per WhatsApp Business Account
  • 100 pending submissions at a time
  • Unlimited approved templates (counts toward 250)

Troubleshooting

Template Rejected

Common Rejection Reasons:

  1. Variable Format Issues

    • Problem: Using named variables instead of numbered ones
    • Solution: Use numbered variables only (1, 2, 3, etc.)
  2. Misleading Content

    • Problem: "You've won!" without context
    • Solution: Be honest and clear
  3. Prohibited Content

    • Problem: Cryptocurrency, gambling references
    • Solution: Remove prohibited topics
  4. Missing Opt-Out

    • Problem: No unsubscribe option
    • Solution: Add "Reply STOP to opt out" in footer
  5. Hardcoded Offers

    • Problem: "Get 50% off today!"
    • Solution: Use variable for discount percentage

Template Not Sending

Check:

  • ✅ Template status is "Approved"
  • ✅ Variables mapped correctly in campaign
  • ✅ Contact has valid WhatsApp number
  • ✅ Contact opted in to receive messages
  • ✅ Not exceeding rate limits

Low Delivery Rate

Possible Issues:

  • Invalid phone numbers
  • Numbers not on WhatsApp
  • Blocked by recipients
  • Rate limits exceeded

Solutions:

  1. Validate phone numbers (include country code)
  2. Verify numbers are WhatsApp users
  3. Clean blocked numbers from list
  4. Reduce sending rate

Advanced Features

Dynamic Headers

Use variables in header images:

Header: [IMAGE: variable_1]

Map the first variable to image URL in campaign.

List Messages

Create interactive lists (requires approval):

Choose your preferred time slot:

[View Available Times]
├ Monday 2 PM
├ Tuesday 10 AM
├ Wednesday 3 PM
└ Thursday 11 AM

Catalog Messages

Link to WhatsApp Business catalog:

Body:
Check out our latest products!

[View Catalog]

Requires WhatsApp Business catalog setup.

Compliance

WhatsApp Business Policy:

  • Only send to opted-in contacts
  • Honor opt-out requests immediately
  • Don't spam
  • Respect 24-hour message window
  • Use approved templates for marketing

Penalties for Violations:

  • Rate limiting
  • Template suspension
  • Account warnings
  • Account suspension (severe cases)