You wrote the text, pulled the list, and hit send. Open rates on SMS are famously high, so you expected results. Instead, a chunk of your messages never arrived, and nobody told you. No bounce, no error, nothing. Carrier filtering is silent by design.
If your message contained a link, that link is one of the first things the filter judged. Understanding how that judgment works is the difference between campaigns that land and campaigns that quietly vanish.
How carriers decide your message looks like spam
US carriers route commercial SMS through registered channels and run every message through filtering systems before delivery. Those systems look at volume patterns, message content, sender registration, and, critically, every URL in the message. The URL check is not about what your page says. It is about the reputation of the domain itself.
Domain reputation is shared. If a domain has been used in phishing or spam campaigns before, messages containing it start getting dropped, no matter who is sending them today. Which brings us to shorteners.
The shared shortener problem
Public URL shorteners give everyone links on the same domain. When you send a bit.ly or tinyurl link, your message inherits the reputation of every scammer who used that domain before you. Spammers love free shorteners precisely because they hide the destination, and carriers know it.
This is not a conspiracy theory. The CTIA, the trade association that writes the messaging guidelines US carriers follow, explicitly recommends against shared public URL shorteners in commercial messaging. Their guidance is blunt: use a dedicated domain you control.
Why your own domain fixes it
When your short links run on your own domain, three things change.
- Your reputation is yours alone. Nobody else can send on your domain, so nobody else can burn it. Your deliverability reflects your own behavior, which for a legitimate business is exactly what you want.
- The link matches your brand. Customers see go.yourbrand.com/sale instead of a random string on a domain they have never heard of. Recognition drives taps, and it also drives fewer spam reports, which feeds back into reputation.
- Registration lines up. If you have registered your SMS traffic (10DLC in the US), a branded link on your own domain is consistent with the campaign you registered. A random shortener domain is not, and inconsistency is a filtering signal.
What to do this week
- Stop using public shorteners in SMS. Today. This is the single highest-impact change.
- Pick a subdomain on a domain you own, like go.yourbrand.com. Keep your main site untouched. Our setup guide walks through it in about 15 minutes.
- Keep destinations clean. Do not redirect through chains of domains. One hop from your branded link to your landing page.
- Register your traffic. If you send commercial SMS in the US, work with your texting platform to register your brand and campaigns. Registration plus a branded link is the strong combination.
- Watch your numbers. If clicks drop suddenly on a campaign that usually performs, deliverability is the first suspect. With your own domain and your own click data, you can actually see it.
The part nobody tells you
Once a domain lands on carrier or industry blocklists, getting off them is slow and sometimes impossible. That is why the fix is structural, not reactive. Own the domain from day one and there is nothing to clean up later.