> 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-an-rcs-broadcast.md).

# Creating an RCS Broadcast

This guide walks you through creating and scheduling an RCS broadcast — from the Create Broadcast modal through Template Selection, Recipients & Content, Settings, Schedule, and the final Review.

The flow is the same regardless of message type up through most of Recipients & Content. Where a step differs by message type, this page tells you and links to the relevant sub-page.

### Prerequisites

* An approved and active[ ](https://claude.ai/overview/messaging-channels/rcs/setup-rcs/apply-for-rbm-agent.md)[RBM Agent](https://docs.quickreply.ai/overview/messaging-channels/rich-communication-service-rcs/setting-up-rcs/apply-for-rbm-agent).
* At least one Approved[ ](https://claude.ai/product-modules/templates/rcs-templates/overview.md)[RCS template](https://docs.google.com/document/d/1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg/edit?tab=t.f7btpha30dij) under that agent — Pending or Rejected templates cannot be used in a broadcast.
* Your recipient list ready, as an Excel sheet with a phone number column.
* Sufficient messaging credit balance to cover the broadcast.

### Step 0 — Create the Broadcast

Go to Broadcasts and click Create Broadcast. In the modal, fill in:

* Broadcast name (required).
* Category (required) — e.g., Promotional.
* Tags (optional) — for organizing and filtering your broadcasts.
* Select primary channel — choose RCS. (You can select a fallback channel later, in the Schedule step.)
* RBM Agent (required) — select the agent this broadcast will send from.

Click Save and Continue. The broadcast is created as a Draft, and you enter a 4-step wizard: Template Selection → Recipients & Content → Settings → Schedule. You can rename the broadcast anytime via the pencil icon next to its name, move between steps with Back / Save & Next, and the final step's button changes to Review.

Don't have an RBM Agent yet? When you select RCS, a banner appears with a Register RBM Agent button. Clicking it starts the[ ](https://claude.ai/overview/messaging-channels/rcs/setup-rcs/apply-for-rbm-agent.md)RBM Agent application process — the QuickReply support team will reach out to you.&#x20;

### Step 1 — Template Selection

Select the RCS template for this broadcast. The list shows all templates belonging to the RBM Agent you selected, with their Type, Status, and creation date.

* Only templates with an Approved status can be selected.
* Click a template to see its full preview on the right — message content, card actions, suggestion chips, and how many links are tracked. Click Details for template metadata.

Select your template and click Save & Next.<br>

### Step 2 — Recipients & Content

#### Recipients

Click Select Recipients. You can either Upload from an Excel sheet column, or Choose a Shopify Segment if you have your Shopify Store integrated.<br>

Upload from an Excel sheet column

Upon the selection of Excel Sheet Column, you will need upload an Excel Sheet file which has phone number column from your computer/local directory. Once uploaded, in the next modal, Select column of phone number:

* Choose which column contains the phone number.
* Skip header row (checked by default) if your sheet has column headers.
* Choose a Default Country Code, used for numbers that don't include one.
* A validation banner shows how many contacts are valid (e.g., "1 contact(s) are valid").

Click Proceed with \[N] contact(s). You can allow up to 100,000 contacts per broadcast. Once uploaded, the file appears with a download icon and a Select recipients again button to change it.

<img src="https://docs.google.com/drawings/u/0/d/1sy3JqpKp9kEQBYzO7LVFVwWw-R-IrOFIAxYP3vOywrpt_7OYM7oeNqSrc1dfoIielpVue2vJiX1MPLQ__2fO0cV4Az839u7OEMY4iZVtWMeRXZ0XpzmbDQ/image?w=624&#x26;h=285&#x26;rev=7&#x26;drawingRevisionAccessToken=2sdFcd3YyLEKiQ&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="285" width="624">

The Content sub-step stays locked until Recipients is complete — variable mapping depends on knowing which spreadsheet columns are available.&#x20;

#### Content — Body Variables (All Message Types)

For every template, once Recipients is complete, the Body section becomes editable. For each variable in the template (e.g., Body {{1}}), you can:

* Type a fixed fallback value directly (e.g., "Valued customer"), or
* Check From Excel Column and select which uploaded column supplies the value per recipient.

The live preview on the right updates as you fill these in.

Single Rich Card and Carousel Rich Card have additional content requirements — media, and values for any Dynamic buttons in the template. See the dedicated pages below for the full walkthrough:

* [Single Rich Card](https://docs.quickreply.ai/product-modules/templates/rcs-templates/how-tos/create-single-rich-card-message-template)
* [Carousel Rich Card](https://docs.quickreply.ai/product-modules/templates/rcs-templates/how-tos/create-carousel-rich-card-message-template)

<img src="https://docs.google.com/drawings/u/0/d/1TDpdjqP1av6t0Sytwm20UQkGYpq1CQznDWrqEjmZykg6TCt6Segat4EjytbNNzq-3rCVltuu9mhsKl6QLjjATRpMqc2ZTD_ZZxPfiFSopx2q_xegZM3cPQ/image?w=624&#x26;h=287&#x26;rev=8&#x26;drawingRevisionAccessToken=8nP8tEOfnFTEVA&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="287" width="624">

If your template is a Basic Text Message, Body variables are the only content required — continue to the next section below.&#x20;

Every form container in this step — Recipients, Content, and each sub-section — shows a green check icon in its top-right corner once it's complete, so you can see your progress at a glance.

#### Define User Attribute Mapping (Optional)

This works the same way for all message types. Toggle it on to add or update user profile attributes from your uploaded data:

* User Attribute — the attribute name (e.g., "Name").
* Map from excel column — select which uploaded column supplies the value (e.g., "Column B - Name").
* Check Override existing data to replace values that already exist for contacts.
* Click Add new attribute to map additional attributes.

<img src="https://docs.google.com/drawings/u/0/d/1lgrPLAenhYPLdlb5HBK1CkbJNqtf-6QPg_S9V0CSYyUXodwZFPFD-EaiOIIYSXOeQsnWcjrEMVp1f77NEtjRm6Zy-tTWlcxlTNW43ZGxW_j7hhrGipGdkg/image?w=624&#x26;h=283&#x26;rev=9&#x26;drawingRevisionAccessToken=NxP168zHHibzjg&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="283" width="624">

Click Save & Next once Recipients and Content are both complete.

### Step 3 — Settings

#### Action When Recipient Replies

This section adapts based on what your template contains:

* If your template has no Quick Reply button: a single field, "Bot to engage when recipient replies" — choose which bot handles replies (e.g., Default, Transfer Bot). A note specifies the reply window: "When user replies within 72 hours of receiving the message."\ <br>
* If your template has a Quick Reply button (available on Single Rich Card and Carousel Rich Card): this becomes two fields:\ <br>
* "Bot to engage when recipient replies with quick reply buttons" — the bot triggered when the recipient taps a Quick Reply button.
* "Bot to engage when recipient replies with anything else" — the bot triggered for any other reply (free text, other button types).
* The same 72-hour reply window note applies.\ <br>

<img src="https://docs.google.com/drawings/u/0/d/1t0OYKRNUCjY6RsKfx40bhRzZ2JmLNA-xbCajDijNnQH0qixYTtiUjyQXaVMvGiU8ATKwwLldXZwgECTD3F7CMPVlUKu-CW-c0WzxOHx7cseu45OzwwFeAg/image?w=624&#x26;h=281&#x26;rev=10&#x26;drawingRevisionAccessToken=OyJq6hMXMuAvOA&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="281" width="624">

#### Add UTM Parameters (Recommended)

This section only appears if your template contains a link/website button. Templates without a link button skip straight to Smart Audience Filtering.&#x20;

Toggle on to append UTM parameters to the trackable links in the broadcast, enabling source tracking in third-party tools like Google Analytics. A live Preview shows the resulting URL as you configure it — for example:

{your\_link}?utm\_source=QuickReply.ai\&utm\_medium=rcs\&utm\_campaign=bakery\_july\_promo

<img src="https://docs.google.com/drawings/u/0/d/17Rq6f-tG1tXhv6ZSwbOA4Bid5ENPA9kbBb-IUc3hcGysIMZHuSQXyHaVHywjTMqz2KWBA4B2Ghgy2q4qr42JbbmhjBwo4100YFEHhNUS8n3RsnsRhy4NUQ/image?w=624&#x26;h=284&#x26;rev=3&#x26;drawingRevisionAccessToken=40jQW9nbMD4z1Q&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="284" width="624">

Under UTM Parameter Settings, five parameters are available, each individually toggleable and fully editable:

| Parameter         | Description                    | Enabled by default? | Default value          |
| ----------------- | ------------------------------ | ------------------- | ---------------------- |
| UTM source        | The referrer                   | ✅                   | QuickReply.ai          |
| UTM medium        | Marketing medium               | ✅                   | rcs                    |
| UTM Campaign name | Product, promo code, or slogan | ✅                   | Your broadcast name    |
| UTM ID            | The ads campaign ID            | ❌                   | Empty — enter manually |
| UTM term          | Identify the paid keywords     | ❌                   | Empty — enter manually |

#### Smart Audience Filtering (Optional)

Same for all message types:

* Marketing Message Frequency Control — skip recipients who have already received a set number of marketing messages within a time window (e.g., 2 messages in the last 24 hours).
* Duplicate Filtering — skip recipients if a duplicate contact is found.

<img src="https://docs.google.com/drawings/u/0/d/1ADtUlyvoUa-zXXdh-XXtFva6GG_i0UJeZI-gaX-PetbLMqK8p_RhS45djCzaqpvB484pZ4VFBjgdmxPYCfol_V3lYA29RAv82OC61dJkIFy1it8osX3Hvg/image?w=624&#x26;h=287&#x26;rev=8&#x26;drawingRevisionAccessToken=TZrGoPea7tyefw&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="287" width="624">

Click Save & Next.

### Step 4 — Schedule

This step is identical for all RCS message types.

#### Sending Time

Set the Date and Time (India Standard Time) when the broadcast starts running.

Sending window: According to the RCS Guidelines, you can send RCS Promotional messages between 9 AM and 9 PM. Schedule your broadcast within this window.&#x20;

<img src="https://docs.google.com/drawings/u/0/d/14LO7bxBn4EolYiRfqkJjDMDcczY6BixnoTTVVCfswlOmh88NT2l5f6AWLYsuf5YCKm3Fsuwjf_2tEcDWiJ7EAr9_DCpZUcXttduXnBAtf9m9CKbpa0OSzg/image?w=624&#x26;h=285&#x26;rev=16&#x26;drawingRevisionAccessToken=FNc208C1_S2kMA&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="285" width="624">

#### Delivery Optimization (Recommended)

RCS does not provide a same-channel retry mechanism. The Retry on Same Channel option is disabled for RCS broadcasts. Delivery Optimization works exclusively through Fallback to Other Channels — continuing message delivery on another channel if RCS cannot deliver.

For the full configuration walkthrough, see[ ](https://claude.ai/product-modules/broadcasts/rcs-broadcast/how-to-use-rcs-broadcast-delivery-optimization.md)[How to Use RCS Broadcast Delivery Optimization](https://docs.quickreply.ai/product-modules/broadcasts/delivery-optimisation).&#x20;

To configure fallback, click + Set Fallback 1 Channel under Fallback Channel Settings and choose the fallback channel and message.

<img src="https://docs.google.com/drawings/u/0/d/1cGrl3MspjkGgBJMnHdfPlf9J-wox_IZP2QQToDnRdokx5uLmyr0K7XmzKScJL8F3k133lXr8vFhbXYsg4IWr2zmhc1rzBr_8dh_Qf-FQ7P5YckcloaaJQQ/image?w=624&#x26;h=288&#x26;rev=8&#x26;drawingRevisionAccessToken=plp3YvzGq7WBSA&#x26;ac=1&#x26;fmt=svg&#x26;parent=1qOUfC_gtaXUpevTfs4bW0JvAYWxYTUYHSZ38B9ANYbg" alt="" height="288" width="624">

#### Send Test Message

Enter a phone number (with country code) to send a test. Note that in test messages:

1. Variables are populated with their fallback values.
2. User attributes are not updated.

<img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2Fext4faILjtLHDWdT6s24%2Funknown.png?alt=media&amp;token=77d5897e-fd96-4cb3-a4a3-c8671f5369da" alt="" height="269" width="624">

Click Review to proceed to the final review page.

### Step 5 — Review & Schedule

The Review page summarizes everything before the broadcast goes live, with an edit (pencil) icon on each section to jump back and make changes:

* Estimated Spend — calculated based on each recipient's country code, shown alongside your Current Messaging Credit Balance. A green confirmation appears when you have sufficient credits.
* Schedule — sending date & time and the Delivery Optimization mode.
* General Information — broadcast name and tags.

<img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FH9a41srttcBPPR14yFJh%2Funknown.png?alt=media&amp;token=0d8053a4-94f2-48d1-9c2a-83114f4274bf" alt="" height="289" width="624">

* Template Preview — the fully rendered message.

<img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FyDytzTxtmOWDpnPuNsW5%2Funknown.png?alt=media&amp;token=a0548221-9b59-45b8-a09a-fc57b2cc986f" alt="" height="287" width="624">

* Recipients — contact count and source file.
* Settings — UTM tracking status and whether any contacts will be skipped by Smart Audience Filtering.

<img src="https://1325107618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FePPO97Ju334NhhCzTEZP%2Fuploads%2FcppBIn1ADBC8Wu8X4ZTp%2Funknown.png?alt=media&amp;token=adc5489c-b798-4377-af48-ce949deff764" alt="" height="281" width="624">

When everything looks right, click Schedule Broadcast. Your broadcast is now scheduled and will start running at the configured time.

Insufficient credits? Top up your messaging credit balance before scheduling, then use the refresh icon next to the balance to re-check.&#x20;

\ <br>
