• 228 destinations
  • No KYC, ever
  • Bitcoin, Monero, USDT and 4 more

Free tool

SMS character counter.
Count segments before you pay.

Paste a message to read its length, its encoding and the number of segments it will be billed as. Characters that switch the text to Unicode are pointed out, with the plain version one click away.

  • 160 GSM-7 or 70 Unicode per SMS
  • Up to 6 parts, 918 characters
  • Runs in your browser

Count a message

Nothing is sent
Encoding
Unicode
Characters
81
Segments
2
Left
53

Part 2 of 2: 14 of 67 characters

2 characters force Unicode

Your order’s on its way – track it here: smsmtr.io/t/8fK2. Reply STOP to opt out.
  • ’right single quoteU+2019→ '
  • –en dashU+2013→ -
1 segment instead of 2
See how it splits
    $0.0168

    2 × $0.0084 per recipient · $16.80 per 1,000 recipients

    Send this message

    Counted in your browser. Nothing is sent or stored.

    01How the count works

    Three numbers decide what a text costs.

    The encoding, the length in that encoding and the size of each part. One character outside GSM-7 changes all three.

    • GSM-7: 160 characters

      Latin letters, digits and common punctuation, seven bits each: 160 in one SMS, 153 per part once a text is split.

    • Unicode: 70 characters

      Everything else, from emoji and curly quotes to Cyrillic or Chinese, sixteen bits each: 70 in one SMS, 67 per part.

    • Parts: up to 6

      A long text travels as several SMS joined on the phone, each billed. SMSMeteor accepts 6 parts: 918 GSM-7 or 402 Unicode characters.

    Encoding1 SMS2 parts3 parts4 parts5 parts6 parts
    GSM-7160306459612765918
    Unicode (UCS-2)70134201268335402

    Maximum characters for each number of parts. A part carries a 6-byte header that joins the pieces on the phone, which is why parts hold 153 and 67 characters instead of 160 and 70.

    02Reference

    The GSM-7 alphabet, all 128 positions.

    Every character in this table costs one position. The ten in the extension table cost two. Anything that appears in neither turns the message into Unicode.

    GSM 03.38 default alphabet, by hexadecimal code
    Low digit0x0_0x1_0x2_0x3_0x4_0x5_0x6_0x7_
    _0@ΔSP0¡P¿p
    _1£_!1AQaq
    _2$Φ"2BRbr
    _3¥Γ#3CScs
    _4èΛ¤4DTdt
    _5éΩ%5EUeu
    _6ùΠ&6FVfv
    _7ìΨ'7GWgw
    _8òΣ(8HXhx
    _9ÇΘ)9IYiy
    _ALFΞ*:JZjz
    _BØESC+;KÄkä
    _CøÆ,<LÖlö
    _DCRæ-=MÑmñ
    _EÅß.>NÜnü
    _FåÉ/?O§oà

    Extension table: two positions each

    • FFESC 0x0A
    • ^ESC 0x14
    • {ESC 0x28
    • }ESC 0x29
    • \ESC 0x2F
    • [ESC 0x3C
    • ~ESC 0x3D
    • ]ESC 0x3E
    • |ESC 0x40
    • €ESC 0x65

    LF and CR are line breaks, SP is the space, ESC opens the extension table and FF is a page break no phone displays. National shift tables for Turkish, Spanish or Portuguese exist in the standard but most international routes do not use them.

    03Common traps

    Characters that quietly switch a text to Unicode.

    Most come from word processors, phones that “smarten” punctuation and copy-paste from web pages. The counter flags each one and offers the plain version where there is one.

    CharacterWhat it isWhere it comes fromUse instead
    ’ ‘Curly apostrophesWord processors, phones that smarten punctuation'
    “ ”Curly double quotesSame sources, and most web pages"
    – —En and em dashesAuto-correct turns " - " into a dash-
    …EllipsisAuto-correct, one character for three dots...
    invisibleNo-break and thin spacesCopied from web pages, PDFs and spreadsheetsA plain space
    invisibleZero-width charactersCopied from chat apps, HTML editors and CMS fieldsNothing: delete them
    á í ó ú ç â ê ô ã õAccents outside GSM-7Spanish, Portuguese, French, Italian textThe plain letter, or accept Unicode
    ą ę ł ś ş ğ ı ő ű č řCentral European and Turkish lettersPolish, Turkish, Hungarian, Czech textThe plain letter, or accept Unicode
    😀 👍 📦EmojiPhones, marketing templatesWords, or budget for Unicode
    Б Ж Я λ ψCyrillic and Greek lowercaseRussian, Ukrainian, Greek textTransliteration, or Unicode

    04Worked examples

    What one character does to the bill.

    One booking reminder, an apostrophe or an emoji apart, then the same reminder in Russian before and after transliteration. Costs use today's United States rate of $0.0084 per segment.

    Hi Sam, your table for 4 at Luigi's is booked for Friday at 8:30 pm. Reply 1 to confirm or 2 to cancel. Questions? Call 020 7946 0321. See you soon!

    Price a whole campaign
    VersionEncodingCharactersSegments10,000 to the US
    As typed, straight apostrophe (')GSM-71481$84.00
    Curly apostrophe (’) insteadUnicode1483$252.00
    One emoji added at the endUnicode1513$252.00
    The same reminder in RussianUnicode852$168.00
    In Russian, transliteratedGSM-7901$84.00

    05Questions, answered

    Counting questions, answered.

    How many characters fit in one SMS?

    160 in GSM-7, the default alphabet of Latin letters, digits and common punctuation, or 70 in Unicode. A longer text is split into parts of 153 GSM-7 or 67 Unicode characters, and every part is billed as one SMS. SMSMeteor accepts up to 6 parts, so 918 GSM-7 or 402 Unicode characters.

    Why is a 150-character message billed as three SMS?

    It contains at least one character outside GSM-7, often a curly apostrophe, a dash or an emoji, so the whole message is sent in Unicode: 70 characters for one SMS, 67 per part beyond that. 150 characters then make three parts. Replace that one character and the same text fits in a single 160-character SMS.

    Do emoji count as one character?

    No. Most emoji take two Unicode units, and skin tones, flags and family emoji take four or more. They also switch the whole message to Unicode, which cuts the room for every other character from 160 to 70.

    Which characters count twice in GSM-7?

    The ten characters of the extension table: € [ ] { } ^ ~ | \ and the form feed. Each takes two positions, an escape code and the character, but the message stays in GSM-7.

    Do spaces and line breaks count?

    Yes. Every space and every line break is one character in GSM-7 and one unit in Unicode, exactly like a letter.

    Which accents work without Unicode?

    GSM-7 includes é è ù ì ò à ä ö ü ñ, the capitals Ä Ö Ü Ñ É Ç Å Æ Ø, and å æ ø ß. Others such as á í ó ú ç â ê ô ã õ are not in the alphabet: use the plain letter, or accept the Unicode length.

    Does SMSMeteor change my text to save segments?

    No. The API never rewrites a message: it returns the encoding and the segment count with every message it accepts. The replacements offered by this counter are suggestions you apply yourself before sending.

    Is what I type sent anywhere?

    No. The counter runs on this page, in your browser. The text is not sent to SMSMeteor, not logged and not stored.

    06More free tools

    Count it, format it, price it.

    Each tool runs on published data and in your browser: the GSM 03.38 tables, the numbering plan of every destination and the live rate card.

    All tools

    GSM-7 vs Unicode guideSMS glossary