SMS opt-in language builder
Five messages drafted and checkedRules read 2026-10-22Runs in your browser
Fill in your program once and the builder writes the copy a texting program runs on: the keyword call to action for your sign or web page, the opt-in confirmation, the replies to HELP and STOP, and a double opt-in prompt if you want one. Each message shows its character and segment count and which required parts it carries, ready to paste into your texting platform or a 10DLC campaign form. Nothing you type leaves this page.
Pre-filled with a pizza shop's text club. Change the fields and every message is rewritten; edit a message by hand and the checks read your words.
Your messages
271 characters, posted copy (not counted in segments)
- Join keywordIn
- Number or short codeIn
- Program or brand nameIn
- What the texts are aboutIn
- Message frequencyIn
- Msg & data rates may applyIn
- Customer care (HELP or a contact)In
- How to opt out (STOP)In
- Terms linkIn
- Privacy policy linkIn
- Consent not a condition of purchaseIn
155/160GSM-71 segment
- Program or brand nameIn
- Customer care (HELP or a contact)In
- How to opt out (STOP)In
- Message frequencyIn
- Msg & data rates may applyIn
122/160GSM-71 segment
- Program or brand nameIn
- A phone, email or web contactIn
- How to opt out (STOP)In
- Message frequencyIn
- Msg & data rates may applyIn
67/160GSM-71 segment
- Program or brand nameIn
- No more messages will be sentIn
- No marketing in the replyIn
What each message must carry
The opt-in confirmation is the message with a fixed list. CTIA's Messaging Principles ask for “(1) the program name or product description; (2) customer care contact information (e.g., a toll-free number, 10-digit telephone number, or HELP command instructions); (3) how to opt-out; (4) a disclosure that the messages are recurring and the frequency of the messaging; and (5) clear and conspicuous language about any associated fees or charges and how those charges will be billed” (§ 5.1.2.1), and it goes out before any other message. Twilio's 10DLC guide says campaigns are vetted so everything “aligns with carrier requirements and CTIA guidelines,” which is why the campaign form asks for the exact wording of each reply (the 10DLC registration checklist covers the rest of that form).
For a keyword campaign, Twilio's 10DLC guide adds that “the welcome message sent after the customer texts the keyword must contain all required disclosures before any other content is sent.” The reply to HELP needs less: CTIA's short code handbook asks senders to answer it “with the Program name and further information about how to contact the Message Sender” (§ 3.4). The opt-out reply is “one final opt-out confirmation message per campaign” (Principles § 5.1.3).
For marketing texts the call to action also says consent is not a condition of purchase. That line comes from the FCC's definition of prior express written consent, which must disclose that “the person is not required to sign the agreement (directly or indirectly), or agree to enter into such an agreement as a condition of purchasing any property, goods, or services” (47 CFR § 64.1200(f)(9)(i)(B); see prior express written consent). A web sign-up form carries the same parts next to the phone field; the SMS consent form template writes that version.
The checks read words, not intent: they look for the brand you typed, an opt-out instruction with STOP, a rates line. A message can pass every check and still confuse a customer, so read each one as the person receiving it would.
| Part | Call to action | Double opt-in prompt | Opt-in confirmation | HELP reply | Opt-out confirmation |
|---|---|---|---|---|---|
| Join keyword | Required | – | – | – | – |
| Number or short code | Required | – | – | – | – |
| Program or brand name | Required | Required | Required | Required | Required |
| What the texts are about | Required | – | – | – | – |
| Message frequency | Required | Required | Required | Recommended | – |
| Msg & data rates may apply | Required | Required | Required | Recommended | – |
| Customer care (HELP or a contact) | Required | Required | Required | – | – |
| A phone, email or web contact | – | – | – | Required | – |
| How to opt out (STOP) | Required | Required | Required | Recommended | – |
| Terms link | Required | – | – | – | – |
| Privacy policy link | Required | – | – | – | – |
| Consent not a condition of purchase | Marketing | – | – | – | – |
| Reply Y to confirm | – | Required | – | – | – |
| No more messages will be sent | – | – | – | – | Required |
| No marketing in the reply | – | – | – | – | Required |
- Call to action. CTIA § 5.1.1 lists the program description, the number or short code, who is sending, opt-in and fee language, and terms such as how to opt out and the privacy policy; Twilio's keyword-campaign list adds the keyword, frequency, HELP, STOP and the two links.
- Double opt-in prompt. Twilio's keyword flow: a welcome message, a request for final confirmation (reply Y), and the frequency, rates, HELP and STOP disclosures before any other content.
- Opt-in confirmation. CTIA § 5.1.2.1: the program name or product description, customer care contact information, how to opt out, recurring messages and their frequency, and any fees or charges and how they are billed.
- HELP reply. Handbook § 3.4: answer HELP "with the Program name and further information about how to contact the Message Sender"; Twilio's sample HELP reply also carries rates, frequency and STOP.
- Opt-out confirmation. CTIA § 5.1.3: one final opt-out confirmation; the handbook asks for the program name and confirmation that no further messages will be delivered; § 64.1200(a)(12) keeps it free of marketing.
Worked example: a pizza shop's text club
A sign at the counter reads the call to action; a customer texts JOIN, gets the double opt-in prompt, replies Y and gets the confirmation. The table is drafted and checked by the same functions as the builder. With the short wording every reply fits one segment; switch the builder to spelled-out wording and the prompt and the confirmation each run to two, which doubles what every sign-up costs. CTIA's handbook asks short code programs to answer HELP even from people who are not subscribed (§ 3.4).
| Step | Customer texts | What they see | Size | Check |
|---|---|---|---|---|
| Call to action | Reads the sign | Text JOIN to 415-555-0142 to get Northside Pizza texts: weekly deals and new menu items. Up to 4 msgs/month. Msg & data rates may apply. Reply HELP for help, STOP to cancel. Consent is not a condition of purchase. Terms: example.com/sms-terms Privacy: example.com/privacy | 271 chars | Complete |
| Double opt-in prompt | JOIN | Northside Pizza: reply Y for texts about weekly deals and new menu items. Up to 4 msgs/month. Msg & data rates may apply. Reply HELP for help, STOP to cancel. | 158/160, 1 segment | Complete |
| Opt-in confirmation | Y | Northside Pizza: you're signed up for weekly deals and new menu items. Up to 4 msgs/month. Msg & data rates may apply. Reply HELP for help, STOP to cancel. | 155/160, 1 segment | Complete |
| HELP reply | HELP | Northside Pizza: for help call or text 415-555-0199. Up to 4 msgs/month. Msg & data rates may apply. Reply STOP to cancel. | 122/160, 1 segment | Complete |
| Opt-out confirmation | STOP | Northside Pizza: you're unsubscribed and will get no more messages. | 67/160, 1 segment | Complete |
Characters and segments: 160, 153, 70 and 67
One SMS carries 140 bytes: 160 characters in the GSM-7 alphabet, or 70 in UCS-2, the encoding a phone switches to for any character outside it. A longer text is split into segments, and each loses seven characters to the header that puts it back together, so a part holds 153 GSM-7 or 67 UCS-2 characters. Twilio, which bills per segment, notes one exception: multi-segment toll-free texts to the US or Canada carry 152 and 66 per part (the 10DLC vs toll-free guide covers the routes).
The trap is punctuation. The default confirmation above is 155 characters and 1 segment. Paste it from a word processor that curls the apostrophe in “you're” and the whole message turns UCS-2: 3 segments of up to 67 characters for the same words. The builder names the character that did it and offers a one-click swap to plain punctuation. Characters from the GSM-7 extension table, such as € [ ] { } ^ ~ |, stay GSM-7 but count as two. For any message beyond these five, the SMS segment counter shows where each segment breaks, and Twilio SMS pricing explained turns segments into a bill.
| Encoding | Used when the text has | One-segment text | Each part of a longer text | Toll-free, each part |
|---|---|---|---|---|
| GSM-7 | Plain letters, digits and common punctuation | 160 | 153 | 152 |
| UCS-2 | Any other character: curly quotes, em dashes, emoji, most accents | 70 | 67 | 66 |
Opt-out words and the one reply allowed after them
Under the FCC's rule a customer may revoke consent “by using any reasonable method,” and a reply with any of seven words is a reasonable method per se, honoured “within a reasonable time not to exceed ten business days from receipt” (47 CFR § 64.1200(a)(10)). Other words count too “if a reasonable person would understand those words to have conveyed a request to revoke consent.” CTIA asks senders to act on plain-language requests and to ignore “de minimis variances” such as capitalization and punctuation (§ 5.1.3).
- stop
- quit
- end
- revoke
- opt out
- cancel
- unsubscribe
The reply to any of them is one text. Paragraph (a)(12) allows a one-time confirmation that “merely confirms the text recipient's revocation request and does not include any marketing or promotional information,” and “if the confirmation text is sent within five minutes of receipt, it will be presumed to fall within the consumer's prior express consent.” Where the customer has agreed to several kinds of texts, that one message may ask whether the opt-out covers all of them. So the builder's opt-out reply carries no offer, no link and no coupon, and it flags one you add by hand.
CautionNever use an opt-out or help word as the join keyword: the builder warns when the keyword is one of them. A marketing text sent after a revocation is a text without consent, and the statute allows $500 per call or text, up to three times that ($1,500) if the court finds the violation willful or knowing (the penalty estimator runs the numbers).
The rule is moving. An FCC order adopted on 2026-09-30 (FCC 26-67) would let senders designate an exclusive revocation method, such as replying with a standardized word, disclosed clearly in the text. It is adopted, not yet in effect: it had not been published in the Federal Register when this page was read on 2026-10-22. The SMS opt-out keywords guide tracks it.
Sources
Every rule and figure the builder encodes, with the date it was read. Twilio's guide is one provider's reading of the carrier rules; your own provider's campaign form may word a field differently. This is a drafting aid, not legal advice.
- CTIA Messaging Principles and Best Practices (May 2023), §§ 5.1.1, 5.1.2.1, 5.1.3fetched 2026-10-22
- CTIA Short Code Monitoring Handbook v1.9 (effective 2023-08-02), §§ 3.3.3, 3.4, Table 3.10-1fetched 2026-10-22
- Twilio, A2P 10DLC Campaign Onboarding Guide (Part 2 keyword campaign, Part 4 keywords and automated responses)fetched 2026-10-22
- 47 CFR § 64.1200(a)(10), (a)(12) and (f)(9), FCC rules (eCFR)fetched 2026-10-22
- Twilio, What is the SMS character limit? (160 / 153 GSM-7, 70 / 67 UCS-2, toll-free 152 / 66)fetched 2026-10-22
- Twilio, What is GSM-7 character encoding? (character map; escape characters count as two)fetched 2026-10-22
- 3GPP TS 23.038 v17.0.0 (ETSI TS 123 038), § 6.2.1 GSM 7 bit default alphabet and § 6.2.1.1 extension tablefetched 2026-10-22
- Vonage, Concatenation and encoding (140 bytes = 160 GSM-7 or 70 UCS-2 characters)fetched 2026-10-22