If you are sending SMS in the United States, every message has to come from one of three sender types: a 10DLC number, a toll-free number, or a short code. They look similar from the API side. You call the same endpoint, you pass a From number, the message goes out. Underneath, they run on different plumbing, with different throughput, pricing, and setup timelines.
The official comparisons (Twilio’s support article is the canonical one) lay out the facts in a feature table. What they skip is a straight answer by use case. That is what this article does: the short version of each sender type, a head-to-head table, and a decision matrix for the three jobs most teams actually hire SMS for: one-time passcodes, marketing, and alerts.

The three sender types, in plain language
10DLC: your local business number, registered for business texting
10DLC stands for 10-digit long code: a normal-looking US local number with a regular area code, registered for application-to-person (A2P) messaging through The Campaign Registry (TCR). You register your brand (who is sending) and your campaign (what you send and how people consented). Brand vetting produces a Trust Score, and that score decides your sending speed.
10DLC is the default recommendation for most US business texting today. It supports SMS, MMS, and voice on the same number, it gives you two-way conversations, and the local area code tends to get better engagement than a national-looking number. The price of admission is paperwork: brand and campaign registration before you send anything.
Toll-free: the national number everyone recognizes
Toll-free numbers (800, 888, 877, 866, 855, 844, 833) can also send and receive SMS and MMS, plus voice. They go through a separate process called Toll-Free Verification, which is not part of the TCR brand and campaign system. Historically they were the fastest path to a working US business number.
Their main limitation is speed. A verified toll-free number defaults to 3 message segments per second toward the US and Canada (Twilio and AWS both document this). You can request more, but it is not the throughput channel.
Short code: the 5-digit number for serious volume
A short code is a 5 or 6-digit number leased for your brand. It is the fastest and most expensive option. Twilio’s comparison documents 100 SMS per second by default, increasable on request, and Message Central cites 100 to 500+ MPS in practice. Short codes go through carrier provisioning and approval, not TCR registration. They support two-way SMS, and MMS is possible with a one-time enablement fee on US codes.
The tradeoffs: no voice, a monthly lease in the hundreds to thousands of dollars, and a provisioning timeline measured in weeks. Short codes are for programs big enough to justify a dedicated line.
Head-to-head comparison
| 10DLC | Toll-free | Short code | |
|---|---|---|---|
| Format | 10-digit local number | 1-8XX number | 5-6 digits |
| Compliance process | TCR brand + campaign | Toll-Free Verification | Short code application, carrier approval |
| Default throughput | Varies by Trust Score, roughly 0.25 to 75+ MPS across carriers | 3 message segments/sec | 100 MPS, can be increased |
| SMS and MMS | Yes | Yes | Yes (MMS needs enablement on US codes) |
| Voice on same number | Yes | Yes | No |
| Two-way conversations | Yes | Yes | Yes (dedicated codes) |
| Setup time | 2-6 weeks for own TCR brand; campaign approval often 24-72 hours when clean | 1-4 weeks for verification | 8-12 weeks provisioning |
| Monthly number cost | Campaign fees $1.50-$30/month | Number lease, moderate | Lease $500-$1,000/month (random vs vanity) |
| Per-message cost | About $0.005-$0.012 all-in per segment | About $0.007-$0.014 per segment | About $0.0075-$0.020 per segment |
| Best fit | Most business SMS at moderate scale | Support lines, notifications, national presence | High-volume broadcasts |
The decision matrix: OTP, marketing, and alerts
This is the part the canonical comparisons skip. Pick your row, read across, and you will see the throughput you get, what it costs, and how long you wait before sending.
OTP and 2FA codes
| 10DLC | Toll-free | Short code | |
|---|---|---|---|
| Throughput | Scales with Trust Score; enough for most apps | 3 segments/sec out of the gate | 100+ MPS |
| Cost | Low; brand fee plus per-message charges | Moderate per-message cost | High; lease plus per-message |
| Setup time | 2-6 weeks via your own brand | 1-4 weeks for verification | 8-12 weeks |
| Winner for OTP | 10DLC for most apps | Fallback or low volume | Only at very high volume |
For most login and verification flows, 10DLC is the answer. It is cheap, throughput scales past what a typical app needs, and delivery on registered traffic is strong across the major carriers. Toll-free works as a fallback path or when your volume is under roughly 50,000 messages a month and you want to skip TCR registration. Short codes make sense for OTP once you pass about a million verification messages a month and need dedicated, carrier-grade speed. (If OTP is all you send, a verification API like Twilio Verify handles compliance for you and skips this decision entirely.)
Marketing and promotions
| 10DLC | Toll-free | Short code | |
|---|---|---|---|
| Throughput | Good and scalable; local numbers get strong engagement | 3 segments/sec; carriers filter promotional traffic more aggressively | Highest; built for blasts |
| Cost | Low | Moderate | High |
| Setup time | 2-6 weeks | 1-4 weeks | 8-12 weeks |
| Winner for marketing | 10DLC for SMB and mid-market | Poor choice for promos | Short code for enterprise-scale blasts |
For marketing, 10DLC is the winner for most businesses. Local numbers feel personal, carriers treat registered campaigns as legitimate marketing traffic, and the economics work at small and medium list sizes. Toll-free is the weakest marketing pick: slower, and carriers filter promotional content on toll-free numbers harder, which causes the delays that kill time-sensitive campaigns. Short codes take the crown only for blasts to very large lists at maximum throughput.
Transactional alerts and notifications
| 10DLC | Toll-free | Short code | |
|---|---|---|---|
| Throughput | Scales with Trust Score | 3 segments/sec; fine at low volume | 100+ MPS |
| Cost | Low | Moderate | High |
| Setup time | 2-6 weeks | 1-4 weeks | 8-12 weeks |
| Winner for alerts | 10DLC for most | Toll-free for support-style traffic | Overkill unless national-scale |
Alerts, appointment reminders, order updates, and delivery notifications are where toll-free shines. These are the customer-service style messages toll-free numbers were built for: moderate volume, conversational, two-way. If you need a support number that also takes calls and texts, toll-free is a clean fit. 10DLC works equally well and costs less per message, so many teams standardize on 10DLC for everything and keep toll-free only where a national number matters.
Five things nobody puts in the comparison table
1. Throughput is measured in message segments, not messages. A segment is one 160-character chunk (fewer with emoji, which forces UCS-2 encoding at 70 characters per segment). A 200-character alert is two segments, so 3 MPS is really about 1.5 long messages per second. Run your message lengths through this math before you pick.
2. You cannot convert a number from one type to another. Switching from toll-free to 10DLC means provisioning a new number and running the new registration process. Plan for this in your contact strategy, because your customers will see a different From number.
3. Short codes cannot take voice calls. If you need one number that handles both calls and texts, 10DLC and toll-free can do it. Short codes are SMS only. This rules them out for support lines.
4. Stacking toll-free numbers to get more throughput is prohibited. Carriers call it snowshoeing and filter it. If 3 MPS is not enough, the right answer is 10DLC or a short code.
5. Marketing consent rules are the same regardless of sender type. Express written consent, clear disclosures, and STOP/HELP handling apply to every program. The sender type changes the plumbing, not the law.
FAQ
What is the difference between 10DLC, toll-free, and short code?
They are the three US sender types for business SMS. 10DLC is a registered local 10-digit number governed by The Campaign Registry. Toll-free is an 800-style number with its own verification process. Short code is a leased 5-6 digit number provisioned directly with carriers. Throughput runs from toll-free’s 3 segments/sec up to 100+ MPS on a short code; cost runs the other way, with 10DLC cheapest and short codes most expensive.
Which sender type is best for OTP?
10DLC is the best fit for most OTP and 2FA workloads because it is cheap, scales well with Trust Score, and delivers reliably on registered traffic. Use toll-free as a fallback or for low volumes, and short codes only past about a million OTPs per month. If you send OTPs and nothing else, a verification API that handles compliance for you is even faster to set up.
How much does a short code cost?
A dedicated random short code leases for around $500 per month, and a vanity (chosen) code runs about $1,000 per month. Some sources cite ranges up to $1,500 per month, plus a one-time setup fee and per-message charges on top. Leases are typically sold in 3, 6, or 12-month terms.
How long does 10DLC registration take?
It depends on your path. Campaign approval is often 24-72 hours when the submission is complete and correct. Building your own TCR brand from scratch typically takes 2-6 weeks end to end, and most of the delay comes from rejections and resubmissions over vague use-case descriptions or unverifiable opt-in flows.
Is toll-free or 10DLC better for marketing?
10DLC is the better marketing choice for most businesses. Registered 10DLC campaigns get better deliverability for promotional traffic, local numbers get better engagement, and per-message costs are lower. Toll-free is slower and carriers filter promotional content on toll-free numbers more aggressively.
Can a toll-free number send SMS and take calls?
Yes. Toll-free numbers support SMS, MMS, and voice, just like 10DLC. Short codes are the odd one out: SMS only, no voice. If you want one number for calls and texts, choose 10DLC or toll-free.
A quick note on compliance
Sender-type choice is a technical decision, but the messages sit inside US telecom and marketing rules (TCPA, CTIA guidelines, carrier policies) that change over time. This article is general information, not legal advice. Before you launch, verify current requirements with Twilio’s documentation, The Campaign Registry, the US Short Code Registry, and your own counsel if you run marketing traffic.
The bottom line
There is no single winner, only the right tool for the job. 10DLC is the default for most US business texting: OTP, marketing, and alerts all run well on it at low cost. Toll-free is your support line when a national identity matters. Short codes are the specialist tool for high-volume broadcasts that justify a four-figure monthly lease and a multi-week provisioning cycle. Pick by your use case, check the throughput math on your actual message lengths, and remember that no sender type excuses sloppy opt-in.
Want this set up for you?
I build SMS chatbots and API integrations for businesses. If you would like what this guide describes, done for you, get in touch.
