How Much Does an SMS Cost? Pricing by Country and Volume

Table of Contents

The price of one business SMS depends mostly on where it is going: the mobile operator that delivers it charges a termination fee, and your provider’s per-message rate is built on top of that fee, so the same text can cost far more in one country than in another. On SMS.to, pricing starts from $0.023 per SMS, and the rate for every destination is on our SMS pricing by country page.

Destination is only part of the answer. Message length, character encoding, sender type, route quality, volume and local registration fees all change the final bill. This guide explains each one, shows how to estimate a campaign before you send it, and covers the warning signs of a rate that looks too good to be true.

What goes into the price of one SMS?

Every business message passes through a chain before it reaches a handset: your application, your provider’s platform, sometimes one or more interconnect partners, and finally the destination mobile network. Each link has a cost. The main price drivers are:

  • Termination fee. The destination operator charges for delivering application-to-person traffic onto its network. This is the largest part of most SMS prices, and the operator sets it, not your provider.
  • Route quality. A direct connection to the operator, or a short chain of authorised partners, costs more than a long chain of resellers. It also gives you dependable delivery reports and keeps your sender ID intact.
  • Sender type. Alphanumeric sender IDs, virtual long numbers, short codes, toll-free numbers and 10DLC numbers in the US are priced differently, and dedicated numbers carry a rental fee on top of message charges.
  • Destination network. Operators in the same country can charge different termination fees, which is why some rates are set per network rather than per country.
  • Volume. Regular, committed volume earns lower rates because it makes capacity and operator commitments predictable.
  • Message length and encoding. You pay per segment, not per message. A long text or a single emoji can double or triple the cost.
  • Registration and carrier fees. Some markets add one-off or monthly fees to register your brand, sender ID or campaign, and some operators add per-message surcharges.

Why do SMS prices vary so much between countries?

A2P termination fees are commercial prices that each operator sets for its own network. They reflect local conditions, not the cost of carrying a few bytes of data. The biggest reasons for the spread are:

  • Market structure. In a country with two or three mobile networks, each one controls access to its own subscribers, and business messaging is an important revenue line. Operators protect it with SMS firewalls that block traffic arriving through unapproved routes.
  • Local versus international origin. Many operators price traffic that arrives from abroad differently from traffic that starts in the country, and some sender types are only available on local connections.
  • Regulation. Registration regimes add cost and work for every party in the chain. Senders to India must register on the DLT platform before messages are delivered, as TRAI’s guidance to senders explains; local numbers in the United States need 10DLC brand and campaign registration; and Spain requires alphanumeric sender IDs to be registered under Order TDF/149/2025.
  • Currency. Operators often bill in local currency or euros, so exchange-rate moves feed into dollar prices.
  • Fraud pressure. Markets hit hard by artificially inflated traffic tend to tighten controls, and the cost of those controls ends up in the rate.

The practical lesson: a rate that is normal in one market tells you little about another. Price every destination separately.

How do message length and encoding change the cost?

SMS is billed per segment. How many characters fit in a segment depends on the character set, as defined in the 3GPP specifications for the SMS alphabet (TS 23.038) and the SMS service itself (TS 23.040).

EncodingSingle SMSPer segment in a long messageTypical content
GSM-7160 characters153 charactersLatin letters, digits, common punctuation
UCS-2 (Unicode)70 characters67 charactersEmoji, Arabic, Cyrillic, Chinese, most Greek text

Long messages lose a few characters per segment because each part carries a header that lets the handset reassemble the concatenated SMS. Two further details catch people out. First, one character outside the GSM alphabet, such as an emoji, a curly quotation mark pasted from a word processor or a letter like á or ú, switches the whole message to UCS-2 and cuts capacity by more than half. Second, some GSM characters, including the euro sign and square brackets, count as two because they use an escape code.

Before you send, paste your text into our Unicode SMS checker. It shows the encoding, the number of parts and the cost for the destination you pick. Trimming a 165-character message to 158 characters halves its cost. For more on limits, see our guide to SMS pricing and character limits.

How do I estimate what a campaign will cost?

The formula is simple:

Cost = recipients × segments per message × per-SMS rate for the destination, plus any fixed fees such as number rental or registration.

Here is an illustrative calculation using a hypothetical rate of $0.05 per SMS. It is not an SMS.to price; use the rate for your destination from the pricing page.

Scenario (20,000 recipients)Length and encodingSegmentsSMS billedCost at a hypothetical $0.05
Short promotion150 characters, GSM-7120,000$1,000
Longer promotion200 characters, GSM-7240,000$2,000
Short promotion with one emoji150 characters, UCS-2360,000$3,000

One emoji tripled the bill. For an exact figure, ask the API. The SMS.to estimate endpoint takes the same body as a send request and returns the cost without sending anything:

curl -X POST https://api.sms.to/sms/estimate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "Your order has shipped. Track it in the app.",
    "to": ["+35799999999999", "+35799999999998"],
    "sender_id": "SMSto"
  }'

The to field accepts an array of up to 2,000 numbers per request. For personalised campaigns where each recipient gets different text, send a messages array of objects with their own message and to values instead, because merged names or order numbers can push some recipients into an extra segment. Full parameters are in the SMS.to API documentation.

How do volume discounts work?

SMS.to is pay as you go: no contracts, no setup fees, and you pay only for what you send. Once your traffic is regular, volume discounts are available, and for high-volume API or SMPP traffic our sales team can share a wholesale rate card for your regions.

Across the industry, discounts tend to depend on:

  • Volume per destination. Traffic concentrated in a few countries is easier to discount than the same total spread thinly across many.
  • Commitment. A committed monthly minimum lets the provider make commitments to operators in turn.
  • Traffic type. OTP, transactional and marketing traffic can be priced differently on some routes.
  • Consistency. Steady daily traffic is cheaper to carry than large, unpredictable bursts that need extra throughput.

To get a useful quote, bring your expected monthly volume per country, the traffic type, the sender type you need and your peak messages per second.

What registration and sender fees should I budget for?

In some markets the per-message rate is not the whole bill. Plan for these where they apply:

  • US 10DLC. Sending from local US numbers requires brand and campaign registration, and carriers add per-message surcharges. As one example of these pass-through fees, Vonage’s published 10DLC fee list, as of September 2026, shows a $4.50 brand registration fee, a $15 campaign vetting fee, a $10 monthly fee for standard campaigns, and carrier surcharges of $0.003 per SMS for AT&T and T-Mobile and $0.004 for Verizon.
  • Sender ID registration. Many countries require alphanumeric sender IDs to be registered or pre-approved before operators deliver them, and some charge for it. Our guide to SMS sender ID rules by country covers the main requirements.
  • Dedicated numbers. Virtual long numbers, toll-free numbers and short codes carry a rental charge on top of message fees. On SMS.to, prices for receiving messages and renting numbers are quoted by our sales team.

Is a very cheap SMS rate a red flag?

Often, yes. A grey route delivers business traffic through a path the destination operator has not authorised, for example through SIM boxes that disguise it as person-to-person messages. The GSMA describes grey routes as traffic that circumvents legitimate paths. Avoiding the termination fee is how such routes undercut legitimate rates, and it is also why operators hunt them down and block them.

Warning signs:

  • A rate far below what licensed providers quote for the same destination.
  • Your alphanumeric sender ID arrives as a random local mobile number.
  • Delivery reports come back instantly as “delivered” for every message, or never arrive.
  • OTP codes arrive minutes late, or delivery swings between good and poor from one day to the next as routes are blocked and replaced.
  • The provider cannot tell you whether its connection to the destination is direct or through named partners.

The saving rarely lasts. Failed codes mean abandoned sign-ups, and traffic can stop without warning when an operator closes the route. Artificially inflated traffic is a separate cost risk; our guide to SMS pumping fraud explains how attackers abuse sign-up forms to run up your bill.

How SMS.to prices your messages

  • Rates start from $0.023 per SMS and vary by destination. You can download prices for all countries from the SMS.to pricing page.
  • No setup fees, no contracts, and free SMS credits when you sign up, so you can test delivery before you commit.
  • Volume discounts for regular traffic, and wholesale rate cards for high-volume SMPP connections.
  • Cost estimates before you send, through the /sms/estimate endpoint or the Unicode SMS checker.
  • Delivery reports for every message through webhooks, so you can see what arrived and what failed.
  • HLR lookup to remove unreachable numbers before a campaign, so you stop paying for messages that cannot be delivered.

Intergo Telecom, the licensed operator behind SMS.to, has been building messaging infrastructure since 2014. Before you launch, we will tell you which sender types and registrations each destination needs, so the price you plan for is the price you pay.

FAQs

Do I pay for SMS that are not delivered?

In most cases, yes. SMS is charged when the message is submitted to the network, because the operator’s cost arises on the attempt. SMS.to’s Verify API pricing says so explicitly: the SMS send fee applies even if delivery fails. Removing unreachable numbers with an HLR lookup before you send is the most effective way to cut that waste.

Why was one message billed as three SMS?

It was split into three segments. Either it was longer than 306 GSM-7 characters, or a single Unicode character such as an emoji switched it to UCS-2 and it was longer than 134 characters.

Is the SMS price the same for every network in a country?

Not always. Each mobile operator sets its own termination fee, so some destinations have network-specific rates. Most pricing pages show one country rate, but the underlying cost can differ by operator.

How often do SMS prices change?

Operators revise termination fees from time to time and providers pass those changes on. SMS.to’s pricing page notes that prices are subject to change, so check the rate for your destination before a large campaign.

Planning a campaign across several countries, or moving volume from another provider? Talk to sales with your monthly volume per destination, and we will prepare a quote and the setup each market needs.

author avatar
Marios Italos

More Articles

What actually sets the price of a business SMS, why rates differ so much between
SMS pumping turns your OTP form into a revenue stream for fraudsters. Here is how