30004: Message blocked
Error 30004 indicates that the destination number is blocked from receiving the message. In Programmable Messaging logs and status callbacks, this error appears when a message transitions to failed or undelivered with ErrorCode 30004.
- The destination number is blocked from receiving this message (for example, blacklisted), resulting in "Message blocked."
- The recipient previously opted out (for example, replied with a standard STOP keyword). Twilio blocks further messages to that recipient and returns an error code. Toll‑Free senders in the US/CA also enforce automatic STOP/START behavior.
- The device is unavailable (no/low signal or otherwise not reachable), which commonly drives undelivered outcomes.
- The destination cannot receive SMS (for example, a landline destination). Messages to India may be blocked when recipients are on Do‑Not‑Disturb registries or where domestic DLT/DNC rules apply.
- Carrier or compliance filtering blocked the content or sender. In some scenarios with repeated "Failed" + 30004, Twilio's internal filtering may have blocked the message to protect users and align with industry norms.
- Reproduce and baseline: send a fresh test using the API then check device power, signal, ability to receive non‑Twilio SMS. Try a shorter single‑segment body, and for testing, send from a different Twilio number rather than an Alphanumeric Sender ID.
- If the recipient previously opted out, ask them to re‑opt in (for example, START/UNSTOP for US/CA Toll‑Free), then retry. Advanced Opt‑Out and default STOP handling maintain blocklists and will fail messages until re‑opt in.
Note: standard keywords include STOP, UNSUBSCRIBE, END, QUIT, STOPALL, CANCEL, and as of April 29, 2025, also REVOKE and OPTOUT.
If you can rule out all of the above issues, continue troubleshooting below.
Error 30004 results on undelivered messages sent to India could be due to the destination number being listed on the national Do Not Call (DNC) registry.
For more information on sending messages to India, including links for updating DNC settings, please see Limitations for Sending SMS to India.
Repeated messages with a Failed
status and error 30004 results indicate Twilio may be filtering some of your messages internally.
This filtering is in place to help protect our customers, and the rules attempt to match what we have observed from the industry. For more details, including potential workarounds, please see "How Does Carrier Filtering Work?"
If issues persist, gather at least three recent Message SIDs from your Programmable Messaging Logs that show Error 30004 and engage Twilio Support for investigation.
- Debugging Tools
- Debugging Common Issues with SMS
- Track the Message Status of Outbound Messages
- India Regulatory Guidelines
- Compliance Toolkit for Programmable Messaging
- Customizing Users' Opt-in and Opt-out Experience with Advanced Opt-Out
- Twilio Messaging Policy: SMS, MMS, Conversations, Third-Party Messaging Platforms
- Alphanumeric Sender IDs in Messaging Services
- Update to FCC's SMS Opt Out Keywords