This guide discusses SMS filtering by wireless carriers in the United States and Canada that can affect delivery of your Twilio Programmable SMS messages. In this guide, you will learn how and why messages are filtered, and options for improving your delivery rates.
Twilio also filters messages to enforce the rules of our Messaging Policy and Acceptable Use Policy. To learn more about how Twilio’s filtering system works as well as general information about filtering by wireless carriers, please see How Does Message Filtering Work?
For U.S. and Canada specific carrier filtering information, continue reading.
U.S. and Canada filtering overview
Most carrier filtering in the U.S. and Canada takes place on SMS traffic sent using standard 10-digit long code phone numbers. According to U.S. and Canadian carrier rules, Application-to-Person (A2P) traffic should not be sent via local long code numbers; this traffic should instead be sent using short codes or Toll-Free SMS numbers. Many wireless carriers apply message filters to enforce this rule.
A2P traffic is how the industry refers to messages like automated alerts, notifications, one-time password (OTP) login codes, or any other kind of traffic originating from an application. For more information, please see What is P2P and A2P Messaging?
As of 2020, carriers' rules about long code A2P messaging are changing. The first example of this is Verizon's 10 digit long code (10DLC) A2P service, which is in place for all Twilio traffic to Verizon Wireless since January 2020. This is a service that specifically allows A2P traffic to be sent using local numbers to Verizon subscribers, with the added cost of a small delivery fee. For full details, please see Commercial Long Code SMS Product and Fee Structure Changes on Verizon.
As of this writing, Verizon is the only carrier in the U.S. and Canada that has fully deployed a solution for A2P messaging over long code. However, additional carriers are coming out with similar solutions in the near future, and Twilio is working closely to ensure our customers get access to these new long code A2P solutions as soon as they are ready.
Filtering by wireless carriers
Wireless carriers in the U.S. and Canada apply message filtering for two reasons. First, carriers filter messages to protect mobile subscribers from spam and other forms of unwanted messaging. Secondly, many carriers apply filtering in order to detect and block A2P traffic that is being sent via long code (currently, Verizon Wireless is the exception to this; see "Recent Developments" above).
Carriers in the U.S. and Canada use adaptive (machine learning) software systems to filter messages. These systems look at both message content and volume, and behave very much like email filtering systems. Messages receive a cumulative score based on factors including: how many messages have come from a phone number during a certain time period, how many similar messages have transited the carrier’s network, or do the message contents resemble known spam or A2P messages.
In Twilio's experience, high opt-out rates and end user complaints also play a major role in carrier filtering. Because of this, the best thing to do to reduce the risk of filtering is to closely follow the rules in Twilio's Messaging Policy, in particular as they relate to user opt-in and opt-out.
Carriers in the U.S. and Canada usually report to Twilio when a message has been filtered. If you suddenly see that a large number of your messages are resulting in a status of
Undelivered with a 30007 error, the carrier’s filtering system has probably recently identified a pattern in your messages that triggered a block.
Filtering by Twilio
Twilio uses filtering to target messaging that is in violation of our Messaging Policy and Acceptable Use Policy (AUP). Twilio’s goal is to protect mobile users from fraud, spam, and other forms of unwanted messaging, as well as to comply with rules and regulations imposed by carriers and regulators.
Twilio's filtering systems are designed to allow A2P messaging, and filtering by Twilio is unlikely as long as your recipients have provided consent to receive your messages, and are not raising spam complaints or sending a high amount of opt-out ("STOP") replies.
For more details on how filtering works, both by Twilio and by carriers, and how to avoid it, see How Does Message Filtering Work?
Message delivery in the United States and Canada FAQ
Q: How do I avoid carrier filtering?
First, ensure you are closely adhering to the rules in Twilio's Messaging Policy. For example, ensure you only send messages to recipients who have provided explicit opt-in consent to receive messages from you. This greatly reduces the risk of complaints and opt-outs that lead to filtering.
In addition, ensure that your first message to a recipient always includes a phrase telling the user how to opt-out, e.g. "Reply STOP to unsubscribe." Certain keywords including STOP are automatically handled by Twilio by default; see here for details.
Next, verify that you are using the best sender type (long code, Toll-Free or short code) for the type of messaging you are sending. As of late 2020, Verizon is still the only U.S. mobile network that explicitly allows Application-to-Person (A2P) messaging over long code. For this reason, Twilio recommends using a U.S. Toll-Free number or short code for A2P type messaging. For more information, see Comparison of SMS messaging in the US and Canada for long codes, short codes, and toll-free phone numbers.
For additional tips and best practices for avoiding filtering on your messages, please see How Does Message Filtering Work?
Q: I think my Twilio number or message contents may have been blocked by a carrier. Can I get the block removed?
A: If you believe your messages are compliant with Twilio and carrier policies, please collect 3 or more examples of Message SIDs that have the “undelivered” status with error 30007, and then contact our Support team.
Please note: if you experience filtering when sending A2P messaging via a long code toward a mobile carrier who currently prohibits A2P messaging via long code, Twilio is unable to request unblocking or review of these cases. These carriers will not unblock phone numbers or message bodies unless the messaging in question is true Person-to-Person (P2P) messaging and the block was in error (this is uncommon).
Most carrier block lists in the U.S. and Canada for numbers use a “cooling off” period, which means that the numbers will automatically be removed from the block list after a period of time. The time period may vary, and carriers do not share this information with Twilio. If your message bodies do not also change, carriers’ content filtering systems will continue blocking your messages.
Q: Can I get my messages pre-approved to avoid filtering?
A: U.S. and Canada carriers do not currently pre-approve messages from long code numbers. Short code numbers, on the other hand, are allowed for specific traffic types, and filtering is unlikely as long as you adhere to your stated use case and follow opt-in and opt-out rules. In additon, Toll-Free SMS can be "verified" through Twilio to proactively reduce the risk of filtering on approved use cases.
If you are using long code numbers to send many messages with identical content to a large number of users, you are at high risk of having your messages filtered by carriers, and should consider a short code or a Toll-Free SMS number.