Skip to content
Last updated

SMS Channel

Engage Studio's SMS channel lets you send promotional text messages to US customers via short code. The process involves four steps:

  1. Provision your SMS sender number and connect it to your workspace
  2. Build your target audience in a Parent Segment with consent filtering
  3. Create and configure an SMS campaign
  4. Review delivery results in the events table

Prerequisites

Before creating an SMS campaign, the following must be in place:

  • A short code has been provisioned by Treasure AI and assigned to your workspace
  • Your Parent Segment includes a phone number column in E.164 format (e.g., +12125551234)
  • Consent filtering is applied at the segment or activation level to exclude opted-out recipients
  • Quiet Hours settings are configured for your audience's time zones
Important

Provisioning a short code requires lead time. Contact your Treasure AI account team to initiate the request before building your campaign.

Campaign Setup

Creating a Campaign

  • Click Create Campaign
  • Select SMS as the channel
  • Enter a Campaign Name
  • Click Create
imageimage

Selecting Target Audience

  • Choose a Parent Segment and Target Segment
  • Click Next
image
Important

Opted-out recipients are not automatically excluded from your segment. You must filter them out at the CDP level (in your Parent Segment or Activation) before launching. Treasure AI records opt-out events to the subscription_events table — use this data to keep your segments current.

Composing Your Message

Create your message content.

image
FieldDescriptionNotes
SenderThe send number (short code) assigned to this workspaceConfigured by Treasure AI during provisioning
Message BodyThe text sent to recipientsGSM-7: 160 chars per segment. Unicode: 70 chars per segment.
Segment CountLive indicator of how many SMS segments your message usesDisplayed in the editor. Each additional segment adds cost.

Personalizing your message

Engage Studio offers the ability to personalize your messages using profile attributes from your CDP segments.

To personalize, add a liquid template.

Example: Hi {{ profile.first_name }}, your offer is ready.

Allowed Delivery Time

Allowed Delivery Time settings prevent messages from being sent outside of a pre-defined time window. This allows you to comply with federal quiet hours.

image
FieldDescriptionExample
TimezoneIANA timezone for the send windowAmerica/New_York
Allowed StartEarliest time messages can be sent08:00
Allowed EndLatest time messages can be sent20:00
Weekday Overrides (Always On Campaigns only)Optional per-day restrictionsDisable sends on Sundays
Note

The send window applies uniformly to all recipients in your segment — it is not resolved per-recipient timezone. If your audience spans multiple US time zones or states with stricter quiet hours than the federal minimum, we recommend splitting your segments by region in the CDP before launching.

Note

Messages blocked by Quiet Hours are logged as quiet_hours_blocked in the delivery events table. They are not retried automatically. Launch a new campaign to re-send to blocked recipients.

US Federal requirement (TCPA): 8:00 AM – 9:00 PM recipient local time. Some states enforce stricter cutoffs (e.g., Florida: 8:00 PM). Treasure AI recommends applying the most restrictive applicable window for your audience.

Selecting Delivery Schedule

Note

This section references guidance from the One-off Campaign and Always On Campaign help documentation.

OptionDescriptionTypical Use Case
Send immediatelySends as soon as you launch the campaignFlash promotions, time-sensitive alerts
Schedule for laterSends at a specific future date and timePlanned campaigns, coordinated multi-channel sends
Tip

For large campaigns, schedule delivery in advance to allow audience preparation and Quiet Hours validation to complete before send time.

Selecting Activation

Select the appropriate activation configuration.

image

Details

FieldDescriptionNotes
Activation NameSystem-generated unique identifierauto-assigned
Enable Activation ActionsToggles whether Activation Actions are used for deliveryIf disabled, the campaign will launch without Activation Actions enabled
AuthenticationSpecifies the Engage connector used for delivery
Batch SizeRecords processed per batch1,000 (default and max), 1 (min)
Thread CountParallel send threads1 (default), 10 (max)

Output Column Mapping

image

Map segment data to the SMS delivery pipeline. Engage Studio uses Liquid syntax ({{ profile.column_name }}) to substitute values per recipient at send time.

Required:

  • phone_number → recipient's phone number (must be in E.164 format, e.g., +12125551234)

Optional custom fields (used in message personalization):

  • Any additional columns referenced in your Liquid template, e.g., first_name, loyalty_points
Important

All columns referenced as Liquid variables in your message body must be covered by output mappings.

UTM Tracking

image

UTM parameters are tags appended to every URL in your message body, enabling analytics platforms like Google Analytics or Adobe Analytics to attribute traffic to a specific campaign.

  • Available for all campaign types (One-off and Always-on)
  • Engage Studio automatically appends parameters to all links when enabled

Toggle:

  • On: UTM parameters appended to all links
  • Off: Links sent as-is, no parameters appended

When toggled on, Medium, Source, and Campaign are required fields.

Tip

UTM fields remain editable when a campaign is in a Paused state, allowing you to adjust tracking parameters before resuming delivery.

UTM Parameter Fields

FieldUTM ParameterRequiredDefaultDescription
Campaign IDutm_idAuto-generatedRead-only unique system identifier
Mediumutm_mediumYessmsMarketing channel
Sourceutm_sourceYestreasureaiTraffic referrer; supports Liquid syntax e.g., {{profile.segment}}
Campaignutm_campaignYes(user-defined)Campaign name; e.g., spring_sale, product_launch_2026
Source Platformutm_source_platformNotreasureaiPlatform directing traffic
Marketing Tacticutm_marketing_tacticNo(empty)Targeting criteria; e.g., remarketing, prospecting

Validation Rules

Character Limits:

  • Medium, Source, Source Platform: max 100 characters
  • Campaign, Marketing Tactic: max 40 characters

Allowed Characters: Letters (a–z, A–Z), numbers (0–9), hyphens (-), underscores (_), periods (.). Source also permits { and } for Liquid syntax. Spaces and special characters are not allowed.

All input is automatically converted to lowercase before being appended to the URL.

A link like https://example.com/offers becomes (shown wrapped here for readability; the actual URL is a single unbroken string with no line breaks):

https://example.com/offers?utm_id=019dacdc-de23-7193-a9a4-4d2eb9a6b514&utm_medium=sms&utm_source=treasureai&utm_campaign=spring_sale&utm_source_platform=treasureai&utm_marketing_tactic=remarketing

Monitoring Delivery

SMS delivery data is written to event tables in the delivery_sms_ database for your workspace.

TableContents
eventsOne row per message — delivery status (sent, delivered, failed) and quiet hours blocks (quiet_hours_blocked)
subscription_eventsOpt-out and opt-in events (STOP / START keywords received)
error_eventsSend failures
Tip

Use subscription_events to keep your CDP segment up to date. Opt-out sync to your Parent Segment is not automatic — you must update your segment manually to exclude opted-out recipients from future campaigns.

Opt-Out Handling

Treasure AI uses Twilio's Advanced Opt-Out to process STOP keywords automatically.

Opt-out keywords: STOP, STOPALL, UNSUBSCRIBE, END, QUIT, CANCEL

Opt-in keywords: START, YES, UNSTOP

When a recipient sends a STOP keyword:

  1. Twilio automatically blocks future outbound messages to that number and sends a confirmation reply
  2. Engage Studio writes an opt-out event to subscription_events in your delivery database
  3. The recipient remains in your CDP until you update their profile — you are responsible for syncing this data and excluding them from future sends
Important

Re-opt-in requires the recipient to text a keyword (e.g., START). It cannot be triggered via API or website. Do not attempt to re-enroll recipients who have opted out without their explicit re-opt-in action.

Compliance Notes

Treasure AI provides the tools to enforce compliant sends — but compliance with TCPA and applicable regulations is the responsibility of the sending organization.

RequirementDetailsHow to Meet It in Engage Studio
Quiet HoursSend only during 8AM–9PM recipient local time (federal). Some states restrict further.Configure Quiet Hours. Segment audience by time zone.
STOP ComplianceHonor opt-out requests immediatelySync subscription_events to your Parent Segment after each campaign.
ConsentObtain prior express written consent before sendingManage consent capture outside Engage Studio (e.g., web forms, checkout flow).
Consent RecordsRetain records of consent for the regulatory periodStore consent records in your CDP. Treasure AI does not retain consent data on your behalf.
Important

TCPA violations carry statutory damages of $500–$1,500 per message. Ensure your consent records, opt-out processes, and send windows meet applicable legal standards before sending at scale.