Our Twilio A2P 10DLC campaign was rejected (error 30924 — non-compliant SMS opt-in language). This brief covers the two changes needed to pass resubmission.
Remove both checkboxes from Step 1
Replace with under-button consent text. "Offers and news" checkbox deleted entirely — it was the specific thing Twilio flagged.
Add inline SMS disclosure under the phone field on Step 2
Phone stays where it is. No checkbox needed — tapping Continue = consent.
Two modals, two compliance gaps Twilio caught.
Start your 30-day trial of all Advanced features– no credit card required
Must be at least 12 characters
I agree to the Terms of Use and Privacy Policy
I would like to receive offers and news
Already have an account? Log in
Gap A — "offers and news" links to SMS Terms but checkbox isn't an SMS opt-in
No phone collected on this page, no STOP/HELP/Msg-rates language, link mismatch. This is the specific thing Twilio flagged. Also pre-checked — another rejection risk.
A few quick details to get you started
↑ phone collected with zero SMS consent or disclosure
Gap B — phone collected without disclosure
If you collect a number with the intent to text, CTIA + Twilio require visible STOP/HELP, frequency, and rates language at the moment of collection. We provide nothing.
Same two-step signup. Step 1 loses both checkboxes. Step 2 gains an inline disclosure under the phone field. No new screens, no extra clicks.
Start your 30-day trial of all Advanced features– no credit card required
Must be at least 12 characters
By creating an account you agree to our Terms of Use and Privacy Policy.
Already have an account? Log in
Both checkboxes removed
Terms consent moves to under-button text — clicking "Create free account" is the consent action. "Offers and news" checkbox deleted entirely.
A few quick details to get you started
Phone stays — disclosure added inline, no checkbox
Tapping Continue with a phone number provided = opt-in. No checkbox needed — Twilio accepts this if all required phrases are visible.
Use this verbatim — every phrase is CTIA-required:
Small centred grey text, directly below the "Create free account" button. No checkbox.
Paste this verbatim into the campaign form. Attach a screenshot of Signup Step 2 with a phone number filled in and the disclosure visible.
Prepared 2026-04-16 · Carepatron Growth · Twilio A2P 10DLC error 30924
carepatron.com
Five patterns observed in production. Our approach (Pattern C) is highlighted.
Email + password (or OAuth) only. Phone is never collected during signup.
Password
By continuing you agree to Terms & Privacy
Phone field appears only when booking a meeting, with disclaimer text inline. Per Calendly's docs, the SMS field "cannot be made mandatory."
Phone for SMS reminders (optional)
By providing your phone you agree to receive booking reminders via SMS. Reply STOP to unsubscribe. Msg & data rates may apply.
No checkbox. The submit button is the consent action, with disclosure directly above it. Twilio accepts this if all required phrases are visible.
Mobile number
By tapping Continue, you agree to receive automated SMS messages. Msg & data rates may apply. Reply STOP to cancel. Terms
A button opens the user's SMS app pre-populated with a keyword like JOIN. The act of sending the message is the opt-in.
Get text reminders
Text JOIN to (555) 123-4567 to enable SMS reminders.
Msg & data rates may apply. Reply STOP to cancel.
Phone is collected later in account profile or billing setup, with separate notification preferences.
Notifications
Email reminders
Always on
Text reminders
Sent to +61 412 345 678