Skip to main content

WhatsApp Templates

WhatsApp templates are pre-approved message formats required by Meta for all outbound WhatsApp messages. You cannot send a message to a customer outside the 24-hour conversation window without using an approved template.


What are Templates?

Templates are structured messages that you submit to Meta for review before use. They ensure that businesses send high-quality, non-spammy messages to customers.

Each template consists of:

  • Header (optional) -- text, image, video, or document
  • Body -- the main message content, with support for variables
  • Footer (optional) -- small text below the body
  • Buttons (optional) -- interactive elements the customer can tap

Creating a Template

  1. Go to Marketing in the sidebar
  2. Click the Templates tab
  3. Click Create Template
  4. Fill in the template details (see sections below)
  5. Submit for Meta review

Template Name and Language

FieldDescription
NameInternal identifier (lowercase, underscores, no spaces). Example: ramadan_sale_2024
CategoryMarketing, Utility, or Authentication
LanguageThe language this template is written in

The header appears at the top of the message. Choose one type:

Header TypeDescriptionNotes
NoneNo header--
TextA short text lineSupports one variable ({{1}})
ImageAn image attachmentJPEG or PNG, uploaded at send time
VideoA video attachmentMP4, uploaded at send time
DocumentA file attachmentPDF or other document, uploaded at send time

Body

The body is the main message content. Use variables to personalize each message:

Hi {{1}}, thank you for shopping with us!

Your order {{2}} has been shipped and will arrive by {{3}}.

Variables use numbered placeholders: {{1}}, {{2}}, {{3}}, etc. You map these to actual values when sending a broadcast or campaign.

An optional line of small text at the bottom of the message. Footers do not support variables.

Example: Reply STOP to unsubscribe

Buttons

Add interactive buttons to your template. You can combine up to 10 buttons.

Button TypeDescriptionExample
URLOpens a link in the browser. Supports a dynamic path variable.https://shop.com/order/{{1}}
Phone NumberInitiates a phone call+968 1234 5678
Quick ReplySends a predefined text replyInterested, Not now
Copy CodeCopies a code to clipboard (for OTP, coupons)SAVE20
Opt-OutLets the customer unsubscribeStop promotions
note

URL buttons can have a dynamic path portion. For example, https://shop.com/track/{{1}} lets you personalize the tracking link per recipient. Only the path after the base domain can be dynamic.

Variable Examples

Meta requires you to provide example values for every variable when submitting the template. These examples help reviewers understand the purpose of each variable.

VariableExample ValuePurpose
{{1}}AhmedCustomer name
{{2}}ORD-98765Order number
{{3}}March 30, 2026Delivery date

Template Approval Flow

After you submit a template, Meta reviews it. The typical review time is 24-48 hours, but it can take longer.

Template Statuses

StatusMeaningAction
APPROVEDTemplate passed review and is ready to useSend broadcasts and campaigns
PENDINGTemplate is under review by MetaWait for approval
REJECTEDTemplate did not pass reviewReview rejection reason, create a new template
PAUSEDMeta paused the template due to quality issues (low engagement, high blocks)Improve your messaging strategy, template may auto-resume
warning

Rejected templates cannot be edited and resubmitted. You must create a new template with the required changes. Pay attention to the rejection reason to avoid repeating the same issue.


Language Variants

You can create the same template in multiple languages. Each language variant is submitted and approved independently.

How to add a language variant:

  1. Open an existing template
  2. Click Add Language
  3. Select the language
  4. Write the template content in that language
  5. Submit for review

When sending a broadcast or campaign, you can choose which language variant to use. In campaigns with A/B testing, you can test different languages against each other.


Duplicating Templates

To create a template similar to an existing one:

  1. Find the template in your list
  2. Click the duplicate action
  3. Modify the name and content as needed
  4. Submit the new template for review

This is useful when you want a slight variation of a proven template without starting from scratch.


Tips for Template Approval

Writing templates that pass Meta review
  • Be clear about purpose -- The template should have an obvious use case (order update, promotion, appointment reminder)
  • Use proper variable examples -- Provide realistic example values that show how the template will be used
  • Avoid misleading content -- Do not imply urgency that doesn't exist or make false claims
  • Include opt-out options -- For marketing templates, add a quick reply button or footer text for unsubscribing
  • No prohibited content -- Avoid content related to alcohol, gambling, adult content, or other restricted categories
  • Correct grammar and formatting -- Poorly written templates are more likely to be rejected

Quick Reference

ActionHow To
Create a templateMarketing > Templates > Create Template
Check template statusView the status badge next to each template
Add a language variantOpen template > Add Language
Duplicate a templateClick duplicate action on template row
Use a templateSelect it when creating a broadcast or campaign

Next Steps