> For the complete documentation index, see [llms.txt](https://docs.quickreply.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.quickreply.ai/product-modules/broadcasts/creating-a-broadcast/creating-a-whatsapp-broadcast.md).

# Creating a Whatsapp Broadcast

## Setup The Foundation

Go to 'Broadcasts' from the main navigation panel on the QuickReply app.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FcuhCgv5g9Zj0cA8U6P9o%2Funknown.png?alt=media\&token=f778edcc-a64c-4fcd-a494-0a0dc474a571)

Click on ‘Create WhatsApp Broadcast’

*

```
![](/files/UzGSQOl18tqzKvFyiaNI)
```

* Give a name to your Broadcast.
* Select the Broadcast category between:
* Add 'Tags' to broadcast to help in easy identification later
* Either choose an existing tag from the dropdown
* Or type in and create a new tag
* Click on 'Save & Continue.'

<div><img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FaUGmcUqoKFTbdFEpJCEq%2Funknown.png?alt=media&amp;token=47a26c5e-ab54-437b-9e2c-9a4d46957f62" alt="" height="356" width="284"> <img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FIwvtCLEYHhhuC8sFgzxt%2Funknown.png?alt=media&amp;token=90ab2dc2-9b97-401a-826b-bcbf27faec3f" alt="" height="358" width="280"></div>

### Select a Template

* Choose a Template from the list approved by Meta.

Preview the template on the right and ensure it aligns with the campaign goal.

<img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FA1cnffRjnRila7oh4z93%2Funknown.png?alt=media&amp;token=ddedc8df-198c-4c60-8b99-291a9601480c" alt="" height="294" width="636">

* Click on 'Save & Next'
*

```
![](/files/lEbsqVde5RzB8sCwm2Pn)
```

### &#x20;Select Recipients

* Click on 'Select Recipients'

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FM7GhQ8cA4DK7YSVfaof9%2Funknown.png?alt=media\&token=553cf1f3-acde-47b0-9b3b-39c981775fd3)

* Select from:

OR

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2F69Gh2Q8OfqN1DUcrulJ5%2Funknown.png?alt=media\&token=18010ace-e51b-44ef-b3af-e40bc5306e55)

<img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2Fsqh0UlCygCvFMYOB09nn%2Funknown.png?alt=media&amp;token=0327eac6-c306-42df-8c23-9692b085b71a" alt="" height="358" width="281">

### Provide Content for Variables

* Upload an image/video/document (if any) from your device while making sure that it is in the recommended size and format
*

```
<img src="/files/r0poBOHUJNyoo1TqMRih" alt="" height="204" width="642">
```

* Define the variables in the body:
* You can define variable values as
* Static (enter manually) OR
* Dynamic
* Select attributes like 'First Name,' 'Last Name,' and so on from the Shopify data, if your recipient's source is a Shopify segment.
* Select Excel column names like "Column A", "Column B" from the Excel file if your recipient's source is an Excel file
* If the selected data isn't available, add a Fallback Value to be used. The same fallback value will be displayed in the preview.
* Define the content of the URL button:
* Add a URL that will redirect users upon clicking. It must start with "http" or "https"
* Static values
* If a variable has a consistent value for all recipients, input that value directly into the text box.
* Dynamic values
* If you want to send different links to each recipient, you can use an excel file column or shopify segement data to populate values.
* You will also need to define the fallback value to be used incase of an error value.
* For an excel column, QuickReply smartly identifies error urls and asks you either to
* Skip those recipients or
* Use fallback value

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FJygQkAGFFGagLRUQdS4v%2Funknown.png?alt=media\&token=eeb8a7ee-1de5-43c7-ba70-7548581470a8)

### Map User Attributes (optional)

Using this option, you can map attributes of a user profile in quickreply with the updated values from the values provided.

* Click on the toggle to enable attribute mapping

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FKmcSQYkBioRx212SdiHm%2Funknown.png?alt=media\&token=d0d1ecae-ef26-4e7b-9a81-67d005491df7)

* Click on Add new attribute.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FXRVxh1OXG8csuI835uQA%2Funknown.png?alt=media\&token=b1a92900-f23b-4317-ae20-7487ac401c94)

* Select the corresponding user attribute field (e.g., Name, Email, Other user attribute).
* Define excel column or Shopify segment data to use as source data for attribute. If you want to overide the existing attribute data of a customer with updated data provided, check this option.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FLO2gd4S6YxcwEzNIoMvc%2Funknown.png?alt=media\&token=de910864-7f55-47ee-9abb-d1fbb2052433)

* Click on 'Save & Next' to move to the next screen

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FsRSBgVfFWJhV4oV7D1Op%2Funknown.png?alt=media\&token=f5cef9c5-afe4-44d1-9489-3bedcaa15c16)

### Bot Mapping for 2-way Broadcast Engagement<br>

Here you can define which bots to engage when recipient replies

* By default you will need to,
* Define 'Bot to engage when recipient replies with anything else'
* Choose a pre-trained or custom bot from the dropdown
* If your template has atleast 1 quickreply button, you will get the following option to
* Define 'Bot to engage when recipient replies with quick reply buttons'
* Choose a pre-trained or custom bot from the dropdown

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FJPSs0daHYZMEkEsbqHKk%2Funknown.png?alt=media\&token=0e0394a6-6615-4684-94c5-30bf76f649b8)

### UTM Parameters

* Enable UTM Tracking in the broadcast settings.
* Define parameters:
* Source (e.g., WhatsApp)
* Medium (e.g., Broadcast)
* Campaign Name (e.g., Broadcast Name)
* ID
* Term

This allows source tracking within third-party reporting tools such as Google Analytics.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FSyEpHqHHuQrbqv5pp4Uc%2Funknown.png?alt=media\&token=93cb63f8-3a7e-45a6-8cf4-6b66efada3d8)

### Smart Audience Filtering

* Enable filters such as:
* Dead Audience Filtering<br>

Skip recipient(s) if the contact has not engaged with your WhatsApp number for the last desired number of days.

* Marketing Message Frequency Control

Skip recipient(s) if the contact has already received a certain number of marketing message(s) in a defined time.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2F501ciHcoiIDvwWlNyWX5%2Funknown.png?alt=media\&token=e29180dc-71f0-4959-9132-e5555e257ee0)

* Duplicate Filtering

This will be enabled by default to skip recipient(s) if a duplicate contact is found.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FyJ0ezxDnGCa8bafLd3m7%2Funknown.png?alt=media\&token=73ad4eb8-73ae-4e97-a214-9bdd3a6fc049)

<br>

### Messaging Limit Check

WhatsApp has daily[ messaging limits](https://docs.quickreply.ai/overview/messaging-channels/whatsapp/concepts#messaging-limits) based on business verification status. Be defining the messaging limit, you automate what should be done when your limit exceeds.

You can either:

* Pause broadcast (recommended)
* The broadcast will automatically continue as soon as the limit is available

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2F8jtImffPUrNJKh1pJlra%2Funknown.png?alt=media\&token=25ca3f4a-8cd3-4e0b-a706-fbcd400ad7cc)

* Skip the Messaging limit check and try sending it to all
* Click on 'Save & Next' to move to the next screen

### Schedule Time

Determine when the broadcast starts running:

* Click on the 'calendar' icon to choose your preferred date and time. Latest you can schedule a broadcast is 15 minutes from current time.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2F7xn1k20026MKjwUOh2gC%2Funknown.png?alt=media\&token=5ba45f16-169b-4fe5-9afc-3556ea56516d)

* Hit 'Confirm' to schedule

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2Fe0bvAZ8yxfQLt0wwvhBN%2Funknown.png?alt=media\&token=379a3232-d466-436b-829a-d209df0ff2fb)

### Retry for Failed Messages

QuickReply provides 2 methods to recover marketing messages failed due to Meta's[ frequency capping](https://docs.quickreply.ai/overview/messaging-channels/whatsapp/concepts#frequency-capping):

* Auto-Retry of Failed Marketing Messages
* In this, the system retries the delivery of failed messages at different times defined by the user.
* While setting up auto-retries, a maximum of 3 retries can be set and we recommend scheduling retries with a minimum 24-hour interval to maximize the chances of successful deliveries.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2Fc9frP3ig2v0rh08zxDlk%2Funknown.png?alt=media\&token=8e3d61ce-f8a4-4bf5-a1e5-b15431b26b1a)

* Smart Utility Fallback
* For the remaining failed messages, the system sends a utility message that seeks consent from the customer to re-deliver the failed message. If the customer engages, the marketing message is delivered instantly.
* This feature involves sending an additional utility message for each failed message which incurs extra cost.
* The marketing template message is converted as a session message and sent when the user engages with the utility message. Important - this converted message is charged the same as a marketing message.
* We recommend using this method after auto-retries to minimize the extra cost incurred.
* Smart Utility Fallback currently supports standard marketing templates only.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FizgEONvDh8x7yCU8W0FG%2Funknown.png?alt=media\&token=7df13df6-bc4a-4237-adb0-b6c627649f9f)

### Send Test Message

Before sending the broadcast, test it on a sample recipient.

* While sending test message:
* The variables will be populated with values from the fallback value.
* The user attributes will not be updated.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FUqB7gtYzUnxA07P8qhso%2Funknown.png?alt=media\&token=821cf8db-5830-4d3a-bacf-74dbeba89c29)

### Review and Publish

Review the:

* Estimated spend

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FMZXTCAtWkyr8accNQmFR%2Funknown.png?alt=media\&token=a9ed8176-6113-421d-aea5-148987546043)

* Message, recipients, and settings

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FbZ3pI1RiLxGcJAJZy2aC%2Funknown.png?alt=media\&token=4296af49-1268-47fc-8964-974b91632b0e)

Settings<br>

Click 'Schedule Broadcast' and voila! You have successfully scheduled your first broadcast message.

![](https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FMvVNt7ZQsXLu5dxJ7qe0%2Funknown.png?alt=media\&token=132718b8-fed1-4b4c-bdcf-aa370d0bb568)

<br>
