Text Tools

Character Counter

A character counter measures text against a length limit — a social post, a meta description, a text message. The catch is that a single emoji is two units to JavaScript and eleven for a family emoji, so most counters report a number no reader would recognise. This one counts what people actually see, and shows the underlying units separately for the systems that bill by them.

Runs entirely in your browser — your text is never uploaded.

Where is this going?

Every link counts as 23 characters no matter how long it is.

0 / 280280 left
Characters
0

What a reader sees

No spaces
0
Words
0
Code units
0

Same as characters here

How to

How to use the Character Counter

  1. 1

    Pick where the text is going

    Choose a preset — a tweet, an Instagram caption, an SMS, a meta description — or set your own limit. Each preset explains what the platform actually truncates.

  2. 2

    Type or paste your text

    The count updates on every keystroke, with the remaining allowance and a bar that turns amber as you approach the limit and red once you pass it.

  3. 3

    Check how emoji are counted

    The visible character count sits alongside the UTF-16 code unit count. They differ whenever emoji or accents are present, and the difference is what trips up other counters.

  4. 4

    For a text message, read the segments

    One non-GSM character switches the whole message to UCS-2 and cuts the limit from 160 to 70. The segment count shows how many messages will actually be billed.

Examples

Character Counter examples

One emoji, eleven characters

Input
Great news 👨‍👩‍👧‍👦 from the team
Output
29 visible characters, 40 code units

The family emoji is a single glyph built from four people joined by invisible characters. Counters using string length report 40 and tell you the post is longer than it looks.

An emoji quadruples the SMS bill

Input
A 140-character message ending in 👍
Output
UCS-2, 3 segments

Without the emoji this is one 160-character message. The emoji forces UCS-2, which caps segments at 67 characters, so the same text becomes three billed messages.

A meta description

Input
A 178-character summary
Output
18 over the limit

Google truncates descriptions around 160 characters. The counter shows how far past you are so you can cut precisely rather than guessing.

Why use it

What the Character Counter gives you

The number readers would count

Emoji, flags, skin tone variants and accented letters each count as one character, because that is what appears on screen.

Both numbers when they differ

Database columns and older APIs count UTF-16 units, so that figure is shown too — useful when a field rejects text that looked short enough.

Honest SMS costs

Detects whether your message fits the GSM alphabet and shows the real segment count, including which character forced the expensive encoding.

Limits with context

Each preset explains what the platform truncates rather than just capping you — Instagram cuts captions at 125 in the feed even though 2,200 are allowed.

Good to know

Character Counter limitations

  • Twitter weights some characters differently under its own counting rules, so its editor may show a slightly different number for text mixing scripts.
  • Platform limits change without notice. The presets reflect published limits at the time of writing.
  • SMS segmentation assumes a standard GSM 03.38 gateway. Some carriers and shortcode providers apply their own rules.
  • Counting visible characters is the right default, but a system that truncates by bytes will cut a long string earlier than the count suggests.

Summary

Character Counter in short

  • Emoji count as one character here and as two or more almost everywhere else.
  • Visible characters and UTF-16 code units are both shown, because different systems count differently.
  • One non-GSM character drops the SMS limit from 160 to 70 and multiplies the cost.
  • Presets cover Twitter, Instagram, LinkedIn, SMS, meta tags and custom limits.
  • Text is never uploaded — the count is computed in the page.

FAQ

Character Counter questions

Why do other counters give a bigger number for emoji?

They measure the string's length in UTF-16 units. A thumbs-up is two of those, a flag four, and a family emoji eleven — even though each is one glyph. Counting grapheme clusters gives the number a reader would arrive at.

Which count should I trust for a form field?

If the limit is enforced by a browser's maxlength or an older database column, the UTF-16 figure is what gets checked. For anything showing text to people — a post, a headline, a description — the visible count is the one that matters.

Why did my text message become three messages?

SMS uses a 7-bit alphabet that holds 160 characters. Anything outside it — an emoji, a curly quote, an em dash — switches the message to 16-bit encoding, where a single message holds only 70 characters and each further part holds 67.

Can punctuation really change the SMS cost?

Yes, and it is the most common cause. A word processor turns a straight apostrophe into a curly one automatically, and that single character is outside the GSM alphabet, so a 160-character message silently becomes three parts.

Are spaces and line breaks counted?

Yes. Every platform counts them, and a line break can count as two characters in some systems. The count without spaces is shown separately for the rare cases where you need it.

Does 280 characters mean 280 letters on Twitter?

Not quite. Every link is counted as 23 characters regardless of its real length, and characters from some scripts count double under Twitter's own weighting. For ordinary Latin text the visible count matches.

What length should a meta description be?

Around 150 to 160 characters. Google measures the rendered width in pixels rather than counting characters, so a description full of wide letters can be cut earlier — treat 160 as a ceiling, not a target.

Can I set my own limit?

Yes. Choose the custom preset and enter any number, which is useful for a content management system, a product field or an internal style rule that no standard preset covers.

Does my draft post get sent to a server?

No. The text is counted in your browser and never transmitted. An embargoed announcement or an unsent message stays entirely on your machine.

Discover

Related text tools