Open source, free to start
The Twilio alternative for SMS that sends from your own number
textbee turns an Android phone into an SMS gateway with a REST API. You send and receive text messages from the SIM you already have, with no approval queue, no rented number and no per-message fee. Free to start, then from under $10 a month.
Key takeaways
- At 5,000 text messages a month to the US, Twilio bills about $65.15 once number rental and carrier fees are added. textbee Pro is $14.99 flat, or $8.33 a month billed yearly. At 25,000 it is about $321.15 against $29.99.
- You can text customers the day you sign up. There is no compliance profile to get approved and no registration review to wait for.
- Messages go out from the SIM in your own Android phone. Recipients see a real number they already know and can reply to it.
- There is no number to rent and no brand or campaign to register, because your carrier issued the line to you.
- Sending is one POST request. Moving a send path off Twilio is a change to one function, plus two webhook handlers.
What makes sending SMS with Twilio hard?
Price is only part of it. Most of the friction comes before the first message: approvals, registration and waiting.
Approval before you can text customers
Twilio blocks texts to unverified numbers until a primary compliance profile is approved. Upgrading and adding a card is not enough on its own (error 21608).
With textbee: No approval step. You can text any number your SIM can reach.
Registration for every sender and use case
In the US, each sender needs a registered brand and a campaign per use case: $4 or $44 for the brand, $15 to vet each campaign, then $1.50 to $10 a month per campaign.
With textbee: Nothing to register. Your carrier already issued the line to you.
Waiting with no fixed date
Twilio estimates under a week for campaign approval, and says there is no exact timeline because carriers, Twilio and outside vetting partners all have to approve it.
With textbee: Your first message goes out minutes after you pair the phone.
Rejections start the clock again
Twilio says campaigns may be rejected in manual vetting unless a clear and valid business reason is presented. A rejected campaign has to be fixed and submitted again before it can send.
With textbee: There is no review to fail.
Daily caps on small senders
A sole proprietor brand is held under 1,000 messages a day to T-Mobile, on one number and one campaign. The low-volume tier is for senders under 6,000 segments a day.
With textbee: Your limit is what the phone sends. Add phones to send more.
A trial that cannot test your product
The trial gives 100 SMS for 30 days, reaches up to 5 verified numbers, and accepts only Twilio templates. Your own message text is not supported.
With textbee: The Free plan sends your own text to any number, 300 messages a month, with no end date.
A number your customers do not know
You rent a number from Twilio for $1.15 a month. Customers see a sender they have never saved.
With textbee: Messages come from your own number, and replies come back to it.
Billing in both directions
Every outbound segment is $0.0083 plus a carrier fee. Inbound messages are billed per message on top of the number rental, and US carrier fees are added to both directions.
With textbee: One flat plan covers sent and received messages.
Some countries cost far more
Twilio charges $0.3868 per message to Nigeria and $0.241 to the Philippines.
With textbee: A local SIM often includes texts in its plan, and textbee adds no per-message fee.
How long until your first real message?
| Step | Twilio | textbee |
|---|---|---|
| Sign up | Account and phone verification | Account |
| Get a sender | Rent a number, $1.15 a month | Install the app and pair the phone you already have |
| Unlock any recipient | Upgrade, then get a primary compliance profile approved | Not needed |
| Register for US traffic | Brand plus one campaign per use case, under a week by Twilio estimate, no fixed timeline | Not needed |
| First message to a real customer | After every approval above | A few minutes after sign-up |
How much does Twilio cost compared with textbee?
At 5,000 messages a month, Twilio costs $41.50 for messages, $1.15 for the number and $22.50 in carrier fees, about $65.15; textbee Pro is $14.99 flat.
At 25,000 messages a month, Twilio costs $207.50 for messages, $1.15 for the number and $112.50 in carrier fees, about $321.15; textbee Scale is $29.99 flat.
| Provider | 2K messages | 5K messages | 25K messages |
|---|---|---|---|
| Twilio | $26.75$16.60 messages, $1.15 number, $9.00 carrier fees | $65.15$41.50 messages, $1.15 number, $22.50 carrier fees | $321.15$207.50 messages, $1.15 number, $112.50 carrier fees |
| textbee | $14.99Pro plan, up to 5,000 messages included | $14.99Pro plan, up to 5,000 messages included | $29.99Scale plan, up to 25,000 messages included |
textbee plans include the messages shown. There is no per message fee, number rental or carrier surcharge.
Provider prices checked on September 4, 2026
textbee starts at under $10 a month: textbee Pro is $8.33 a month billed yearly, for 5,000 messages. Month to month it is $14.99. The Free plan covers 300 messages a month at $0.
Twilio rate $0.0083 per segment, checked on September 4, 2026. US carriers add up to $0.0045 per message on 10DLC traffic. For other countries, open the SMS gateway page for your country or run your own volume in the Twilio pricing calculator.
What does the code change look like?
The send call loses the From number, because the phone is the sender. The inbound handler reads JSON instead of a form body and checks a signature.
Sending a message
import twilio from 'twilio'
const client = twilio(process.env.TWILIO_ACCOUNT_SID, process.env.TWILIO_AUTH_TOKEN)
await client.messages.create({
from: '+12015550100',
to: '+12015550123',
body: 'Your order has shipped',
})import { Textbee } from '@textbee/sdk'
const textbee = new Textbee({ apiKey: process.env.TEXTBEE_API_KEY })
await textbee.sendSms({
recipients: ['+12015550123'],
message: 'Your order has shipped',
})Receiving a reply
app.post('/sms/inbound', express.urlencoded({ extended: false }), (req, res) => {
const { From, Body } = req.body
handleReply(From, Body)
res.type('text/xml').send('<Response></Response>')
})import { verifyWebhookSignature } from '@textbee/sdk'
app.post('/sms/inbound', express.raw({ type: 'application/json' }), async (req, res) => {
const payload = req.body.toString('utf8')
const valid = await verifyWebhookSignature({
payload,
signature: req.get('x-signature'),
signingSecret: process.env.TEXTBEE_WEBHOOK_SECRET,
})
if (!valid) return res.sendStatus(401)
const event = JSON.parse(payload)
if (event.webhookEvent === 'MESSAGE_RECEIVED') handleReply(event.sender, event.message)
res.sendStatus(200)
})Prefer plain HTTP? The API reference has the same calls as curl, and the SMS API by language pages cover Python, PHP, Go and more.
Which Twilio features have a textbee equivalent?
| Twilio | textbee |
|---|---|
| Account SID and Auth Token | One API key in the x-api-key header |
| Rented number or Messaging Service | The SIM in your Android phone |
| messages.create, one recipient per call | POST /gateway/send-sms, many recipients per call |
| statusCallback URL | MESSAGE_SENT, MESSAGE_DELIVERED and MESSAGE_FAILED webhook events |
| Inbound webhook with From and Body | MESSAGE_RECEIVED event with sender and message |
| messages.list | GET /gateway/messages, account wide, cursor paginated |
| Scheduled send with sendAt | scheduledAt, up to 72 hours ahead |
| X-Twilio-Signature | X-Signature, HMAC-SHA256 of the raw body |
| 10DLC brand and campaign registration | Not needed for your own SIM line |
textbee sends and receives SMS only. It does not offer voice calls, whatsapp, mms (pictures and group messages) or short codes.
When is Twilio the better fit?
- You need voice calls, WhatsApp or MMS from the same vendor as your SMS.
- You need a short code, or bursts of thousands of messages a minute.
For everything else, such as reminders, order updates, one time codes, alerts and replies to customers, textbee costs less and sends from a number your customers recognize. Many teams run both: text messages through textbee, voice on Twilio.
How do you switch from Twilio in an afternoon?
- 1
Set up the phone
Install the app from the download page on an Android phone with a SIM, then link it to your account by scanning the code in the dashboard.
- 2
Swap the send call
Create an API key in the dashboard and replace messages.create with the SDK call or one POST request.
- 3
Move the webhooks
Subscribe to the sent, delivered, failed and received events, and point them at the handlers that served your Twilio callbacks.
- 4
Run both, then cut over
Route a slice of traffic through textbee behind a flag for a week, compare failure counts, then move each flow. The migration guide has the full code for Node.js and Python.
Why we built textbee
We built textbee because sending a few thousand reminders should not need a rented number, a registration queue and a bill that grows with every message. A phone with a SIM already sends text messages well. textbee gives it an API, webhooks and a dashboard.
The code is MIT licensed on GitHub, so you can read what the app and the server do, or run the server yourself. More than 40,000 developers and businesses use it today.
Frequently asked questions
Is textbee a free Twilio alternative?
Yes, to start. The Free plan sends 300 messages a month, up to 50 a day, to any number with no card and no trial prefix. Pro is $14.99 a month for 5,000 messages, or $8.33 a month billed yearly. Scale is $29.99 for 25,000, or $16.67 a month billed yearly. Your phone plan covers what the carrier charges for each text.
Which number do my recipients see?
The number of the SIM in your phone. Replies come back to that same number, and textbee passes them to your webhook or the messages endpoint.
How many messages can one phone send?
One phone sends roughly 10 to 15 messages a minute, so a large blast takes time to drain. Carriers can filter bulk patterns on consumer SIMs. Marketing messages still need consent from the recipient under the local rules. To send more, link more phones: Pro takes up to 5 and Scale up to 15, and each request can pick its phone with deviceId.
Can I keep Twilio for voice and move only SMS?
Yes. The two do not conflict. Many teams send customer text messages through textbee and keep voice calls or WhatsApp on Twilio.
Do I need 10DLC registration with textbee?
10DLC covers numbers that a platform provisions for application traffic. Your own SIM line is issued to you by your carrier, so there is no brand or campaign to register. Consent rules, STOP handling and your carrier fair use terms still apply.
Does textbee work in my country?
It works wherever your Android phone has a SIM that can send SMS. The country pages list local carriers and what Twilio charges to each country.
Sources
- Twilio SMS pricing, United States, checked on September 4, 2026
- Twilio A2P 10DLC registration, checked on October 22, 2026
- Twilio A2P 10DLC campaign vetting, checked on October 22, 2026
- Twilio error 21608, checked on October 22, 2026
- Twilio free trial, checked on October 22, 2026
- Twilio SMS pricing by country, checked on September 4, 2026
Read next
Your phone is already an SMS gateway. Switch it on.
Set up in minutes and send your first message for free. No credit card, no per-message fees, no carrier contracts.
Need self-hosting help or a custom integration? See services