[HN Gopher] Ask HN: How to send SMS cheaper than Twilio?
       ___________________________________________________________________
        
       Ask HN: How to send SMS cheaper than Twilio?
        
       Not spam, all double opt-in. Even with 10DLC it's too much $, even
       on cheap providers like SignalWire. Email to text is unreliable and
       can't do above certain volumes (unless there's some way to get
       whitelisted I don't know?)  How can I do this for cheaper?  Here
       are some numbers:  Pricing varies by carrier but with my carrier
       mix it is between $0.0065 - $0.007 for 1 message on average. I need
       to send ~250k each month for now and also need lots of room to send
       more. These prices are SignalWire which is the cheapest I found so
       far. Bandwidth looks like the same. I think maybe Teli and Telnyx
       are a small amount cheaper but not so much.
        
       Author : ShrigmaMale
       Score  : 41 points
       Date   : 2022-02-01 14:37 UTC (8 hours ago)
        
       | vertis wrote:
       | I've been working on http://parrot.dev, it uses an Android phone
       | to enable sending messages from an API, while it's still new it's
       | currently in use with a collection of customers.
       | 
       | At 250k it might not meet your needs because whatever phone
       | provider you're using might have a problem. It is possible to
       | pair it to multiple phones as well.
       | 
       | My existing customers are using it to send ~200 messages a day to
       | their subscribers. It supports SMS replies, so you can implement
       | stop codes, depending on your needs.
       | 
       | If you want to discuss it more, feel free to reach out (contact
       | on profile).
        
         | countvonbalzac wrote:
         | This is brilliant.
         | 
         | Do you know what sort of limits mobile service providers impose
         | on phones?
        
           | vertis wrote:
           | I think it varies heavily, most of my customers are in
           | Australia (where Twilio is even more expensive) and it seems
           | to be working fine for them currently. But they're not
           | sending huge volumes, they're also not sending anything
           | mission critical (there is a sweet spot).
        
           | jqpabc123 wrote:
           | Carriers won't give you an exact limit, most just specify
           | "personal use". And they may not catch on right away but once
           | they do, they will likely ban your number.
           | 
           | Personal opinion, you're going to have all kinds of issues
           | with this in the USA.
        
             | vertis wrote:
             | It's an important consideration, and one that I've thought
             | about but really lack any ability to gather data on. I
             | built this originally to meet the needs of my brother's
             | business and his customers.
             | 
             | It has proved useful for him and his customers, and has
             | expanded beyond that, but I don't really know how much to
             | pursue building it further based off risks like this.
        
       | Blackstone4 wrote:
       | That is a huge number of SMS messages...what on earth would you
       | need that many for with out the revenue to back it?
        
         | ShrigmaMale wrote:
         | Revenue can cover it but I prefer to increase margin with some
         | cheaper solution if possible.
        
           | [deleted]
        
         | bgroat wrote:
         | This.
         | 
         | If you're sending 250,000 double opt-in SMS messages and can't
         | cover $0.007/message you've got a serious pricing problem
        
       | kevmo314 wrote:
       | Have you thought about buying a cheap cell phone with a plan? You
       | can turn an Android phone into an SMS gateway.
        
         | Andrew_nenakhov wrote:
         | Won't work in practice. We tried that, and (scum)phone
         | companies apply arbitrary filters to SMS sent with 'unlimited
         | plans', not delivering messages which they don't like.
         | Experiments have shown that SMSs with random text arrive in
         | 80-90% of cases, but if they contain words like 'verification',
         | 'code', 'kod', etc, only about 10% do reach the recipients.
         | 
         | Of course, these same operators offer commercial rates for
         | delivering 'branded' messages at a far higher rates.
        
           | sofixa wrote:
           | Have you tried cheating their regexes with mixing Cyrillic
           | and Latin script? E.g. kod ( the o is Latin, the rest
           | Cyrillic). It's the same letter visually but a different
           | character. Even Google Translate used to trip up with this.
           | 
           | PS: funny, HN bolds Cyrillic characters
        
             | Andrew_nenakhov wrote:
             | Mixing helps bypass the screen, and simply sending the
             | numbers helped. But still, we decided to ditch this number
             | verification thing via SMS altogether and start torturing
             | users by missed calls.
        
           | twunde wrote:
           | The reason this doesn't work is because of the pressure phone
           | carriers have gotten about reducing the amount of spam phone
           | calls and SMS (from Congress, state governments and
           | regulatory bodies like the FCC). These arbitrary filters on
           | consumer level plans are typically about blocking spam from
           | spoofed numbers and non-compliant businesses. If you think
           | about it, its EXACTLY how email works today. You _can_ try to
           | send millions of emails per a second from your gmail account,
           | but a) your emails will likely be caught by spam filters due
           | to the high volume and b)gmail will notice suspicious
           | activity and shut your account down.
        
         | kevincox wrote:
         | Although finding a carrier that is ok with this type of use is
         | more difficult. Most have fairly low rate limits and will
         | consider kicking you off the network.
        
       | iKnowKungFoo wrote:
       | Dealing with this now, agree that if you're not generating
       | revenue to cover the costs, you're barking up the wrong tree.
       | Yes, SMS is easier for the users, but it's also not very secure.
       | And that impacts the use cases of your platform.
       | 
       | At a previous employer, the solution was to move off SMS and onto
       | internal messaging via native mobile apps. This will shift your
       | cost focus, but that levels out as the volume of SMS transactions
       | decrease.
        
         | ShrigmaMale wrote:
         | Yes I am generating enough revenue but I prefer to increase
         | margins with some cheaper provider if I can. Long term you are
         | probably right, a mobile app is much cheaper, just takes time.
        
       | kull wrote:
       | I have this bookmarked from a few weeks ago found on HN [1].
       | 
       | [1] How to send text messages for free using Python | Use Python
       | to send text messages via email
       | https://www.alfredosequeida.com/blog/how-to-send-text-messag...
        
         | ShrigmaMale wrote:
         | I have tried email to sms, it doesn't work at my scale.
        
         | mdrzn wrote:
         | Not usable for these high volumes tho.
        
       | [deleted]
        
       | kk6mrp wrote:
       | You could set up a dedicated Android phone with SMSSync [0]. It
       | isn't maintained but I use it for my own personal use and would
       | think it could scale up to meet this kind of demand. I don't know
       | the legality of using a cell phone service for this kind of
       | service though, might violate their terms of service.
       | 
       | [0] https://github.com/ushahidi/SMSSync
        
         | electroly wrote:
         | This obviously violates every carrier's terms of service, at
         | least in the United States. There are industry-wide accepted
         | rules about this; regular local long codes are not allowed for
         | A2P messaging. Your A2P texts will be blocked _long_ before you
         | get to 250,000 texts in a month. I would bet that you don 't
         | even survive the first day. You're just flying under the radar
         | right now because your volume is low.
        
           | kk6mrp wrote:
           | Thank you, that's good to know! My messages currently sync to
           | a database which has a frontend that I can view and respond
           | to messages from. I haven't ever set up any automated
           | messages though.
        
         | monocasa wrote:
         | You get rate limited pretty quickly from what I've heard.
         | Normal carriers don't want you doing this.
        
         | ShrigmaMale wrote:
         | That will get blocked past a few 100s messages each day.
        
       | twunde wrote:
       | From someone who's done a fair amount of SMS sending here are
       | some things to think about.
       | 
       | - You'll need TCPA compliant opt-ins for US sending. There's a
       | cottage industry of people who look for vendors that aren't
       | compliant and sue them. The fines range from $500-1500 a SMS or
       | call. Sounds like you've already gotten that covered, but
       | definitely go over the requirements with a lawyer that
       | specializes in it.
       | 
       | - SMS is throttled per a phone number. This is throttled at both
       | the provider and the carrier. That means that even if Twilio
       | sends something at 10am it might not be sent by Verizon until
       | 11am. This absolutely impacts off-hour SMS sending.
       | 
       | - SMS is pricier than email and even at the highest volumes has a
       | relatively high floor per a text. I think the floor might be
       | $0.004X-$0.005. This is offset by having better response rates
       | that email. And as others have mentioned the providers will give
       | you better pricing as your volumes go up, but you'll need to talk
       | to account reps about that.
       | 
       | - At a certain size (1M+/month?), you can also consider
       | integrating directly with the carriers, although that's a longer
       | process to get set up.
       | 
       | - You'll need to manage SMS bounce/spam rates like you would for
       | email bounce spam rates. You'll end up maintaining a block list
       | of known bad phone numbers
       | 
       | Edited for formatting
        
         | Teknoman117 wrote:
         | That throttling bit me hard last week. DHL's delivery message
         | didn't come until hours after a package was delivered and by
         | the time I got it the message the package was already stolen.
         | Doesn't help that DHL didn't forward my delivery instructions
         | to whatever third party last mile service they used (GSL US).
         | Doesn't help that GSL didn't even make it to my address and
         | dumped it behind the mailbox 2.5 miles from my house on a
         | public road even though there is a secure drop box at the
         | actual house address/location. Yesterday told me they'd pay out
         | the claim, today they're fighting me over it.
         | 
         | I guess it'll be another month before I can get another
         | PineNote developer kit delivered to me (between CNY and
         | international shipping). :(
         | 
         | Jokes on whoever stole it. It's a paperweight unless you know
         | what to do with it. A pawn shop wouldn't give them anything for
         | it.
        
         | tylerrobinson wrote:
         | > even if Twilio sends something at 10am it might not be sent
         | by Verizon until 11am. This absolutely impacts off-hour SMS
         | sending.
         | 
         | Suppose my business is software for restaurants to notify
         | customers their table is ready via text. How would I mitigate
         | this?
        
         | ShrigmaMale wrote:
         | Thanks. I understand limits these days are based on 10DLC
         | trust? Do those throttling still apply even with staying under
         | those limits?
         | 
         | I think the floor is 0.0025 to 0.003 based on network access
         | fees and depending on carrier. With margin I suppose yes I
         | won't get much cheaper.
         | 
         | If I scale to that level I will look at direct integration,
         | thanks. Do I still need blacklist if I have double opt in and
         | users can opt out? Requiring confirmation would remove the need
         | for that?
        
           | twunde wrote:
           | Yes, you'll still encounter throttling even with 10DLC trust,
           | it will just be less. If I remember correctly 10DLC is
           | supposed to have a send rate of 15 text message segments per
           | a second, although you can get that bumped up after vetting.
           | But for example if you try to send 250K SMS at 10:05 am EST,
           | those messages will be queued up and will be received by
           | clients at varying times. This is something you'll want to
           | monitor. If I remember correctly Twilio (and presumably other
           | vendors) will show the actual sent time, so you'll be able to
           | compare when you triggered a send with the actual send date.
           | Unfortunately I don't think you'll see when clients actually
           | receive the SMS unless you've got a personal phone number on
           | your send list that you use to monitor. There are also daily
           | send limits, which again can be increased after vetting. From
           | a software engineering perspective SMS sending is really a
           | series of queues. Twilio has its own queue per a number and a
           | queue per a carrier. Each carrier maintains their own sending
           | queues. As such, you'll want to monitor SMS sending the same
           | way you'd monitor a queue ie by measuring throughput, and
           | number of items in the queue.
           | 
           | Oh and I forgot to mention that if your SMS includes emojis,
           | they get converted to MMS, which typically are more
           | expensive. The companies I worked at, did tests and found
           | that emojis didn't really impact response rates, although its
           | worth testing your specific use-case.
           | 
           | With the double opt in, you probably don't need a blacklist,
           | although you may want one for customers that reply with
           | expletives, etc (assuming you're supporting 2-way).
        
             | to11mtm wrote:
             | > Oh and I forgot to mention that if your SMS includes
             | emojis, they get converted to MMS, which typically are more
             | expensive
             | 
             | Technically it's more than just emojis, anything outside of
             | GSM-7 [0] will result in fallback to UCS-2 and you get
             | about half the number of characters per segment.
             | 
             | FWIW Twilio does allow status callbacks so you can see that
             | twilio sent the messaage and when(/if, sometimes they
             | don't) carrier acknowledged delivery success/failure.
             | 
             | [0] https://en.wikipedia.org/wiki/GSM_03.38#GSM_7-bit_defau
             | lt_al...
        
             | toast0 wrote:
             | > Oh and I forgot to mention that if your SMS includes
             | emojis, they get converted to MMS, which typically are more
             | expensive.
             | 
             | This might happen, but it really shouldn't. Sending emoji
             | as utf-16 surrogate pairs in a message marked as UCS-2
             | generally works, even if it's technically invalid. Of
             | course, using UCS-2 means 70 symbols? max, instead of the
             | 160 you get from a 7-bit GSM encoding (or 140 with an 8-bit
             | encoding, if there's a useful one). Emoji that are one
             | unicode code point will take up two symbols if they need to
             | be sent as surrogage pairs, and if you use any of the
             | combining character based emoji, that's going to use your
             | message length budget real quick. Pushing you into multiple
             | messages or MMS, both of which are expensive.
        
       | mindslight wrote:
       | Tangential, but have you thought about offering customers the
       | option for emails instead? I'd much rather give you my email
       | address, I'd much rather receive email, and it will cost you less
       | as well!
        
         | ShrigmaMale wrote:
         | Customers want SMS notifications or similar, I have email also.
         | Long term maybe i switch to a mobile app.
        
       | 8bitben wrote:
       | Have you tried talking to a sales rep from Twilio or one of the
       | other providers? Sometimes they can figure out a discount or
       | credit to keep you. Usually they will at least try.
        
         | ShrigmaMale wrote:
         | I will give it a try, hopefully there is something there.
        
       | jqpabc123 wrote:
       | To do high volume SMS, I think you need a dedicated, business
       | toll free number so they can easily track and block your account
       | if you start spamming. This is the "white listing" process.
        
         | ShrigmaMale wrote:
         | No carriers all want 10DLC now not toll-free.
        
           | jqpabc123 wrote:
           | Ok, thanks for the feedback.
           | 
           | But from what I read, toll free still allows for higher
           | volume.
        
             | ShrigmaMale wrote:
             | Carriers are now actively penalizing toll free A2P with
             | higher fees and some are straight up filtering them. They
             | all want 10DLC where volume is dependent on trust score.
        
       | djyaz1200 wrote:
       | If you're willing to commit to a significant monthly spend the
       | providers will offer lower rates. Contact several of them and
       | collect competing bids.
        
         | brimble wrote:
         | ... and this is true for _basically_ every vendor, once you
         | have any amount of scale. Including credit card processors.
         | Yes, even that one with the really nice API. CDNs. Supposedly
         | big cloud providers, but I 've not used them at a scale where
         | it was really worth negotiating (for either party).
         | 
         | Quick way to see if you can probably get one: email one of
         | their competitors (a sales email address) and tell them what
         | your average monthly spending with [current vendor] looks like,
         | what your rates with them are, and emphasize that you're
         | otherwise happy with them but feel like it might be worth
         | moving if you can do significantly better on price. If you get
         | back an offer lower than their sticker prices, ask your current
         | vendor to match (assuming you're otherwise happy with them).
         | Even someone who doesn't like and is kinda bad at negotiating
         | can do that.
         | 
         | If they come back with no or trivial movement on price (a 5%
         | discount or something can often be had if you just ask) and
         | trying to sell you on features instead, you're probably too
         | small still. Otherwise, enjoy the savings.
        
       | rabidonrails wrote:
       | You should speak to Twilio and Sinch since they're now the two
       | main players after their acquisitions of Syniverse and SAP
       | respectively. They definitely have pricing power and should be
       | able to help out.
       | 
       | Disclosure: My company was acquired by Sinch. (I can try to intro
       | you to someone on the inside if you'd like.)
        
         | TheCycoONE wrote:
         | You can find a list of US aggregators at
         | https://www.usshortcodes.com/partners/find-partner; though it
         | doesn't appear to be up to date with the latest acquisitions.
         | On top of the ones the parent mentioned, mGage was acquired by
         | Kaleyra that I know of.
        
         | ShrigmaMale wrote:
         | Thanks, I will reach out about Sinch. I looked at them but
         | didn't see pricing and wanted to avoid sales run-around, but
         | it's probably worth while.
         | 
         | Update: I created an account and managed to find pricing, it's
         | almost 2x what I pay other providers.
        
           | rabidonrails wrote:
           | Send me a note and I'll intro you to the right people.
        
           | austhrow743 wrote:
           | If you don't contact sales then you can't get discounts for
           | things that might not be a big deal to you but are to them.
           | Committing to staying with them for a period, minimum spends
           | for that period, paying up front. These things can generally
           | get you discounts.
        
       | czhu12 wrote:
       | We purchased a shortcode with Twilio for 3k a quarter, then with
       | their bulk pricing discounts, we are able to send text messages
       | with a 70% discount off the ticket price.
       | 
       | Source: We send many millions of messages a month via Twilio.
        
       | willcipriano wrote:
       | I'm not sure but I've always suspected you could get cheaper if
       | you went with a modem like this[0] and prepaid sims. You'd have
       | to test for shadowbans and swap out bad cards, but I bet you
       | could get it to work. However how much cheaper this is once you
       | factor in time running around buying prepaid sims? it's probably
       | not worth it.
       | 
       | [0] <"38400 MMS one hour"> https://www.alibaba.com/product-
       | detail/4G-Voip-Gateway-LTE-A...
        
         | TheCycoONE wrote:
         | That could easily run afoul of 10DLC unless you go through the
         | process of registering your number with the carriers for A2P
         | traffic (something Twilio or the another aggregator normally
         | does for you.)
        
       | daveidol wrote:
       | You could integrate "Verify With Snapchat" and push users towards
       | that instead (requires users to have a Snapchat account)
       | 
       | https://snapkit.com/login-kit (scroll down to "Never Pay for SMS
       | Verifications Again")
        
       | smoyer wrote:
       | You might want to fix your title if you can still edit (sp).
        
         | ShrigmaMale wrote:
         | Thanks, I did.
        
       ___________________________________________________________________
       (page generated 2022-02-01 23:02 UTC)