14
votes

I'm working on an application that sends and receives SMS messages to and from its users. (Don't worry - it's not spam - every user of the app expects to send and receive these messages).

One key aspect of the app... If a user sends a message to the app, the app then sends that message out to every person on that user's "team". So, the app will be sending a receiving a pretty significant number of messages (I'm hoping for a few thousand users, and 5,000-10,000 SMS messages per day).

I've been experimenting with a number of options:

  1. SMS to email
  2. Connecting a mobile phone to my server
  3. Contracting an SMS gateway

Option 1 is great, since it's free, but it's unreliable (apparently mobile providers queue these messages after SMS messages they can charge for, so they're frequently received late or lost)

Option 2 is also cheap, but the mobile phone can't keep up with the number of messages I'll be sending. Also, the mobile phone provider will consider this volume of messages excessive.

Option 3 is perfect, except that SMS gateway providers charge PER MESSAGE (usually $0.02-$0.06 per), which creates an impossible scaling problem. (Reminds me of the old business adage... "Sure we're losing money on every transaction, but we'll make it up in volume...")

So, long story short - how on EARTH did Twitter pull this off? They've been doing a similar thing (allowing users to exchange SMS messages with the app) since the beginning. Even if they negotiated an INCREDIBLE discount (say, $0.001 per message), they'd be paying an ENORMOUS cost to send the hundreds of millions of messages they handle.

Does anyone have any idea how they did this?

1
maybe twitter paid a lot of money but I'm sure they made profit in anyway. Like advertising, collecting information like phone numbers. Imagine sending/receiving millions of sms and just knowing the make and model of the mobile phones used by the user is worth a lot. You could sell this information to analyze who (age, sex, etc.) uses what kind of phone in which country etc. - sled
Twitter has grown into a juggernaut that MIGHT be making money by selling it's data. But for a long time, as I understand it - it was just a small pet project of a few people. Even back then, it was sending a HUGE volume of messages. I can't imagine they were paying hundreds or thousands of dollars per day to provide a free service with little forseeable revenue potential. Of course, I could be totally wrong... - mattstuehler
An interesting question, but unfortunately not really programming related :\ - Dan Moulding
@Dan - I thought this was a programming question because I'm hoping that the answer isn't "Twitter negotiated some kind of deal with Clickatell", but rather, "Twitter built it's own SMS gateway using 'X'. Here's how they built it..." That said, if anyone else also feels like this is an inappropriate question - my apologies - I'll remove it. - mattstuehler

1 Answers

10
votes

After a bit of Googling, it looks like Twitter has simply been signing deals with cell phone companies in various countries. For example (Twitter blog post link spam incoming):

Some more details about SMS in general here.