SMS character counter
Paste your sales text: characters, encoding, billed segments, the one character that doubles the bill, and the compliance basics (brand name, STOP, quiet hours, 10DLC).
One curly quote can triple the bill
Your text message
Paste or type the message exactly as you will send it.
144 characters typed · UCS-2 (Unicode) · 3 billed segments
1 character switches your text to Unicode
Swap each flagged character for its GSM equivalent when it has one, and each segment holds more than twice as many characters.
- ’Curly apostrophe 1×U+2019 → '
3 segments now, 1 after the fix.
Preview, segment by segment
Each background color is one billed segment. Hover a highlighted character to see why.
Hi Julie, it’s Tom from Acme. I tried you this morning about your c
lient follow-ups. Worth a quick 15-min chat this week? Reply STOP t
o opt out.
- ’Forces Unicode
- €Counts as 2
- ⍽Non-breaking space or invisible character
144 characters, UCS-2, 3 segments.
units counted
UCS-2 (Unicode)144of 201
3billed segments
57 units left before segment 4
Cut 10 units to fit in 2 segments (or fix the Unicode characters)
67 per segment
Characters that fit in one message
One character outside the GSM alphabet switches the whole message to Unicode: 70 characters in a single message, 67 per segment beyond that.
What the send costs
Carriers and messaging platforms bill every segment, not the message as a whole.
Editable assumption. Your actual price per segment, carrier fees included. The starting value is an assumption to replace.
Cost of the send
$18.00
$0.036 per recipient (3 segments each)
1,500 billed segments in total
Fixing the Unicode characters saves $12.00 (1 segment per recipient instead of more).
If your plan includes a number of texts, most platforms count segments against it: a 3-segment message uses 3 credits.
Compliance check
The rules depend on the recipient’s country and on who they are.
To check that the recipient knows who is texting.
Recipient’s local time (24-hour clock).
Basis for textingPass
They agreed to this text, for example on a call. Log it with the date. For automated or recurring marketing texts, get written consent.
Source: 47 CFR § 64.1200 (TCPA rules), checked November 6, 2026
Sender identificationPass
"Acme" appears in the text: the recipient knows who is texting.
Source: CTIA Messaging Principles and Best Practices, May 2023, § 5.1.1
Opt-out languagePass
STOP is in the text. Honor every opt-out for the whole team, the same day, and send no more than one confirmation.
Send day and timePass
Between 8 a.m. and 8 p.m. in the recipient’s time zone, during business hours: inside the federal window and the stricter state windows.
Source: 47 CFR § 64.1200(c)(1) ; Florida Statutes § 501.616(6)(a)
A2P 10DLC registrationPass
Number linked to a registered brand and campaign: check that this text matches the use case you declared.
EncodingCheck
UCS-2: 1 non-GSM character cut the capacity from 160 to 70 characters per segment. The replace button fixes them.
Source: Twilio, SMS character limit
LengthCheck
The text is split into 3 segments, each one billed. Phones reassemble them, but a sales text is better in one.
Information, not legal advice. Rules checked November 6, 2026, with sources under each check.
Share or keep this text
The link carries the text and your settings, so a teammate can review it. It is only created when you click.
Text from the number that just called. Skipcall sends and receives texts from the same number your reps call from, in an inbox shared by the team and attached to the contact record, so a STOP is recorded once for everyone. SMS is included in every plan, from $25 per user per month billed annually, with no long-term commitment.
Your text never leaves your browser. How to check
How many characters fit in a text message?
A text message holds 160 characters when it only uses the GSM-7 alphabet, the standard SMS character set defined in 3GPP TS 23.038. If a single character falls outside that alphabet, the whole message switches to Unicode (UCS-2) and the limit drops to 70 characters.
Past that limit, the message is split into segments that the recipient’s phone stitches back together. Each segment gives up a few characters to the header that makes the reassembly possible: 153 characters per segment in GSM-7, 67 in Unicode. And each segment is billed as one text.
In practice, a 144-character message fits in one segment. The same message with one curly apostrophe (’), the kind your phone or word processor inserts on its own, costs three.
160
GSM-7, single message
The standard alphabet: unaccented letters, digits, common punctuation, some accents like é and ñ.
153
GSM-7, per segment
A 161-character message goes out as 2 segments of 153 and 8 characters.
70
Unicode, single message
As soon as a non-GSM character appears: emoji, curly quote, em dash, ellipsis.
67
Unicode, per segment
A 140-character Unicode message goes out as 3 segments.
How many characters fit in 2, 3 or 4 segments?
Each extra segment adds 153 characters in GSM-7 and 67 in Unicode. The limits worth knowing for a sales text:
| Billed segments | GSM-7 (standard alphabet) | Unicode (emoji, curly quotes…) |
|---|---|---|
| 1 segment | 160 · up to 160 characters | 70 · up to 70 characters |
| 2 segments | 306 · up to 306 characters | 134 · up to 134 characters |
| 3 segments | 459 · up to 459 characters | 201 · up to 201 characters |
| 4 segments | 612 · up to 612 characters | 268 · up to 268 characters |
| 5 segments | 765 · up to 765 characters | 335 · up to 335 characters |
| 6 segments | 918 · up to 918 characters | 402 · up to 402 characters |
A double-width character (€, brackets, emoji) that lands right at the end of a segment moves whole to the next one, so the real limit can drop by one.
Characters that switch a text to Unicode
Phone keyboards and word processors quietly swap plain characters for typographic ones. These are the usual suspects:
| Character | Where it comes from | GSM equivalent |
|---|---|---|
| ’ ‘ | Curly apostrophes, inserted automatically by iPhone "smart punctuation", Word, Google Docs | ' (straight apostrophe) |
| “ ” | Curly double quotes, same origin | " (straight quote) |
| … — – | Ellipsis and dashes from autocorrect | ... and - |
| ⍽ | Non-breaking spaces in text copied from a web page or a formatted document | regular space |
| á í ó ú ç | Names like Ramón, Sofía or François: é is in the alphabet, these accents are not | a i o u c |
| 👋 🙂 🚀 | Emojis: each one also counts as 2 units or more | none, remove them |
Stay in GSM-7 but count as 2 characters: € [ ] { } \ | ^ ~. Merge fields written as {first_name} are not counted as typed: their real value is.
In the alphabet at no extra cost: letters A to Z, digits, common punctuation, é è à ù ì ò, Ç, ä ö ü ñ, £ $ ¥ @.
About ç: the standard draws an uppercase Ç at that position, the Unicode mapping table maps it to lowercase ç, and platforms do not all make the same choice. The counter uses the cautious assumption, which is Twilio’s: only uppercase Ç is GSM-7.
3GPP TS 23.038, Alphabets and language-specific information · Unicode, GSM 03.38 mapping table · Twilio, what the SMS character limit is
How the counter works
- 1
It picks the encoding
Every character is looked up in the GSM-7 basic table (127 characters) and its extension table (10 characters). One character missing from both, and the whole message is counted as Unicode.
- 2
It counts units, not letters
In GSM-7, an extension character (€, brackets, braces) counts as 2. In Unicode, an emoji counts as 2 units, sometimes more for composed emojis (families, flags, skin tones).
- 3
It splits like a carrier
Up to 160 (or 70) units, one segment. Beyond that, chunks of 153 (or 67). A double-width character is never cut in half: it moves whole to the next segment, as messaging platforms do.
- 4
It estimates merge fields
In a template, {first_name} or [Company] is counted at the planned length you set. The longest value in your list decides the segment count.
- 5
It never rewrites without you
The replace button offers the GSM equivalent of each character and can be undone. Emojis have no equivalent: you decide whether to keep them.
What a sales text has to include
The counter checks what can be seen in the text and in your settings. Rules checked November 6, 2026. Information, not legal advice.
In France
-
The right law
A sales text is an "electronic mail" under article L34-5 of the French Postal and Electronic Communications Code, like an email. The cold-calling reform in force since August 11, 2026 covers calls, not texts.
CNIL (French data protection authority), page updated June 10, 2026
-
Consumers: prior consent
Except existing customers for similar products. No pre-ticked boxes, no consent buried in terms of service.
-
Businesses: legitimate interest, with conditions
The message must relate to their job, they must have been informed, and they must be able to object easily.
-
In every message
The sender’s identity and a simple, free way to refuse further messages. STOP is the expected form.
In the United States
-
A text is a call
The TCPA applies to texts. Consent rules, the Do Not Call registry and calling hours therefore cover sales texts, including texts to a business contact’s cell phone.
-
8 a.m. to 9 p.m., recipient’s time
No telephone solicitation before 8 a.m. or after 9 p.m. in the recipient’s local time. Florida limits commercial telephone solicitations to 8 a.m. to 8 p.m., and Oklahoma and Maryland have similar windows according to law-firm summaries. Stopping at 8 p.m. is the safe choice.
47 CFR § 64.1200(c)(1) ; Fla. Stat. § 501.616(6)(a) ; DWT summary
-
STOP and its synonyms
A reply of "stop," "quit," "end," "revoke," "opt out," "cancel," or "unsubscribe" revokes consent. CTIA recommends the standard "Reply STOP to opt out."
-
Brand, links, lists
CTIA asks that the sender be identifiable, that public URL shorteners be avoided, and that rented or purchased opt-in lists not be used.
CTIA Messaging Principles and Best Practices, § 5.1.1, 5.1.4, 5.3.2
-
10DLC
To text from a local 10-digit number through software, your brand and campaign must be registered with The Campaign Registry. Our guide covers the steps, the fees and the review.
Common mistakes
-
Writing in Word or Notes, then pasting
The text arrives with curly quotes, em dashes and non-breaking spaces. It still reads fine, but it costs two or three times more. Paste it here before you save it as a template.
-
Adding an emoji "for warmth"
A single 👋 turns a 101-character message from 1 segment into 2. On a 2,000-recipient send, that is 2,000 extra segments.
-
Counting the template instead of the sent text
"Hi {first_name}" is 15 characters; "Hi Christopher-James" is 20. Set each merge field to the longest value in your list.
-
Skipping STOP because "it’s B2B"
There is no B2B exception for texts to cell phones under the TCPA, and carriers expect opt-out language. A recipient with no way out reports the number, the same number you call from.
-
Sending on your own clock
The 8 a.m. to 9 p.m. rule runs in the recipient’s time zone. A 9 a.m. send from New York lands at 6 a.m. in California.
Keep going
The full rules, ready-to-adapt templates and related tools.
- A2P 10DLC and cold texting rules Brand and campaign registration, fees, review delays, and the TCPA rules for sales texts.
- SMS after call templates 14 texts sorted by situation, ready to run through this counter.
- TCPA rule changes, November 2026 Opt-out keywords, revocation methods and the ten-business-day deadline.
- Cold calling compliance checker The same check for calls: legal hours, holidays, consent and do-not-call lists by country.
- Sales cadence generator Where the text belongs between calls and emails, day by day.
- When to call your prospects The best time slots to call, so your follow-up text lands right after.
- Cold calling cell phones in B2B Why the line between business and personal numbers is thinner than it looks.
- Skipcall SMS messaging Calls and texts from the same number, replies shared by the team.
Your text never leaves your browser
Counting and checks run entirely in your browser. Nothing you type is sent to Skipcall or anyone else, and nothing is stored. The page address stays clean while you type: the share link is only built when you click "Copy link."
To check: once the page has loaded, turn off your connection and edit the text. The count keeps updating.
A calendar full of meetings starts with a call.
No commitment · Number live in 2 minutes