Skip to content
OptinStamp
Menu

Twilio alternatives, read for compliance and the move

5 alternatives against TwilioVendor claims read 2026-10-22

For a business that texts customers through Twilio and is weighing a move: which providers handle STOP andHELP, 10DLC and toll-free verification, and what happens to your numbers, campaigns and opt-out list on the way out. Twilio is the baseline column, described from its own docs; we read every provider's documentation on 2026-10-22. Choosing a first provider instead? See the SMS API providers comparison.

Verdict by use case

Best overall

Telnyx

Its docs answer every row a move touches: 10DLC and toll-free verification by API, hosted SMS for moving texting first, and an opt-out list you can read back. Optional AI detection treats a plain-language opt-out like STOP.

Verdict

Best for a guided 10DLC move

Plivo

Plivo's switch page offers an assisted 10DLC migration from Twilio, and its migration guide maps Twilio's messaging calls to Plivo's. Plan around one gap: its docs list "Hey, can you stop texting me?" as an invalid opt-out, so plain-language replies need your own handling.

Verdict

Best for provider-managed STOP and HELP

Vonage

Opt-Out Assist handles STOP and HELP keywords, replies and block lists, with keywords set beside the 10DLC campaign. It blocks only the number a person texted, so a pool of numbers needs your own list on top.

Verdict

Photomontage of two stacked filing trays with a telephone handset on putty with a slate diagonal and an oxblood square
Fig. 01 Two filing trays with a handset across the lower one

Six providers, five texting rules

These rows are what the provider answers for on every message: honouring opt-outs, replying to HELP, registering for 10DLC and keeping a record of consent. "Our pick" marks the best-overall verdict; the Twilio column is the baseline you are moving from. New to the registration side? Start with what 10DLC is.

Twilio and five alternatives against five texting compliance rules
RequirementTwilioOur pickTelnyxPlivoBandwidthVonageSinch
Honours STOP and plain-language revocation automaticallyNoYesNoNoCheck with the vendorNo
HELP auto-replyYesYesYesCheck with the vendorYesCheck with the vendor
10DLC brand and campaign registration in-productYesYesYesYesYesYes
Records opt-in with a timestamp and the numberYesCheck with the vendorNoNoCheck with the vendorCheck with the vendor
Consent records exportableCheck with the vendorCheck with the vendorCheck with the vendorCheck with the vendorCheck with the vendorCheck with the vendor

Honours STOP and plain-language revocation automatically
The FCC rule names seven reply words and also counts any reply a reasonable person reads as a revocation.47 CFR § 64.1200(a)(10)
HELP auto-reply
CTIA's confirmation calls for customer care contact details or HELP instructions.CTIA Messaging Principles and Best Practices (May 2023), 5.1.2.1
10DLC brand and campaign registration in-product
US carriers route business texts on local numbers through registered brands and campaigns.
Records opt-in with a timestamp and the number
CTIA asks senders to keep the date, time, number and the words used to secure consent.CTIA Messaging Principles and Best Practices (May 2023), 5.1.2
Consent records exportable
CTIA asks senders to retain every opt-in and opt-out so consent can be shown later.CTIA Messaging Principles and Best Practices (May 2023), 5.1.5

Why teams look past Twilio

No single reason, and no table settles price for you. The common ones, stated the way each vendor states its own case:

Price
Per-message rates, carrier pass-through fees and number fees differ by provider and change often, so the only figure worth using is each vendor's live pricing page on the day you decide. The Twilio SMS pricing explainer shows how one bill is built, line by line.
Network
Telnyx says it owns and operates its own carrier network. If routing control matters to you, ask each shortlisted provider the same question and get the answer in writing.
Compliance tooling
Plain-language opt-out detection, an opt-out list you can read back, and HELP replies the provider sends for you all differ between providers. The two tables on this page show where each one stands, and the opt-out keywords guide covers the words carriers expect you to honour.
Voice moves too
Plivo publishes a guide for moving Twilio voice apps and Bandwidth a migration toolkit for them; Telnyx and Sinch can text-enable numbers whose calls stay with another carrier.

Five checks for the move

The rows a switch touches and a first-time buyer never asks about. The one "No" in Twilio's column is the reason step 01 below comes first.

Twilio and five alternatives against five migration checks
RequirementTwilioOur pickTelnyxPlivoBandwidthVonageSinch
Opt-out list readable by APINoYesCheck with the vendorNoCheck with the vendorYes
Ports your existing numbers inYesYesYesYesYesYes
Texts from a number left with its voice carrier (hosted SMS)YesYesCheck with the vendorCheck with the vendorCheck with the vendorYes
Takes in a 10DLC campaign registered elsewhereYesYesYesYesYesCheck with the vendor
Toll-free verification submitted by APIYesYesYesYesYesYes

Opt-out list readable by API
A revocation must be honoured within 10 business days; reading the provider's block list keeps your CRM, your other senders and any next provider in step.47 CFR § 64.1200(a)(10)
Ports your existing numbers in
Customers reply to the numbers they already know; keeping them keeps STOP and HELP replies reaching you.
Texts from a number left with its voice carrier (hosted SMS)
Texting can move first while calls stay where they are, which splits one risky cutover into two smaller ones.
Takes in a 10DLC campaign registered elsewhere
A campaign that moves keeps its carrier approval; a new registration goes back through review.
Toll-free verification submitted by API
US carriers require a toll-free number to be verified before it sends business texts; an API submits verification from code, one number or many at once.

What moves, in order

Five steps, in the order they go wrong if skipped. Each names the vendor page it rests on.

  1. 01

    Take your opt-out list with you first

    Twilio blocks a number when it replies STOP, but Advanced Opt-Out does not report those blocks through the Console or the REST API. Build the list yourself: every STOP also reaches your inbound webhook, and Bulk Export delivers daily files of your message logs (each file kept seven days). Load the list into your own sending code before the first message leaves the new provider. The revocation rules bind the business, whichever provider took the reply.

    Twilio: Advanced Opt-OutTwilio: Bulk Export API overview

  2. 02

    Choose port or host, number by number

    A full port moves calls and texts together. Hosted SMS moves only texting and leaves voice with the current carrier, which Telnyx's docs offer for a gradual move. Either way, texting follows the number's NetNumber ID: if the losing carrier does not release it on the port date, texts keep routing there after calls have moved. Send a test reply to every number on the day it ports.

    Telnyx: Hosted SMSTelnyx: Messaging + porting

  3. 03

    Move the 10DLC campaign instead of starting over

    Twilio's docs describe approved campaigns moving between providers through a connectivity-partner migration, without re-registration, with the numbers ported first. Ask each provider on your shortlist how it takes a campaign registered through Twilio: Plivo offers an assisted move, and Telnyx, Bandwidth and Vonage document taking campaigns shared through The Campaign Registry. If a fresh registration is unavoidable, the 10DLC registration checklist covers what carriers review.

    Twilio: Externally registered campaignsPlivo: Switch from Twilio

  4. 04

    Re-check toll-free verification

    Toll-free numbers are verified on their own track, outside 10DLC (10DLC vs toll-free vs short code). New requests at Telnyx carry business registration number fields, and Plivo now requires terms and privacy-policy links. Whether an approved verification follows the number depends on where it lands. Twilio says a verification cannot move between providers: you submit a new one once the port completes (before then it fails with error 30447), and traffic stays treated as verified until that review. Bandwidth says a verified number keeps its status after the port and still asks you to verify it again with them. Telnyx's and Plivo's pages we read do not say, so ask before the port date. The 10DLC vs toll-free guide covers the verification route.

    Twilio help centre: Toll-free message verification for US/Canada (porting FAQ)Bandwidth: Toll-Free Verification handbookTelnyx: Toll-Free VerificationPlivo: Toll-free verification API

  5. 05

    Rebuild keywords, replies and consent records

    Custom keywords and replies set in Advanced Opt-Out stay in the Twilio account. Recreate the STOP, START and HELP replies on the new account and text each keyword to each number before cutover. Keep opt-in records in your own consent log (number, date, time and the words the person agreed to), so the record never depends on which provider you use; the Records guides and tools cover what else to keep.

    Twilio: Advanced Opt-Out

Where a STOP lands

One opt-out reaches a different set of numbers on each provider. The docs of four providers say how far. More on opt-outs in the Texting pillar.

How far one STOP reply reaches on each provider
ProviderWhat one STOP blocksRead on
TwilioThe sender that received the STOP and the Messaging Service it sits in. A re-opt-in has to clear both blocks.Twilio: Consent Management API
TelnyxThe whole messaging profile: a STOP to one number blocks every number on that profile. Separate programmes need separate profiles.Telnyx: Opt-In/Out Management
VonageOnly the number the person texted. Other numbers in a pool need your own block on top.Vonage: Opt-Out Assist technical details
SinchThe Conversation API app's consent lists, by type: all messages, marketing only, or notifications only.Sinch: Consent management

Caution

Toll-free numbers follow the carriers, not the provider. Twilio's docs say a US toll-free number always unsubscribes a person who replies STOP, and Vonage's say toll-free opt-outs are enforced at network level and cannot be switched off. Tell toll-free audiences to use STOP and START, whatever custom keywords you set.

The move is where this bites. Numbers that sat in one Twilio Messaging Service may land in one Telnyx profile (every STOP now blocks the whole profile) or in a Vonage pool (each STOP blocks one number). Pick the reach your programme needs, and keep your own opt-out list as the record that decides who gets a message.

Provider by provider

Each card repeats both tables' rows with the detail from the provider's own page.

Twilio

twilio.com

What it is

The provider this page starts from. A Messaging Service groups your senders; Advanced Opt-Out sets the STOP, START and HELP keywords and replies for every sender in that pool, and the Consent Management API stores opt-in and opt-out status.

Who it fits

The baseline: read its column as what you have today and the other columns as what changes.

  • Honours STOP and plain-language revocation automaticallyNo

    STOP, UNSUBSCRIBE, END, QUIT, STOPALL, REVOKE, OPTOUT and CANCEL are handled by default on long codes. Only single-word replies trigger the block; "STOP PLEASE" does not.

  • HELP auto-replyYes

    HELP is a reserved keyword; Advanced Opt-Out sets the reply. A number that has opted out does not get it.

  • 10DLC brand and campaign registration in-productYes

    Brands and campaigns in the Console; software companies registering their customers can also use the API.

  • Records opt-in with a timestamp and the numberYes

    The Consent Management API stores opt-in and opt-out status with the date and source of consent. Access is by request unless you use the Compliance Toolkit.

  • Consent records exportableCheck with the vendor

    Advanced Opt-Out does not report blocked numbers through the Console or the REST API, and the Consent Management API page documents writing records, not reading them.

  • Opt-out list readable by APINo

    Advanced Opt-Out does not support changing or reporting on blocked numbers through the Console or the REST API.

  • Ports your existing numbers inYes

    Porting API (public beta) for US non-toll-free numbers, up to 1,000 per request, with an electronic letter of authorization.

  • Texts from a number left with its voice carrier (hosted SMS)Yes

    Hosted numbers through the Console. The Hosted Numbers API is not open to new customers.

  • Takes in a 10DLC campaign registered elsewhereYes

    Takes campaigns registered directly with TCR, and campaigns migrated from other providers without re-registration.

  • Toll-free verification submitted by APIYes

    Verification requests through the API, after an approved Trust Hub business profile.

Baseline

Telnyx

telnyx.com

What it is

A communications platform for voice, messaging and numbers that says it runs its own carrier network. Opt-out blocks live on the messaging profile, and both 10DLC and toll-free verification run through its API.

Who it fits

Teams that want to move texting in stages and keep a readable copy of every opt-out.

  • Honours STOP and plain-language revocation automaticallyYes

    Standard keywords block automatically. Optional AI detection treats a high-confidence plain-language opt-out ("please stop texting me") like STOP.

  • HELP auto-replyYes

    Help-keyword auto-replies per messaging profile, with per-country text.

  • 10DLC brand and campaign registration in-productYes

    Brand, vetting and campaign registration in the portal or through the 10DLC API.

  • Records opt-in with a timestamp and the numberCheck with the vendor
  • Consent records exportableCheck with the vendor

    Opt-out blocks can be listed through the API; opt-in records stay in your own system.

  • Opt-out list readable by APIYes

    A paginated list of opt-out blocks, with optional redaction of the numbers.

  • Ports your existing numbers inYes

    Port-in orders through the API, from same-day for FastPort-eligible numbers to several weeks for international ports.

  • Texts from a number left with its voice carrier (hosted SMS)Yes

    Texts route through Telnyx while voice stays with the current provider.

  • Takes in a 10DLC campaign registered elsewhereYes

    Accepts campaigns shared with Telnyx through TCR. A brand registered through another provider may need importing or transferring through support.

  • Toll-free verification submitted by APIYes

    Verification requests through the API; new requests carry business registration number fields.

CPaaS

Plivo

plivo.com

What it is

A voice and messaging API platform that describes itself first as a voice AI platform. It publishes a Twilio-to-Plivo messaging guide and registers 10DLC brands and campaigns in its Console or by API.

Who it fits

Teams that want help moving 10DLC campaigns off Twilio and a line-by-line map of the API calls.

  • Honours STOP and plain-language revocation automaticallyNo

    STOP, END, QUIT, CANCEL, UNSUBSCRIBE, UNSUB and STOP ALL are honoured; Plivo lists "Hey, can you stop texting me?" as an invalid opt-out.

  • HELP auto-replyYes

    Automatic reply to HELP or INFO on long codes and toll-free numbers.

  • 10DLC brand and campaign registration in-productYes

    Profile, brand, campaign and number linking in the Console or through the 10DLC APIs.

  • Records opt-in with a timestamp and the numberNo

    Plivo tells senders to collect consent themselves and to be able to show the opt-in timestamp and number on audit.

  • Consent records exportableCheck with the vendor
  • Opt-out list readable by APICheck with the vendor
  • Ports your existing numbers inYes

    Port-in requests with a letter of authorization and a recent bill; the losing carrier takes 5 to 20 business days.

  • Texts from a number left with its voice carrier (hosted SMS)Check with the vendor
  • Takes in a 10DLC campaign registered elsewhereYes

    Plivo's switch page offers an assisted 10DLC migration from Twilio. Campaigns registered directly with TCR import through a private-beta API.

  • Toll-free verification submitted by APIYes

    One toll-free number per request; terms-and-conditions and privacy-policy links are required fields.

CPaaS

Bandwidth

bandwidth.com

What it is

Messaging, voice and number APIs with campaign management for 10DLC. Its docs cover importing campaigns shared to Bandwidth through TCR, single and bulk port-ins, and a toolkit for moving Twilio voice apps.

Who it fits

Teams that register with TCR themselves, and voice teams moving Twilio apps with Bandwidth's toolkit.

  • Honours STOP and plain-language revocation automaticallyNo

    No opt-in or opt-out handling on long codes or short codes. Toll-free enforces STOP at the network layer, but honouring opt-outs and keeping lists is the customer's job.

  • HELP auto-replyCheck with the vendor

    Bandwidth's keyword article covers opt-in and opt-out only, and its toll-free network layer lists no HELP keyword.

  • 10DLC brand and campaign registration in-productYes

    Brands and campaigns through the Campaign Management API, once the account has the campaign products and user role enabled.

  • Records opt-in with a timestamp and the numberNo

    Maintaining opt-in and opt-out lists lies with the customer.

  • Consent records exportableCheck with the vendor
  • Opt-out list readable by APINo

    Bandwidth keeps no opt-out list for long codes; the customer maintains it.

  • Ports your existing numbers inYes

    Single and bulk port-in orders through its porting APIs.

  • Texts from a number left with its voice carrier (hosted SMS)Check with the vendor
  • Takes in a 10DLC campaign registered elsewhereYes

    Imports campaigns shared with Bandwidth through TCR, by API or in the Bandwidth App.

  • Toll-free verification submitted by APIYes

    An API to view and update the verification status of toll-free numbers.

CPaaS

Vonage

developer.vonage.com

What it is

Communications APIs (Messages, SMS, Voice, Verify). Opt-Out Assist, switched on by request, manages STOP and HELP keywords, replies and block lists on 10DLC and short-code numbers.

Who it fits

Teams that want STOP and HELP handled by the provider, with keywords set alongside the 10DLC campaign.

  • Honours STOP and plain-language revocation automaticallyCheck with the vendor

    With Opt-Out Assist on, an opt-out keyword blocks the sender on the number that was texted. Plain-language replies are not described.

  • HELP auto-replyYes

    Opt-Out Assist sends the HELP reply; keywords and reply text are set through the dashboard or the 10DLC API.

  • 10DLC brand and campaign registration in-productYes

    Brand registration, vetting, campaigns and number linking through the 10DLC APIs.

  • Records opt-in with a timestamp and the numberCheck with the vendor
  • Consent records exportableCheck with the vendor
  • Opt-out list readable by APICheck with the vendor
  • Ports your existing numbers inYes

    Self-service port of up to 999 US and Canadian local numbers from the dashboard.

  • Texts from a number left with its voice carrier (hosted SMS)Check with the vendor

    Ports that bring only voice or only SMS go to Vonage's numbers team by email.

  • Takes in a 10DLC campaign registered elsewhereYes

    Imports campaigns registered directly with TCR through the API; imported campaigns cannot be edited through Vonage.

  • Toll-free verification submitted by APIYes

    The TFN Registration API manages toll-free registrations programmatically.

CPaaS

Sinch

sinch.com

What it is

A global messaging, voice and numbers platform. Its Numbers API ports US numbers in or imports them for texting while they stay with their carrier, and its Conversation API keeps consent lists.

Who it fits

Teams texting on several channels that want one consent list, and numbers text-enabled without a full port.

  • Honours STOP and plain-language revocation automaticallyNo

    Keywords match exactly: "stop" triggers an opt-out, "stop now please" does not. In the blocking mode, blocks start within up to 10 minutes.

  • HELP auto-replyCheck with the vendor
  • 10DLC brand and campaign registration in-productYes

    A 10DLC Brand and Campaign Registration API creates and submits brands and campaigns.

  • Records opt-in with a timestamp and the numberCheck with the vendor
  • Consent records exportableCheck with the vendor
  • Opt-out list readable by APIYes

    Public API endpoints query the consent lists.

  • Ports your existing numbers inYes

    Port-in orders through the Porting API, after a portability check.

  • Texts from a number left with its voice carrier (hosted SMS)Yes

    US and Canadian numbers are text-enabled for Sinch after an ownership check and a signed letter of authorization.

  • Takes in a 10DLC campaign registered elsewhereCheck with the vendor

    Sinch's 10DLC page describes campaigns registered directly with TCR that name Sinch as the provider.

  • Toll-free verification submitted by APIYes

    The Registration API creates, lists and reads toll-free number verifications.

CPaaS

How we read the claims

Questions teams ask

Can I keep my phone numbers when I leave Twilio?

Yes. US numbers can be ported to another provider, and every provider on this page takes port-in requests. Two details catch teams out. Voice and texting move as separate processes: Telnyx's docs note that a number's texting route follows its NetNumber ID, which the losing carrier has to release; if it does not, texts keep routing to the old carrier after calls have moved. And Plivo's porting guide says to keep the old account open until the port completes, with the name and address on the letter of authorization matching the old carrier's records.

Do I have to register for 10DLC again with a new provider?

Not always. Twilio's own docs describe campaigns approved through The Campaign Registry moving between messaging providers without re-registration, through a connectivity-partner migration, and recommend porting the numbers first. That page describes moves into Twilio; ask the new provider which path it uses for a campaign registered through Twilio. Telnyx's docs add that a business can hold only one brand per EIN, so a brand registered through another provider may need importing or transferring rather than creating again.

What happens to the people who texted STOP while we were on Twilio?

Their opt-out was a revocation sent to your business, not to Twilio, so it still binds you after the move. The FCC rule lets a person revoke "by using any reasonable method", and the revocation "must be honored within a reasonable time not to exceed ten business days from receipt" (47 CFR § 64.1200(a)(10)). Twilio's block list does not move with you, and Advanced Opt-Out does not report blocked numbers through the Console or the API, so build the list from your own STOP webhooks or exported message logs before you switch.

Is toll-free a way to keep texting while 10DLC moves?

Toll-free numbers sit outside the 10DLC system, as Twilio's 10DLC page notes, but they need their own verification before they can text. Plivo's docs state that since November 8, 2023, unverified toll-free numbers cannot send messages to users in the US and Canada. A toll-free number set up mid-move is a new sender to verify, not a shortcut.

Does switching providers make our texting TCPA-compliant?

No. The provider carries the messages; consent, calling hours, opt-outs and records stay your responsibility on every platform. The statutory damages for a TCPA violation are $500 per call or text, up to three times that ($1,500) if the court finds the violation willful or knowing.

Sources

  1. 47 CFR § 64.1200(a)(10)fetched 2026-10-22
  2. CTIA Messaging Principles and Best Practices (May 2023), 5.1.2.1fetched 2026-10-22
  3. 47 U.S.C. § 227(b)(3) (private right of action)fetched 2026-10-22
  4. Twilio: Bulk Export API overviewfetched 2026-10-22
  5. Telnyx: Messaging + portingfetched 2026-10-22
  6. Telnyx: 10DLC brand registrationfetched 2026-10-22
  7. Plivo: Migrate from Twilio (messaging)fetched 2026-10-22
  8. Bandwidth: Migration Toolkitfetched 2026-10-22
  9. Plivo: Migrate from Twilio (voice)fetched 2026-10-22
  10. Telnyx: developer docs overviewfetched 2026-10-22
  11. Twilio help centre: Twilio support for opt-out keywords (SMS STOP filtering)fetched 2026-10-22
  12. Twilio: Advanced Opt-Outfetched 2026-10-22
  13. Twilio: What is A2P 10DLC?fetched 2026-10-22
  14. Twilio: Consent Management APIfetched 2026-10-22
  15. Twilio: Porting API (port-in)fetched 2026-10-22
  16. Twilio: Hosted phone numbersfetched 2026-10-22
  17. Twilio: Externally registered campaignsfetched 2026-10-22
  18. Twilio: Toll-free verification using the APIfetched 2026-10-22
  19. Telnyx: Opt-In/Out Managementfetched 2026-10-22
  20. Telnyx: 10DLC quickstartfetched 2026-10-22
  21. Telnyx API: List opt-outsfetched 2026-10-22
  22. Telnyx: Port-in ordersfetched 2026-10-22
  23. Telnyx: Hosted SMSfetched 2026-10-22
  24. Telnyx API: Accept Shared Campaignfetched 2026-10-22
  25. Telnyx: Toll-Free Verificationfetched 2026-10-22
  26. Plivo: DND Servicefetched 2026-10-22
  27. Plivo: 10DLC overviewfetched 2026-10-22
  28. Plivo: US messaging best practicesfetched 2026-10-22
  29. Plivo: Number portingfetched 2026-10-22
  30. Plivo: Switch from Twiliofetched 2026-10-22
  31. Plivo: Toll-free verification APIfetched 2026-10-22
  32. Bandwidth: Does Bandwidth handle opt-in and opt-out keywords?fetched 2026-10-22
  33. Bandwidth: CSP Campaign APIfetched 2026-10-22
  34. Bandwidth: Port-ins APIfetched 2026-10-22
  35. Bandwidth: Campaign Imports FAQsfetched 2026-10-22
  36. Bandwidth: Toll-Free Verification APIfetched 2026-10-22
  37. Vonage: Opt-Out Assist technical detailsfetched 2026-10-22
  38. Vonage: 10DLC overviewfetched 2026-10-22
  39. Vonage API support: Porting North American numbersfetched 2026-10-22
  40. Vonage API support: 10DLC reseller vs CSPfetched 2026-10-22
  41. Vonage: TFN Registration APIfetched 2026-10-22
  42. Sinch: Consent managementfetched 2026-10-22
  43. Sinch: 10DLC Brand and Campaign Registration APIfetched 2026-10-22
  44. Sinch: Porting APIfetched 2026-10-22
  45. Sinch: Imported numbersfetched 2026-10-22
  46. Sinch: TFN Verification APIfetched 2026-10-22