Lumen Lab 루멘랩

Kankan

Character counter

35,000+ automatic tests

Open

Word and character counter that shows every counting rule side by side, plus X, Instagram, YouTube and SMS limits.

  • 35,000automated tests
  • 1character per emoji like 👨‍👩‍👧
  • On devicetext never leaves it

Try it here

Loading

The counts below come from the same counting files Kankan runs. Change how a line break counts and watch the totals move.

Paste your text and eight numbers update at once

  1. Paste your textType, paste or press ‘Try a sample text’, and ‘Words’ and ‘Characters’ change as you write.
  2. Read the six figures belowUnder them, ‘Without spaces’, ‘Words’ (Unicode rules), ‘Sentences’, ‘Paragraphs’, ‘Reading time’ and ‘Reading aloud’ follow along.
  3. Match the line-break ruleOpen ‘Line breaks count as 1’ with ‘change’ and pick ‘0’, ‘1’ or ‘2’ to match the form you are filling in.
  4. Set a goalPress ‘Set a goal’, enter a number and choose ‘Words’, ‘Characters’ or ‘Without spaces’ to see how many are left or over.

It can also

What it checks and discloses

The counting code is covered by about 35,000 automated tests, with expected values taken from Python's codecs and Unicode libraries, the twitter-text package and three independent SMS calculators.

A YouTube description holds 5,000 bytes, not 5,000 characters

Rules and sources

One character
Each character you see counts once, even if it is built from several pieces, like an emoji with a skin tone.Unicode Standard Annex UAX #29 (the browser’s Intl.Segmenter)
UTF-8 bytes
1 byte for ASCII, 2 for most accented Latin letters, 3 for Korean, Chinese and Japanese, and 4 for most emoji, with no byte-order mark counted.RFC 3629: UTF-8
X posts
280, but Chinese, Japanese and Korean characters and emoji count as 2 and any link counts as 23; the tests compare results with X’s own twitter‑text 3.1.0.X documentation: Counting characters · Checked Oct 10, 2026
YouTube descriptions
The limit is counted in UTF-8 bytes, so accented letters and emoji use up more than one each.YouTube Data API: videos · Checked Oct 10, 2026
Bluesky posts
300 characters as you see them (one emoji counts as one) and 3,000 UTF-8 bytes both apply, and the row is marked over if either one is passed.Bluesky post lexicon (app.bsky.feed.post) · Checked Oct 10, 2026

For the 6 limits whose documentation does not say what is counted, Kankan counts the way JavaScript does (most emoji as 2) and marks them ‘unit not documented’.

3 guides

  1. How X counts characters: emoji, links and the 280 limit
  2. Why a 161-character text costs two messages
  3. Characters, code points, bytes: why 👨‍👩‍👧 is 1, 5 or 18

Social media limits are rechecked every six months

  1. Fixed counts showing 0 when you came back to a page with your text still in the box.

  2. Number boxes now flag anything that is not a whole number instead of quietly reading it another way.

  3. The line-break rule and your goal are now kept until you close the tab.

  4. Kankan first went online.

More from Lumen Lab