Guides › Error 30924
Error 30924: adding the consent language carriers expect
Last checked against official sources: October 30, 2026. Carrier rules change, so check the source links before you resubmit.
What it means
Twilio describes 30924 as missing or non-compliant consent language in the opt-in flow. The form exists, but the words a person agrees to are incomplete, so the reviewer can't be sure subscribers knew what they were signing up for.
Why it usually happens
- The form just says "Phone number" with no explanation of texting.
- Brand name, message type or frequency is missing.
- There's no mention that carrier message and data rates may apply.
- STOP and HELP instructions are absent.
- The disclosure is in tiny grey text far from the phone field, or only inside the terms page.
How to fix it
- Place the disclosure right next to the phone field or SMS checkbox.
- Include all the pieces: your business name, what you'll text about, how often, that carrier rates may apply, and how to stop and get help.
- Link your privacy policy and terms from the same spot.
- Keep the checkbox optional and unticked (a pre-ticked box is its own rejection, 30925).
- Quote the final wording in your message flow so the reviewer sees it matches the page.
- Edit and resubmit the rejected campaign rather than deleting it. A brand-new campaign means a new vetting fee and a fresh wait.
Example consent text (made-up business)
[ ] Yes, send me class reminders and schedule changes by text from Summit Yoga Studio. Up to 6 msgs/month. Msg & data rates may apply. Reply STOP to cancel, HELP for help. Not required to book. Privacy Policy | Terms
Summit Yoga Studio is fictional. Use your real brand, message type and frequency.
Questions and answers
Do I really need "message and data rates may apply"?
Reviewers expect it. Leaving it out is one of the most common reasons for this code.
Can the disclosure live only in my terms page?
No. It needs to be visible where people give their number.
What if message frequency varies?
Say so plainly, for example "Message frequency varies," or give a realistic upper limit.
Does this apply to keyword opt-ins too?
Yes. The confirmation text sent after someone texts your keyword should carry the same pieces.
Next step
Run your rejection text through the free checker to confirm nothing else was flagged. If you'd rather not rewrite the fields yourself, our approval packets cover the description, samples, opt-in wording and policy text. Carriers make the final call, so we can't promise approval, but we revise free until it goes through.
Sources
- Twilio: Error 30924
- Twilio Help Center: A2P 10DLC campaign registration rejected
- HighLevel: Campaign rejection reasons and resolutions
TextApproved is independent and not affiliated with Twilio, HighLevel or any carrier. This guide is not legal advice.
Got a rejection message?
Paste it into the free A2P 10DLC rejection checker for a plain-language diagnosis in seconds. No login.
