← Back to Blog

SMS Character Counter: Check Your Text Length Before You Send

By Munir Afridi · Updated October 2026 · 11 min read

You wrote a text, it looks short, and your SMS platform says it will go out as three messages. This page shows you how to count SMS characters, spot the single character that made it expensive, and trim the message back to one segment.

Quick Answer

One SMS holds 160 characters in plain GSM-7 text and only 70 characters if it contains an emoji or any other non-GSM character. Go one character over and the message splits into segments of 153 characters (GSM-7) or 67 characters (Unicode), each sent and billed separately. A 161 character text is therefore two messages, not one. Most platforms accept up to 1,600 characters in total.

Encoding1 segmentPer segment when splitMaximum
GSM-7 (plain text)1601531,600
UCS-2 (emoji, curly quotes, non-Latin)7067700 (Twilio table)

Sources: Twilio, "How long can a message be?" (twilio.com/docs, page modified Sep 16, 2026); SignalWire character limits documentation; Deutsche Telekom CPaaS messaging character limits; GatewayAPI help center. All four agree on 160 / 153 / 70 / 67.

The same delivery notice, counted two ways. Plain text: 161 characters, 2 segments. With one emoji added: 163 characters, 3 segments.

How do I count the characters in a text message?

Counting by eye does not work, because spaces, punctuation and line breaks all use up characters. Use a counter and follow these five steps. It takes under a minute, and you can repeat it for every campaign template you own.

  1. Open the free character counter. It has an SMS limit bar set to 160.
  2. Paste your full message, including the opt-out line and any link. Do not leave anything out to add later, because the opt-out text is part of the count.
  3. Read the total. If it is 160 or less and the message is plain text, you are done: it is one segment.
  4. If it is over 160, find the overflow. Every character past 160 pushes you into a second segment, and the first segment shrinks to 153.
  5. Check for hidden Unicode (the next section). If you find any, the real limit is 70, so cut the character or accept three or four segments.

One honest caveat: a general character counter gives you the length, but it does not tell you the encoding. That judgment is yours, and the next sections make it quick. If your text is a marketing message with a link, count the link exactly as it will appear after any shortener, since the shortened form is what travels.

Why is the SMS limit 160 characters, and why does it sometimes drop to 70?

A single SMS carries 140 bytes of data. GSM-7, the default alphabet, packs each character into 7 bits, so 140 bytes fit exactly 160 characters. GSM-7 covers 128 characters: the basic Latin alphabet, digits, common punctuation and a handful of accented letters. It is not the same as ASCII, which matters later.

Anything outside that set forces the phone network to use UCS-2, a 16 bit encoding with two bytes per character. Same 140 bytes, half the characters: 70. The switch applies to the whole message, never to one character. Twilio's documentation puts it plainly: emoji, Chinese hanzi and other UCS-2 characters change the limit from 160 to 70, and so does a curly quote that a word processor inserted for you. SignalWire gives a one character example, a heart symbol, that makes the entire message bill as Unicode.

That is the real danger. A message that is 144 characters long looks safe. Add one smart apostrophe and it is a 144 character Unicode text, which needs 3 segments. The next table lists the usual suspects.

What you typedEffectFix
EmojiWhole message becomes UCS-2 (70 limit)Delete it, or accept the shorter limit on purpose
Curly quotes and apostrophes from Word or DocsWhole message becomes UCS-2Retype them as straight quotes
Chinese, Arabic, Hindi and other non-Latin scriptsWhole message becomes UCS-2None needed; write to the 70 limit
Symbols such as a heartWhole message becomes UCS-2Replace with a word
Some accented lettersDepends on the letterTest the message in a counter and a platform preview

Sources: Twilio, "How long can a message be?" (Sep 2026); Twilio, "What is GSM-7 character encoding?" (Dec 2025); SignalWire character limits documentation; GatewayAPI help center. Twilio also offers Smart Encoding, which swaps some non-GSM characters such as curly quotes for GSM equivalents. Not every platform does this, so do not rely on it.

How many characters fit in 1, 2, 3 or 5 text segments?

The moment a message needs a second segment, the headers eat 7 characters per GSM-7 segment and 3 per UCS-2 segment (SignalWire, Deutsche Telekom). That is why the limits are 153 and 67 per piece, not 160 and 70. Use this table to find how many segments a given length costs.

SegmentsGSM-7 up toUCS-2 up to
116070
2306134
3459201
4612268
5765335
101,530670

Calculated from the per-segment limits of 153 (GSM-7) and 67 (UCS-2) above. Cap per message: 1,600 characters (Twilio, SignalWire, Deutsche Telekom); Twilio's own table lists 700 for UCS-2, which conflicts with its statement that 1,600 applies across channels, so treat 700 as the safe ceiling for Unicode text. Deutsche Telekom adds that some carriers accept at most 5 segments.

Twilio's own example makes the arithmetic concrete: a 161 character GSM-7 message goes out as two segments, one of 153 characters and one of 8. You are billed for two messages to deliver eight extra characters. Twilio also notes that a 140 character message with one non-GSM character is split into two segments, because 140 is already over the 70 character Unicode limit.

Which characters count as two in an SMS?

GSM-7 has an extension table. Characters in it are legal, so they do not trigger Unicode, but each one is sent behind an escape character and uses two slots. Wikipedia's GSM 03.38 entry, Messangi's October 2025 guide and Protexting list the same set (the pipe sits in a table cell that some pages render blank), and a text full of them runs out of room fast.

{ } [ ] ^ ~ \ | €

Nine visible characters (the euro sign, caret, both curly braces, both square brackets, tilde, backslash and pipe), plus the form feed control code. Each counts as 2.

This catches people who write code snippets, prices in euros or file paths. A message that is all extension characters fits only 80 per segment. Normal text rarely has more than a few, but a coupon like [SAVE20] costs 11 slots, not 8, because both brackets count double. Swap square brackets for round brackets and you save two characters at no cost to meaning.

The euro sign is the one that hurts European senders most. Writing "EUR 15" instead of the symbol saves one slot.

How do I shorten a text to fit one SMS segment?

Work from the biggest savings down. Fix the encoding first, because it can double your capacity, then trim words. Here is the order that works on real templates.

  1. Remove emoji and curly quotes. This takes you from a 70 limit back to 160.
  2. Cut the greeting. "Hi Sam, your order" becomes "Order" if the sender name already shows.
  3. Shorten the link. A long tracking URL can often be swapped for a short one on your own domain.
  4. Use numerals and times. "9 am to 1 pm" beats "between nine in the morning and one in the afternoon".
  5. Keep the opt-out line, but short. "Reply STOP to opt out" is 22 characters and is usually required for marketing texts.
  6. Recount. Paste the new version into the character counter and confirm it reads 160 or less.

Here is that process on the delivery notice from the animation above. The 161 character original is two segments. The rewrite is 99 characters and one segment, with the same facts and the opt-out line intact.

VersionTextLengthSegments
BeforeHi Sam, your order #48213 has shipped and will arrive Thursday between 9 am and 1 pm. Reply STOP to opt out. Track it anytime at example.com/t/48213 - thank you!1612
AfterHi Sam, order #48213 ships Thursday, 9 am to 1 pm. Track: example.com/t/48213 Reply STOP to opt out991

A second example shows the hidden-character trap. A flash sale text of 144 characters ends with "so don't wait". If that apostrophe came from a word processor it is a curly one, and the message is Unicode: 144 characters at 67 per segment is 3 segments. Retype the apostrophe as a straight one and the identical words are 144 GSM-7 characters, a single segment. Same text on screen, one third of the cost.

Do iMessage, WhatsApp and RCS have the same character limit?

No, and mixing them up is the most common source of confusion. The 160 and 70 limits belong to classic SMS, the carrier text channel. iMessage and WhatsApp travel over the internet as data, so they have no segments and no per-character billing. RCS, the carrier upgrade to SMS, behaves differently again: Twilio says RCS can carry up to 1,600 characters in one message without splitting it into segments.

The catch is fallback. If a recipient has no RCS or data connection, an RCS message can drop back to plain SMS, and then the 160 or 70 limit applies and a long message arrives as several segments. If you send business texts to a mixed audience, write to the SMS limit and treat anything longer as a bonus on richer channels.

What edge cases trip people up when counting SMS length?

Most counting errors come from five things. Know them and your numbers will match what the platform bills.

  • Personalization fields. A template with a first name slot is only as long as its longest real name. Count the template with a long sample name, not the placeholder.
  • Links. Count the final URL, not the long one you pasted. The shortened version is what the phone receives.
  • Sender name and prefixes. Some platforms prepend a company name or a compliance line. Check a preview before you trust the raw count.
  • Line breaks. Each one is a character. A short list with four breaks costs four characters.
  • The 161 trap. One character over 160 does not cost one extra character. It re-splits the entire message at 153 per segment, so the first part loses 7 characters too.

If you also write for other short-form channels, the same habit applies. Keep a platform character limits reference open, check tweets against the tweet length guide, trim captions with the Instagram caption guide, and keep email subject lines short with our subject line tips. Need a word total rather than characters? Use the word counter.

How long should a marketing text actually be?

Shorter is cheaper, but the limit is a ceiling, not a target. A reasonable rule: lead with who you are and the single reason to read on, put the link or the action at the end, and keep the opt-out line. If the message does not fit in 160 characters of plain text, cut an idea before you cut the opt-out line or clarity. Two segments are fine when the second one carries something the customer needs. Three segments of marketing copy usually mean the message is trying to do two jobs.

I run every template through the counter twice: once as written and once with the longest realistic personalization values. If the second pass tips into a new segment, the template gets trimmed, not the audience.

Frequently Asked Questions

How many characters are in one text message?

One SMS holds 160 characters when it uses the GSM-7 alphabet, which covers plain English letters, digits and common punctuation. If the text contains an emoji, a curly quote or any other character outside GSM-7, the whole message switches to Unicode (UCS-2) and one SMS holds only 70 characters.

What happens when my text goes over 160 characters?

The message is split into segments and each segment is sent and billed as its own SMS. Once a text is split, every segment carries a header, so each one holds 153 GSM-7 characters instead of 160. A 161 character message becomes two segments: one with 153 characters and one with 8.

Why does one emoji cut my limit from 160 to 70?

Emoji are not in the GSM-7 alphabet, so the phone network has to send the whole message in UCS-2, a 16 bit encoding. Every character then takes two bytes, which drops a single segment to 70 characters and a multi-part segment to 67. One emoji changes the encoding for the entire message, not just for itself.

Which characters count as two in an SMS?

Nine visible GSM-7 characters sit in the extension table and use two character slots each: the euro sign, the caret, the curly braces, the square brackets, the tilde, the backslash and the pipe. A message made entirely of these would hold only 80 characters in a single segment.

Is there a maximum length for a text message?

Messaging platforms generally cap one SMS body at 1,600 characters, which is about 11 segments in GSM-7. Twilio lists 1,600 characters for GSM-7 and 700 for UCS-2. Some carriers also limit a message to 5 segments, so keep marketing texts well under that.

Do spaces and line breaks count as characters in an SMS?

Yes. Spaces, line breaks and punctuation each use one character in GSM-7, the same as letters. A line break is one character, so a tidy three line message costs only two extra characters compared with the same words on one line.

How can I check my SMS length before sending?

Paste the message into a character counter and compare the total with 160. If any character is not a plain letter, digit or standard punctuation mark, assume the limit is 70 and check the total against that instead. The free character counter on this site shows an SMS limit bar as you type.

Do iMessage, WhatsApp and RCS have the same 160 character limit?

No. The 160 character cap belongs to classic SMS. iMessage, WhatsApp and other chat apps send over the internet and do not segment text this way. Twilio says RCS can send up to 1,600 characters without splitting into segments, but a text that falls back to SMS is still limited to 160 or 70.

Sources and data freshness

Checked October 9, 2026. Limits of 160, 153, 70 and 67 characters were confirmed against Twilio's "How long can a message be?" (page modified Sep 16, 2026), SignalWire's character limits documentation, Deutsche Telekom's CPaaS messaging character limits guide and the GatewayAPI help center, which all agree. The extension character list comes from Wikipedia's GSM 03.38 article, Messangi (Oct 31, 2025) and Protexting. Twilio's GSM-7 glossary page (Dec 9, 2025) confirms that extension characters count as two. The 1,600 character cap is stated by Twilio, SignalWire and Deutsche Telekom. Twilio's UCS-2 maximum of 700 conflicts with that figure and is shown as the conservative ceiling. Segment totals in the table are calculated from the per-segment limits. SMS encoding is set by telecom standards and rarely changes, but carriers can add their own rules, so confirm with your provider.

Related Tools and Articles