SMS length calculator

Free · no signup

Paste your message and see the encoding, the segment count and the cost per thousand. One emoji switches the whole message to Unicode and cuts your limit from 160 characters to 70.

111 units used 49 left in this segment
Segments per recipient
1
GSM-7, 160 characters a segment
Plain GSM-7 text. One segment holds 160 characters, and 153 once a message runs past one, because joining them up costs seven characters of header.
Characters 111
Units a segment 160
Cost per recipient $0.0075
Cost per 1,000 recipients $7.50
One segment per recipient, so a send to 1,000 recipients costs $7.50 at $0.0075 a segment. You have 49 units spare before a second segment starts.
Next step

Send SMS only when it earns its cost.

DMly sends on WhatsApp first and falls back to SMS only when it has to, usually a fraction of the spend.

Two Segments Hold 306 Characters, Not 320

A single text message holds 160 characters. Two of them hold 306, because once a message has to be split, each part carries seven characters of plumbing that tells the receiving phone how to stitch them back together. You pay for those seven characters and nobody ever reads them. That kind of detail is exactly what the SMS length calculator above exists to make visible, because it is the difference between a message that costs one segment and one that costs two.

Nearly everything expensive about SMS is a rule like that: invisible, slightly arbitrary, and worth real money at a thousand recipients.

What the SMS Length Calculator Measures

Paste a message in and it tells you five things: how many units it uses, how many are left in the current segment, which alphabet it is being sent in, how many segments that comes to, and what a send costs.

Underneath there is a plain English note explaining why the count is what it is, which changes depending on which of the three situations you are in, and a verdict line that prices a send and tells you what to do about it.

The panel opens on a worked example: a reminder message that comes to 111 units, in the standard alphabet, comfortably inside one segment with 49 to spare.

Characters Are Not Units

The first row says units used rather than characters, and that is not pedantry.

For most messages the two numbers are the same, and the panel shows both so you can see when they part company. When they do, it is because a character you typed costs two units instead of one, and the segment budget is spent in units.

So a message that looks like 158 characters can be over the line and cost you two segments, and the only way to know is to look at the units row rather than at the length of the text.

The Seven Expensive Characters

Inside the standard alphabet there is a small set that costs double, and it is an odd little list: the euro sign, square brackets, curly braces, the backslash, the vertical bar, the tilde and the caret.

Each of those is two units rather than one. They are not in the original character set, so they get sent as an escape followed by the character, and you pay for both halves.

In practice this bites in two places. Prices in euros, where every price in the message costs an extra unit. And anything pasted in from a system that uses square brackets for placeholders, where four brackets quietly costs you four units and nobody can see why the number moved.

None of them will push a short message over a boundary. All of them can push a long one.

The Unicode Cliff

This is the one that costs people money, and it is completely invisible in the text.

One character outside the standard alphabet switches the entire message to Unicode. Not that character, the whole message. The segment budget drops from 160 characters to 70, and in a multipart message from 153 to 67.

So a 150 character message that was comfortably one segment becomes three the moment somebody adds a single emoji. Same words, same recipients, three times the bill.

The panel is good about this. When you are in Unicode it tells you what the same message would cost in the standard alphabet, and when the emoji has not actually cost you a segment yet, it says that too rather than nagging.

Where Curly Quotes Come From

Emoji are obvious. The one that catches people is punctuation, and it usually arrives without anybody typing it.

Word processors replace a straight apostrophe with a curly one as you type. So do a lot of web forms and note apps. Copy a message out of one of those and paste it into a sending tool and you have shipped a Unicode message without ever seeing a difference on screen, because a curly apostrophe and a straight one look almost identical at message size.

The same goes for curly double quotes, long dashes and the three-dot ellipsis character.

The fix is boring and complete: write the message in a plain text editor, or paste it into this panel and watch the encoding row. If it says Unicode and you cannot see why, the culprit is nearly always an apostrophe.

The Rate Field Is Yours, Not Ours

There is a box for your SMS rate per segment, and it is doing the work in every cost figure on the card.

That number is not something a calculator can know for you. It depends on your provider, on the country you are sending into, on your volume and sometimes on the time of day. Get it off your last invoice rather than guessing, because a rate that is out by half doubles or halves every figure below it.

Once it is right, the two cost rows are the ones to look at: what one recipient costs, and what a thousand cost. The second is the useful one, because a per-segment rate is a number nobody has an instinct for, and the cost of one send to a thousand people is a number everybody does.

The Trim Line Is the Best Thing on the Card

When a message runs to more than one segment, the verdict underneath does something genuinely useful rather than just reporting.

It tells you exactly how many characters to cut to drop a segment, and what that saves across the whole send. Not a vague suggestion to be concise: a number of characters, and a figure in money.

That turns editing into a task with an obvious end. Cut eleven characters, save a fifth of the bill. Most messages have eleven characters of politeness in them that nobody would miss, and it is far easier to find them when you know that is all it takes.

When you are inside one segment the same line tells you the other half: how much room is left before a second one starts. That is the number to write down before you hand the message to somebody else to approve, because approval is where messages grow.

Writing to Fit a Segment

One hundred and sixty characters is less than it sounds and more than most messages need. A few habits get you there without the message reading as a telegram.

  • Put the useful part first. The what and the when. If it gets cut off on a lock screen, the part people see should be the part that matters.
  • Drop the pleasantries, not the clarity. Hope you are well is fourteen characters that say nothing. The date is not.
  • Sign it short. The business name, not the business name and a strapline. An SMS from an unknown number does need to say who it is from.
  • Count the opt-out. If your messages carry an instruction for stopping them, and depending on where you are and what you are sending they may have to, those characters are not negotiable. Budget for them first rather than discovering them last.
  • Watch the link. A long link can be half a segment on its own.

What the SMS Length Calculator Cannot Do

  • It does not send anything. No provider, no account, no number field.
  • It does not know your rate. Whatever you typed is what it prices with.
  • It knows nothing about countries. There is no rate card in here, and SMS pricing varies enormously by destination.
  • It cannot see how a phone will render it. The segment maths is standard; how a particular handset displays a joined message is not this tool’s business.
  • It has no view of the rules. Sender IDs, opt-out requirements, quiet hours and what you are allowed to send to whom vary by country and this has never heard of any of it.
  • Nothing is stored. Close the tab and the message is gone.

Every figure is computed on the server before any script runs, so the panel is a finished answer for the sample message the moment the page appears.

The Cheapest Segment Is the One You Do Not Send

Everything on this page is about making a message shorter. The bigger saving is usually about sending fewer of them.

SMS earns its cost in a narrow band: time-critical things, people you cannot reach any other way, and messages where delivery to a handset matters more than a conversation. Everything else is usually better somewhere the message is not priced by the character.

If the message in question is an appointment reminder, the appointment reminder generator writes one for either channel and shows you the segment count as you choose. And if you are weighing SMS against a WhatsApp send, the broadcast cost calculator prices the other side so you are comparing two real numbers rather than a number and a feeling.

With DMly the send goes over WhatsApp where it can and falls back to SMS only where it has to, which for most businesses turns the SMS bill into a rounding error rather than a line item.

Frequently asked

Because the bar fills the segment being written right now, not the whole message. Go from 160 units to 161 and the first segment closes at 153, so only 8 units sit in the new second segment, the bar collapses to a sliver and the figure beside it reports 145 left in this segment. The segment count above is the number to trust. The bar also changes colour: green inside one segment, amber at two or three, red at four or more.

No. Characters here means code points, and a lot of emoji are built out of several: a flag is two, a skin tone is a base plus a modifier, a family is several joined together. Each part is counted on its own. Separately, an emoji sits high enough in the character range to take two units of a Unicode segment rather than one, so a single emoji on screen can read as two characters and four units.

No. It reports the encoding, and it tells you what the same message would cost without whatever forced it, but it never highlights or names the character, and there is no list of what it found. Every figure recomputes on each keystroke, so the fastest way is to delete half the message and watch the encoding line. If it flips to GSM-7, the character was in the half you removed. Halve again from there.

An empty or unreadable rate counts as zero while you retype, so cost per recipient, cost per 1,000 recipients and the rate quoted in the verdict all read as nothing. A negative rate does the same, because the field is held at zero or above before anything is priced. Nothing else moves. The characters, the encoding, the units and the segment count are worked out from the message alone.

The symbol is fixed on this page and there is no converter behind it. Type your rate per segment in your own currency and every cost below is in that currency, whatever sign sits in front of it: the sums are only rate times segments, and that times a thousand. The per recipient figure carries four decimals on purpose, because at two decimals a three quarters of a cent send would read as a whole cent.

Scroll to Top