How does the character counter handle spaces and line breaks?
The counter shows two figures: total characters (every keystroke including spaces, tabs, and newlines) and characters excluding whitespace. Most platforms — Twitter, SMS, meta tags — count whitespace, so the total is usually the number that matters. The "no spaces" figure is useful when comparing word density or estimating reading length.
Why are characters and bytes different numbers?
JavaScript counts characters as UTF-16 code units while UTF-8 byte length depends on what each character actually is. ASCII letters take one byte. Most accented Latin and Greek letters take two. Most CJK characters and emoji take three or four. So a tweet with one emoji can be one character on screen but four bytes on the wire — important for storage limits, network payload sizing, and database column widths.
How are words counted?
Words are sequences of non-whitespace characters separated by whitespace. The counter trims leading and trailing whitespace before splitting, so leading newlines do not inflate the count. Hyphenated terms like "state-of-the-art" count as one word, matching the convention used by Microsoft Word and Google Docs.
What is the right character limit for SEO meta descriptions?
Google currently truncates meta descriptions around 155–160 characters on desktop and 120 on mobile. Aim for under 155 to keep the full snippet visible. Title tags should stay under 60 characters. The counter shows live totals so you can write to the limit instead of guessing.
How long can a tweet be?
X (formerly Twitter) allows 280 characters for free accounts and 25,000 for X Premium. URLs always count as 23 characters regardless of actual length. Emoji and most CJK characters count as 2 characters each in the official Twitter weighting algorithm — so the on-screen character count is a useful approximation but not exact for posts heavy in emoji or Asian scripts.
Why does the SMS section show different segment counts?
SMS uses one of two encodings. GSM-7 (plain ASCII-ish) packs 160 chars in one segment, 153 in each subsequent. UCS-2 (any non-GSM character — emoji, smart quotes, accents) drops you to 70 chars per segment, 67 in subsequent. A single emoji in an otherwise plain message can quadruple the cost, so it is worth knowing before you hit Send.
Is the text uploaded anywhere?
No. Counting runs entirely in JavaScript inside your browser. Open DevTools → Network and confirm: typing in the textarea triggers zero network requests. Safe for legal drafts, internal copy, customer messages, and any text you cannot paste into a remote tool.
How does the counter handle emoji and ZWJ sequences?
Emoji built from joined surrogate pairs (most emoji above U+FFFF) count as 2 in the UTF-16 character total but as 4 bytes in UTF-8. Compound emoji using zero-width joiners — like 👨👩👧 — are visually one glyph but several Unicode code points, so the character count reflects the underlying code units, not the rendered glyph count.