Send SMS messages via Customer Journey
To send SMS using Customer Journey Builder, add the SMS element to your journey and configure content, message type, delivery settings, and the optional split flow.
Add the SMS element
Anchor link toIn Customer Journey Builder, add the SMS element to the canvas.

Configure SMS content
Anchor link toChoose an SMS preset, or click Create content to build a new one. To set up presets in advance, see SMS presets. The preset list starts with the newest presets. To change the order, click its sort button.

Choose the message type
Anchor link toIn the SMS element, select Marketing message or Transactional message:
- Marketing message: For campaigns and promos. All rules and limits apply. Respects: Frequency capping and Silence period. Excludes: the control group.
- Transactional message: For operational or service messages. Rules and limits don’t apply. Bypasses: Frequency capping. Sent to: the control group.
No message type is preselected. Until you choose one, the element shows a Message type not selected warning. If the element is reached only from an Audience-based entry, Marketing message is shown with a Default badge. Choose Transactional message if the message is a service one.

Overwrite message personalization (optional)
Anchor link toWhen you select a preset, you can overwrite how the message is personalized:
- Personalise message with event attributes: Enable this option to use event attributes or API-based entry placeholders instead of device tags as value sources in message content and presets. Learn more
- Overwrite Liquid placeholders: Enable this option to use values from the selected Event in Liquid personalization. Liquid tags that match event attribute names will use values from the event. Learn more
- Use Vouchers: Enable this option to use vouchers in message content. Learn more

Configure message delivery settings
Anchor link toSet frequency capping
Anchor link toUse Frequency capping to control how often users receive SMS messages, helping prevent message fatigue and opt-outs.
You can choose one of the following options:
- Use global frequency capping settings Apply the project-wide SMS limits set in your Global frequency capping settings. Example: If the global limit is 3 SMS messages in 9 days, any additional messages will be skipped.
- Send messages without global frequency capping Send the SMS regardless of how many messages the user has already received. Use with caution to avoid over-messaging and compliance issues.
- Use custom frequency capping Set a custom SMS limit specifically for this message step. If the user has reached the limit, they will skip this message and move to the next step in the journey. Learn more
Set send rate limits
Anchor link toThe Send rate setting controls how quickly messages are delivered to your audience. Adjusting the send rate helps you manage delivery speed, prevent backend overload, and improve overall deliverability.
Choose one of the following options:
- Use global send rate settings Applies the send rate limits configured in your project’s message delivery settings. If no limits are set, all messages will be sent immediately. Use this option when you want delivery speed to follow your project’s default rules. Learn more about global send rate limits

- Send messages without global send rate Sends messages as fast as possible, ignoring any global send rate limits. Use with caution to avoid overloading your backend or creating delivery spikes.

- Use custom send rate Overrides the global send rate for this message only. Allows you to specify the number of messages sent per minute, giving you full control over delivery speed. Messages will be sent at the custom rate you define in the message element.

Flow options
Anchor link toEnable the Split flow depending on whether this message is delivered or not toggle to split the journey based on whether the SMS is delivered.
Then, set the delivery waiting time.
If the SMS is delivered within the specified time period, the "delivered" branch will be activated. Maximum 7 days.

Branch on RCS reply buttons
Anchor link toWhen the selected SMS preset has an RCS template with quick reply buttons, the element branches on the button the user taps instead of on delivery. It gets a branch for each button, labeled with the button text, plus a Not match branch, and the canvas shows Wait for reply: 24 hours under it.

- The user waits up to 24 hours for a tap. A tap sends the user down that button’s branch. If there’s no tap within 24 hours, or the phone doesn’t support RCS, the user goes to Not match.
- The Split flow depending on whether this message is delivered or not toggle isn’t available, because the buttons branch the element.
- A button whose text is an opt-out keyword (STOP, STOPALL, UNSUBSCRIBE, CANCEL, END, or QUIT) unsubscribes the user. Its branch stays on the canvas, but a tap on it never sends the user down that branch.
- Only quick reply buttons get branches. A button that opens a link doesn’t.
The branches come from the copy of the buttons Pushwoosh saves with the preset. If you change the buttons in Twilio, open the preset and save it again to update the branches.
Finalize and save the journey
Anchor link toComplete the journey setup, ending each branch with an Exit element or by leaving it without an outgoing connection. If you split the flow, set up actions for users routed to the other branch.
Click Launch campaign to run the Pre-launch check and fix any listed issues, then confirm by clicking Launch.