In all such cases the cost of engineering/operations time to keep these services alive overshadows pretty much everything else. So it's not cost per SMS that they are worried about, but rather the time spent maintaining and fixing these systems compared to how much they are used.
You might not realize just how expensive SMSes can be. Based on AWS SMS pricing, they cost 6/10ths of a cent to US destinations each, so each deal sent to 90,000 people in the article would cost twitter $540. That's not even getting into Europe that can cost over 10 cents per SMS, but I doubt twitter supported that.
SMS prices in Europe varies from country to country, but I would say that they are, on average, around 3-4 cents. You have cheap countries like Portugal (1-2 cent), intermediate countries like Spain (2-3 cents) and France (3 cents) and expensive countries like Germany (6 cents) or Belgium (6 cents).
From the top of me head, Azerbaijan is the most expensive country in the world, at 10 cents per SMS.
Source: Running a SMS hub in Europe for the last 15 years.
For extremely generous definitions of "works." I am constantly amazed at how long (and how many attempts) it often takes to load a single tweet page. The SPA-initializing state is usually measured in minutes on my iphone regardless of what kind of connection I'm on, and the result is often that message that the page failed to load because my browser made too many attempts. I don't know how you can possibly do this badly at delivering what should be the smallest web pages ever.
My standard practice on mobile now is, no joke, take the URL of the tweet page I'd like to read and paste it into a new FB post because it's faster and more reliable to get FB to fetch preview the content than it is to load it with my own browser. (edit: and note this is while using FB in my mobile browser. Think about how much more complicated a FB page should be than a single tweet, and it's still 100x faster to load.)
I've come to the conclusion that this is very intentional because they'd really like me to install the app and therefore have no incentive to improve the mobile experience, but I absolutely will not install an app for content that could very easily be delivered as a simple web page. I hope the trend of companies pushing their apps hard eventually reverses.
I just loaded a link to a tweet in a private browsing window on my iPhone in some sub-second amount of time. So whatever issue you're running into is a bug, not intentional.
Interesting how different our experiences are. This is a two-month old iphone, fully patched and with very few apps installed. Same experience as my previous iphone and android phones. Just verified: I sat and watched the "loading" spinner for over three minutes before starting to write this response. No idea how long it actually took, but it finished with just a blank white page with a twitter logo and a search bar. Maybe it's my mobile network (AT&T), who knows. But the experience is basically unusable, and I see at least one other person in this thread mentioning the error that indicates requests are being throttled, so I know I'm not alone.
I get frequent failures for various reasons on multiple connection types, including Google Fiber. Referrer seems to be part of it. Mobile does seem much worse (WiFi or cell network) which makes it feel intentional.
The mobile website's been broken for me for something like a year. It just shows "Something went wrong" with a Try again button that doesn't do anything. This happens for me on two different iPhones (a 6S and a XS).