WatificationDocs
ChannelsTemplates

Create a message template

Set up a message template, add content and buttons, and submit it to Meta for review.

Create a message template when you need reusable, approved content for WhatsApp. The builder guides you through Set up template, Edit template, and Submit for review, with a preview as you work.

Before you start

Open Channels, choose your WhatsApp account, then select Templates. Have your message text, language, sample variable values, and any header media ready.

Who can do this: the workspace owner or members whose role includes viewing channel connections and viewing and managing templates. Using a form also requires viewing forms.

Steps

Set up template

Select Create template. Choose Marketing, Utility, or Authentication in the category controls (1), then choose the message type. Select Next (2).

For Marketing and Utility, you can choose Form to attach a published form. See publish and send a form.

Edit template

Enter Template name and choose Language. Use 1-512 lowercase letters, numbers, or underscores for the name. Add the content described below, then select Next.

Submit for review

Review the summary and message preview. Use Edit beside a summary item or Previous to correct it. Select Submit for review when ready.

Start with the category and message type.

Start with the category and message type.

Scroll to explore the screenshot. Use arrow keys when the image is focused.

Add standard message content

For Marketing and Utility templates, add your message in Content.

PartWhat you can add
Header - OptionalText, an image, a video, or a document. A text header allows 60 characters and one variable, without line breaks or Markdown formatting.
BodyRequired message text, up to 1,024 characters. Select text and use Bold, Italic, Strikethrough, or Monospace in the formatting toolbar.
Footer - OptionalUp to 60 characters. Variables are not supported here.

For a media header, upload a sample: JPEG or PNG up to 5 MB, MP4 up to 10 MB, or PDF up to 16 MB. Wait for the upload to finish before continuing.

Write the body and supply sample values for its variables.

Write the body and supply sample values for its variables.

Scroll to explore the screenshot. Use arrow keys when the image is focused.

Use variables

Choose Type of variable: Number for numbered variables such as {{1}}, or Name for named variables such as {{customer_name}}. In Body (1), place the cursor where a value belongs and select + Add variable (2).

  • Numbered variables must first appear in order, starting with {{1}}, without gaps.
  • Named variables must start with a lowercase letter and use lowercase letters, numbers, or underscores.
  • Add fixed text before and after body variables. A body cannot start or end with a variable.
  • Fill in Variable samples for every header and body variable. Use fictional examples, without customer information.

If the builder warns about too many variables, add more fixed text and separate variables with words.

Add buttons

In Buttons - Optional, select Add button. Enter the button text and the action details.

ChoiceLimit and details
Custom, under Quick reply buttonsUp to 10 quick replies. Customers tap a reply to respond.
Visit websiteUp to 2. Enter an HTTP or HTTPS URL. A URL can have one trailing variable; provide its sample value.
Call phone numberUp to 1. Choose the country and enter the phone number.
Copy offer codeUp to 1. Provide an offer-code sample of up to 20 characters. Meta supplies the localized button text.

Button labels allow up to 25 characters and cannot contain variables. Quick replies stay grouped together.

You can add up to 10 buttons in total, including the form button if you chose Form. More than 3 buttons appear in a list for customers.

Set authentication options

Authentication uses Meta's fixed verification-code content instead of a custom body. In Code delivery setup, choose a method:

  • Copy code lets customers copy and paste the code into your app or website.
  • One-tap autofill lets customers tap to fill the code in your Android app.
  • Zero-tap autofill sends the code to your Android app automatically. Accept the displayed terms before continuing.

For autofill, ask your app developer for Package name and the 11-character App signature hash. You can set the Copy code and Autofill button text, up to 25 characters, or leave them blank for Meta's localized defaults.

In Content, you can select Add security recommendation and Add expiry time for the code. Set Expiry time (minutes) from 1 to 90 if you enable expiry text. Your app still needs to enforce the code's expiry; this option adds the notice to the message.

Set the message validity period

Utility and Authentication show Message validity period. Turn on Set custom validity period for your message, enter Validity period, and select Unit as Seconds or Minutes.

CategoryCustom range
Utility30 seconds to 12 hours.
Authentication30 seconds to 15 minutes.

This controls how long WhatsApp retries an undelivered message. It is separate from the verification code's expiry. Leave the switch off to use Meta's default. Marketing does not show this setting in the builder.

Good to know

Meta usually reviews new templates within 24 hours. You can send the template once it is approved. If submission fails, correct the highlighted fields or read the error before trying again. Discard opens a confirmation before you leave unsaved work.

See template statuses, template library, and OTP for developers.

On this page