Character Counter

Count characters with and without spaces. Perfect for tweets, SMS, and essay limits.

0 words · 0 characters
0
Characters
0
Characters (no spaces)
0
Words
0
Sentences
0
Paragraphs
0
Syllables
Reading time
at 238 words/min
Speaking time
at 150 words/min
Avg word length
characters
Avg sentence length
words

About this tool

A free character counter for tweets, SMS, captions, and essay limits. The counter shows characters with and without spaces, alongside word, sentence, and paragraph counts so you can track every relevant length constraint at once.

Most platforms count differently. Twitter/X is 280 (or 4,000 for premium), Instagram bios are 150, SMS messages are 160 per segment in GSM-7 encoding. Use the Character Counter to match your text to the platform without surprise truncation.

The same shared text buffer powers every tool in Text Toolkit — paste once, then switch to the Word Counter for keyword density, the Readability Checker for grade-level analysis, or the Case Converter to reformat.

How to use the character counter

Paste or type into the input and the count updates live. The counter displays characters with spaces and without spaces side by side, since different platforms count differently. Alongside character counts you'll see word, sentence, and paragraph counts — useful when a platform limit cuts across multiple units (e.g., Twitter caps you on characters but you still want to know how many sentences you have).

What gets counted

  • Whitespace (spaces, tabs, newlines) is counted in the "with spaces" total and omitted from "without spaces".
  • Emoji count as one character on most modern platforms but historically as two; the counter shows code-point count (matching what Twitter and most modern editors report).
  • Accented characters ("é", "ñ") count as one character each.
  • Combining diacritics (an "e" followed by a combining acute) count as two characters even though they render as one. This is rare in everyday writing but common in copy pasted from older databases.
  • Curly quotes, em-dashes, ellipses count as one character each. On SMS this matters — see the encoding switch below.

Platform quick reference

PlatformLimitNotes
Twitter / X280 (4,000 Premium)URLs count as 23 regardless of actual length
SMS (GSM-7)160 per segmentOne emoji or curly quote drops the limit to 70
Instagram caption2,200Only first 125 visible before "more" link
Instagram bio150Always fully visible
LinkedIn post3,000Headline limit is 220
Meta description~155Truncation is pixel-based, not character-based
Bluesky300 (graphemes)Counts in user-perceived characters, not code points
Mastodon500 defaultIndividual instances can raise the limit

For the full breakdown of how each platform counts (and the gotchas — SMS encoding switching, Twitter's URL handling, pixel-width truncation in search snippets), see our guide on character limits across platforms.

The SMS encoding trap

The single most expensive character-counting mistake is in SMS. Plain ASCII messages use GSM-7 encoding and give you 160 characters per segment. Add a single emoji, curly quote, em-dash, or non-Latin character and the whole message switches to UCS-2 encoding, which drops the per-segment limit to 70 characters. A 150-character marketing text costs 1 segment in plain ASCII; the same message with one trailing emoji costs 3 segments.

Watch for these specific characters that silently break GSM-7:

  • Curly quotes: " " ' '
  • En-dash and em-dash: – —
  • Single-character ellipsis: …
  • Bullet: •
  • The pipe, tilde, backslash, and curly braces (extension table — count as 2 chars each)

A typography pass through your draft (replacing curly quotes with straight, em-dashes with hyphens) can halve the cost of bulk SMS campaigns.

Common use cases

  • Pre-flight check for social posts before composing in the platform
  • Verifying meta description and title tag lengths before publishing
  • Drafting SMS campaigns where segment cost matters
  • Essay or assignment character limits (some universities use character rather than word counts)
  • Form-field validation testing
  • Translation work where source/target character ratios affect billing

Frequently asked questions

  • What is the character limit for a tweet?
    280 characters for standard X/Twitter posts; X Premium users can post up to 4,000. URLs are auto-shortened by t.co and count as 23 characters regardless of actual length.
  • Does character count include spaces?
    It depends on the platform. Twitter, SMS, and meta descriptions count spaces. For programming or URL contexts you may want a "no spaces" count. The toolkit shows both numbers side by side.
  • What is the character limit for an Instagram caption?
    2,200 characters — but only the first ~125 are visible before the "more" link, so front-load the key content. Hashtags count toward the limit; max 30 hashtags per post.
  • How do I count characters in a text message?
    Standard SMS uses GSM-7 encoding (160 characters per segment). Messages with emoji, accented characters, or non-Latin scripts switch to UCS-2 encoding, which drops the segment limit to 70. Long messages are split and reassembled by the receiver.
  • What is the difference between characters and bytes?
    A character is a single visible unit. A byte is a unit of storage. ASCII characters are 1 byte each; emoji and non-Latin characters often use 2–4 bytes in UTF-8. Most platform limits are character-based, not byte-based.