Skip to main content

SMS opt-out & opt-in rules

The Opt-out & opt-in rules page is where you manage the inbound SMS keywords that unsubscribe (opt-out) or re-subscribe (opt-in) a contact, and the auto-reply text each keyword sends. Open it from the SMS workspace at Messages → SMS → toolbar: Opt-out Rules, or directly at /messages/sms/opt-out-rules.

Who can open the page

The page is restricted to owner, admin, and developer roles. Billing, viewer, and supervisor roles get a “you don’t have access” screen instead of the editor. If the keyword editor is grayed out for one of your teammates, check their role in the organization settings.

What each rule configures

Each rule is a keyword plus the auto-reply it sends, in one of two groups:
  • Opt-out keywords — unsubscribe the contact (STOP, CANCEL, and so on).
  • Opt-in keywords — re-subscribe the contact (START, YES, and so on).
For each keyword you set: Editing is local until you click Save Rules. Deleting a row asks for confirmation first, and leaving the page with unsaved edits opens a discard prompt — a reload or closed tab uses the browser’s own “leave site?” guard instead.

Language labels are informational

A keyword recognized as a localized opt-out term (STOP, ALTO, STOPPER, SCHLUSS, PARAR, DUR, and the like) shows its language and the markets where it is common — as a hint, not a filter. A rule for ALTO behaves exactly like a rule for STOP and applies to every reply-capable number.

A dedicated route, not an overlay

This editor used to live inside the SMS message list — first stacked above the message-history table, then as a slide-over panel toggled from the list’s toolbar. Both shapes mounted compliance management inside the message-operations view, which made the workspace hard to read. The editor is now its own route, reached by real navigation from the SMS toolbar — the message list no longer embeds it at all. When you plan a layout change like this in your own integrations, keep the same split: message operations on one route, compliance configuration on another.

Where the rules apply

A banner at the top of the page states the scope explicitly:
  • Account-wide. The rules apply to inbound replies on every reply-capable number (a long code or short code that accepts inbound SMS) in your account. They are not tied to a messaging service, so you don’t need to attach one for them to run.
  • Per messaging service. Each service keeps its own opt-out suppression list, managed on the service — see Custom Opt-Out Keyword Lists.
  • Per number. A keyword reply is only recognized on a reply-capable number. An alphanumeric sender ID cannot receive replies, so keyword handling never triggers for those senders. The page shows which of your numbers qualify and warns when none do.
For inbound routing of non-keyword replies, see Inbound SMS routing.

Merging with the platform STOP/START set

Your rules are additive only on top of the platform-level, carrier-mandated keyword set. Deleting every STOP rule from the page still leaves STOP handled at the platform layer — TCPA and CTIA mandate it, and Orbit enforces it regardless of what a tenant configures. Your rules can widen the trigger surface (an alias such as CANCELAR, or a branded opt-in like REJOIN) but never narrow it.

Seeded defaults

On first open, the page seeds a multilingual default set — STOP / UNSUBSCRIBE / CANCEL / QUIT / END, Spanish ALTO, French STOPPER, German SCHLUSS, Portuguese PARAR, and Turkish DUR / IPTAL / RED, each with a localized auto-reply, plus opt-in pairings (START, YES, SUBSCRIBE, and localized SI / OUI / JA / SIM / EVET). Because the defaults are deterministic, a seeded ALTO row appears on every workspace until you edit and save it. Prune the rows your audience doesn’t use, or add regional aliases as new rules — but keep at least one opt-out path per language you send in. A regulator-audited opt-out word is only ever an addition to the platform set; removing your seeded copy of it does nothing either way.

Attach and test

The rules apply automatically to every reply-capable number; there is nothing to attach. To prove a rule fired:
  1. Text the keyword to one of your reply-capable numbers from a handset.
  2. The Inbox shows the inbound turn and the auto-reply in the same conversation.
  3. The contact’s profile shows the flipped consent state, with the keyword recorded in consent history; the Opt-Outs view lists the record.
  4. The Delivery log tracks your auto-reply through queued → sent → delivered.
Before you rely on a keyword in a campaign, send a real inbound and confirm the auto-reply lands and the consent state flips — the same test-then-send discipline as the Test delivery check on Sender IDs. The editor itself always shows whether keyword handling is operational: the status banner names the eligible numbers, or warns with a direct Get a number action when none qualifies.

Brand-specific opt-outs

If a sender needs branded keyword copy or a region-scoped suppression list, attach a custom opt-out list to its messaging service instead of editing the global rules. For a hosted contact-facing page where recipients manage their own subscriptions, use the Preference center.