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

# How to create a Message Template Campaign for WhatsApp API

> Create a WhatsApp API message template with the two-step builder: set up the template, choose a type (Standard, Carousel, or Catalog), add your content, and submit to Meta.

For a step-by-step guide on how to complete this process, please visit [our YouTube Channel.](https://www.youtube.com/@bitbybit.studio/videos)

<iframe width="560" height="315" src="https://www.youtube.com/embed/ar6LzKkulnE" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; fullscreen" allowfullscreen />

Craft reusable message templates with dynamic variables to simplify communication and personalize your WhatsApp API campaigns. Perfect for reminders, promotions, or updates, templates ensure consistency and save time.

The template builder is a **two-step wizard**: first **Template setup**, then **Message content**.

## Step 1: Open the template dashboard

Go to the [**WhatsApp API Campaign**](https://app.bitbybit.studio/misc/whatsapp-api-settings) template dashboard, then click **Create new template**.

<img src="https://mintcdn.com/asmaraku/AQAAZovuAirJGOCE/images/image-73.png?fit=max&auto=format&n=AQAAZovuAirJGOCE&q=85&s=1f93ac86fc806474f4a0268d3967e80c" alt="Image" width="3840" height="2266" data-path="images/image-73.png" />

## Step 2: Complete Template setup

The first step of the wizard is **Template setup**. Fill in:

* **Template name** — required. The **Next** button stays disabled until you enter a name.
* **Languages**
* **Message category** — see below.
* **Template type** — see below.

<img src="https://mintcdn.com/asmaraku/5XtCf95lNX3DTG_E/images/wa-template-setup.png?fit=max&auto=format&n=5XtCf95lNX3DTG_E&q=85&s=b593af9071a9888b373a21733eb8fb47" alt="Template setup step showing the unsubscribe info panel, Template name, Languages, Message category, and Template type fields with a disabled Next button" width="1037" height="870" data-path="images/wa-template-setup.png" />

### Select a Message category

In the **Message Category** dropdown, choose the category that best describes your template:

* **Marketing** (default) — Promotional messages such as offers, announcements, or product updates.
* **Utility** — Transactional messages such as order confirmations, shipping updates, or account alerts.

<img src="https://mintcdn.com/asmaraku/5XtCf95lNX3DTG_E/images/wa-template-message-category.png?fit=max&auto=format&n=5XtCf95lNX3DTG_E&q=85&s=6b046aca1d3c72506e74da89eca261dd" alt="Template setup form with the Message category dropdown highlighted and set to Marketing, alongside the Template name, Languages, and Template type fields" width="947" height="377" data-path="images/wa-template-message-category.png" />

<Warning>
  If Meta has already reviewed and reclassified your template's category, the **Message Category** field is disabled and shows the helper text: *"Category set by Meta. Cannot be changed."* To change it, you must appeal through [Meta Business Support](https://business.facebook.com/latest/whatsapp_manager/message_templates/).
</Warning>

### Choose a Template type

Pick one of three template types. The phone preview updates to match your choice.

* **Standard** — a text-based template, with optional header, footer, and buttons.
* **Carousel** — a scrollable set of cards, each with its own media and buttons.
* **Catalog** — showcases products from your catalog.

<img src="https://mintcdn.com/asmaraku/5XtCf95lNX3DTG_E/images/wa-template-type.png?fit=max&auto=format&n=5XtCf95lNX3DTG_E&q=85&s=0939688162d07ccc8fe0b5385bfbdd2a" alt="Template type selector highlighting the Standard, Carousel, and Catalog options" width="1037" height="181" data-path="images/wa-template-type.png" />

<Note>
  If you set the **Message category** to **Utility**, the template type is locked to **Standard** and the type options are hidden.
</Note>

The **unsubscribe info panel** appears in this **Template setup** step, so you can review opt-out behavior before adding your content. For details on how unsubscribe works, see [Understanding the Unsubscribe Option for Messages](/bitchat/understanding-the-unsubscribe-option-for-messages).

When you're done, click **Next** to move to **Message content**.

## Step 3: Add your Message content

The second step of the wizard is **Message content**. The fields available here depend on the template type you chose.

<img src="https://mintcdn.com/asmaraku/5XtCf95lNX3DTG_E/images/wa-template-message-content.png?fit=max&auto=format&n=5XtCf95lNX3DTG_E&q=85&s=bbd31b51a31cb71b7baca48c927a57ba" alt="Message content step showing the Header type dropdown, Message body with Add variable, Footer, and Add button options" width="1042" height="853" data-path="images/wa-template-message-content.png" />

### Message body and variables

Enter your message content, then add dynamic variables by clicking **"Add Variable +"** and selecting **"Variable"** from the dropdown. Read [How to Use Dynamic Variables in Automation Messages](https://knowledge.bitbybit.studio/bitcrm/how-to-use-dynamic-variables-in-automation-messages) for more details about using variables.

### Header and Footer (optional)

You can add a **Header** and **Footer** to give your message more structure. Both fields are optional.

#### Header

Choose one of four header types from the **Header** dropdown:

| Header type  | Format      | Max size      |
| ------------ | ----------- | ------------- |
| **Text**     | Plain text  | 60 characters |
| **Image**    | JPEG or PNG | 10 MB         |
| **Video**    | MP4         | 10 MB         |
| **Document** | PDF         | 10 MB         |

<img src="https://mintcdn.com/asmaraku/-tS36Y53n-L26m_a/images/wa-template-header-type.png?fit=max&auto=format&n=-tS36Y53n-L26m_a&q=85&s=debf4acdbf266e6b4ce08f4f4d567075" alt="Header type dropdown showing No header, Text, Image, Video, and Document options" width="1307" height="354" data-path="images/wa-template-header-type.png" />

#### Footer

Enter a short line of text to appear below the message body. Maximum **60 characters**.

<img src="https://mintcdn.com/asmaraku/5XtCf95lNX3DTG_E/images/wa-template-footer-field.png?fit=max&auto=format&n=5XtCf95lNX3DTG_E&q=85&s=3492a8cccfa89511e0a9f4e1229addb2" alt="Footer (Optional) field highlighted in the template builder, with placeholder text &#x22;Type STOP to unsubscribe&#x22; and a 0/60 character counter, above the Add button option" width="1042" height="361" data-path="images/wa-template-footer-field.png" />

<Warning>
  If you are on the **Free plan**, the footer is locked and shows **"Powered by bitbybit studio"** branding. Upgrade to a Basic plan or above to remove the branding and fully customize your footer.
</Warning>

<img src="https://mintcdn.com/asmaraku/-tS36Y53n-L26m_a/images/wa-template-footer-locked.png?fit=max&auto=format&n=-tS36Y53n-L26m_a&q=85&s=600f15fd4b2648ad78f14ddc882f0023" alt="Locked footer field on Free plan showing &#x22;Powered by bitbybit studio&#x22; and an upgrade prompt" width="1183" height="202" data-path="images/wa-template-footer-locked.png" />

#### Availability by template type

| Template type                           | Header | Footer |
| --------------------------------------- | ------ | ------ |
| WhatsApp Standard (Marketing & Utility) | ✓      | ✓      |
| WhatsApp Catalog                        | Hidden | ✓      |
| WhatsApp Carousel                       | Hidden | Hidden |

**Buttons:** If your template includes a reply button, WhatsApp Form, or call-to-action button, the header and footer remain visible.

### Buttons (optional)

Add interactive buttons to your message by clicking **Add button**. Buttons are now added directly through this action — there is no separate switcher to enable them.

You can add:

* **Reply button** — lets recipients respond with a quick, predefined reply.
* **Call-to-action** — links to a web URL, product, or collection.
* **WhatsApp Form** — collects structured responses from recipients.

For a full walkthrough of each button kind and its settings, see [How to Create a Campaign with Button Options](https://knowledge.bitbybit.studio/bitcrm/how-to-create-a-campaign-with-button-options).

### Carousel cards

For a **Carousel** template, add and arrange cards in the card settings:

* **Reorder cards** by dragging them into the order you want.
* Set each card's **media type** to **Image** (JPEG or PNG) or **Video** (MP4).

### Catalog

A **Catalog** template showcases products directly from your connected WhatsApp catalog, so recipients can browse your items inside the message. Configure the catalog content in the Message content step. To set which catalog your products come from, see [How to Choose Your WhatsApp Catalog Source](https://knowledge.bitbybit.studio/whatsapp-commerce/how-to-choose-your-whatsapp-catalog-source).

## Step 4: Preview your message

Preview your message on the right sidebar as you build it.

<Frame>
  <img src="https://mintcdn.com/asmaraku/AQAAZovuAirJGOCE/images/image-84.png?fit=max&auto=format&n=AQAAZovuAirJGOCE&q=85&s=51d790ba6d6aa563f3e0e1ea946f8cd3" alt="Image" title="Image" className="mr-auto" style={{ width:"100%" }} width="570" height="488" data-path="images/image-84.png" />
</Frame>

## Step 5: Submit to Meta

Click **Save template** to submit it to Meta for review.

<Frame>
  <img src="https://mintcdn.com/asmaraku/5XtCf95lNX3DTG_E/images/wa-template-save.png?fit=max&auto=format&n=5XtCf95lNX3DTG_E&q=85&s=88275f8226d1677a64a8c27fd3130d12" alt="Template builder showing the message body, footer, and button section with the &#x22;Save template&#x22; button highlighted" title="Save template" className="mr-auto" style={{ width:"100%" }} width="1332" height="330" data-path="images/wa-template-save.png" />
</Frame>

Once your message template is created, test your campaign to ensure it succeeds, or see [How to Create a New WhatsApp API Campaign](https://knowledge.bitbybit.studio/bitcrm/how-to-create-a-new-whatsapp-cloud-api-campaign-with-bitbybit) to learn more.
