Character Counter
A block of text that looks short on screen can still blow past a platform's hard limit once every space, punctuation mark, and line break is added up. This character counter counts every character in a single text box: total characters, characters without spaces, word count, and line count are calculated as you type or paste. Enter or paste text into the field, and the tool immediately reports how long it is by every measure editors, marketers, and support teams typically need. The only input is the text field, so there is no unit selector or setup step to get wrong. Use it to keep a social caption under a platform limit, keep a meta description close to the length search engines usually display in full, check an SMS draft before it splits into extra segments, or confirm a bio or form field will not get silently truncated on submit.
Quick answer
Total characters counts every letter, number, space, punctuation mark, and line break in the text box, matching the raw string length a form field or database column would store.
Total Characters
0
Characters (No Spaces)
0
Words
0
Lines
0
What this tells you
- •Total characters counts every letter, number, space, punctuation mark, and line break in the text box, matching the raw string length a form field or database column would store.
- •Characters without spaces removes every space, tab, and line break character, which is the number many character-based limits and pricing rules actually enforce.
- •Word count splits text on runs of whitespace, so multiple spaces or line breaks between words never inflate the total.
- •Line count is based on line-break characters, so one unbroken paragraph reports 1 line even if it visually wraps across several lines on screen.
- •Common limits to check against: X (Twitter) posts (280), Instagram bios (150), meta descriptions (about 155-160), and standard SMS segments (160).
- •Empty input and whitespace-only input both return a word count of 0, even though whitespace-only text still has a character count above 0.
How to Use
- 1Click into the text field and paste or type your content. There is no length cap on the input itself.
- 2Read the total character count first if you are working against a hard platform limit like a post or an SMS segment.
- 3Check the no-spaces count when a tool, contract, or pricing model bills by characters excluding spaces.
- 4Use the word count and line count to sanity-check formatting before you submit a form, publish a caption, or paste text into a template.
- 5Edit the text and watch the counts update live, then copy the final version once every count fits your target.
How It Works
Formula
Characters = string length. No-spaces characters = string length after removing whitespace. Words = whitespace-separated chunks. Lines = line-break-separated segments.Total characters is the length of exactly what is in the box, including every space, tab, newline, and punctuation mark. Characters without spaces strips every whitespace character (regular spaces, tabs, and line breaks) in a single pass, then measures what remains. Word count trims leading and trailing whitespace, then splits the remaining text on any run of one or more whitespace characters, so a paragraph with double spaces or several line breaks between words is still counted correctly, and a fully empty or whitespace-only entry reports 0 words. Line count splits on line-break characters, and text with no line break at all still counts as 1 line, while a fully empty input reports 0 lines for every counter.
Calculation note: values are processed in the order shown above, using the current input units.
Worked Examples
Social post length check
Every character, including the three spaces and the trailing period, adds to the raw length of 26. Removing the three spaces between the four words brings the no-spaces count down to 23. The single line count confirms no stray line break got pasted in with the caption.
Ad copy length check
The exclamation point, dollar sign, and period all count as characters just like letters do, which is part of how the total reaches 53. Nine spaces separate the ten words, so removing them drops the count to 44. This kind of check is useful before an ad platform's headline or description field rejects the copy for being too long.
Meta description length check
At 83 characters, this draft sits comfortably under the roughly 155-160 character range where search engines usually stop truncating a description. The 14-word count also gives a quick readability signal separate from the raw character total.
Multi-line note with line breaks
The two line-break characters count toward the 29-character total but get removed along with the regular spaces when calculating the 24-character no-spaces total. Word count still reports 6 because whitespace, including a line break, is what separates one word from the next. Line count reports 3 because the text contains two line breaks, which split it into three segments.
Config or log snippet check
Developers often paste short config blocks or log lines here to check total length against a field limit or a terminal width. The three line breaks push the line count to 3, and the five whitespace characters removed (three regular spaces plus two line breaks) account for the gap between the 47-character and 42-character totals.
Whitespace-only edge case
Three spaces with no other content still produce a character count of 3, since spaces are characters like any other. Word count reports 0 because trimming the whitespace leaves nothing to split into words, and line count reports 1 because the text is not empty, it just contains no line-break character.
Appointment reminder that spills into a second SMS segment
The front desk at Riverside Dental drafts this reminder for the clinic's texting service. Every character is in the GSM 7-bit basic table, so the counter's 167 matches the SMS count, and 167 is over the 160 that fits in one message. Under 3GPP TS 23.040 the text splits into 2 concatenated segments of up to 153 characters, and most carriers and messaging APIs bill each segment. Deleting the word Please and its trailing space (7 characters) and capitalizing Arrive brings it to exactly 160 and one segment. Adding a single emoji at the end instead moves the whole message to UCS-2, where 67 characters fit per segment, so the same reminder would need 3 segments.
Character limits set by standards and platforms
Limits worth checking a draft against, with the standard or help center that sets each one. The SMS rows come from the 3GPP specifications and do not change. Platform rows change whenever the platform decides.
| Field | Limit | Source and notes |
|---|---|---|
| SMS, single message, GSM 7-bit alphabet | 160 characters | 3GPP TS 23.040 and TS 23.038. Extension characters such as the euro sign and square brackets use 2 of the 160. |
| SMS, single message, UCS-2 | 70 characters | 3GPP TS 23.040. One character outside the GSM alphabet, such as a curly apostrophe or an emoji, moves the whole message to UCS-2. |
| SMS, concatenated, GSM 7-bit | 153 per segment | 3GPP TS 23.040. The 6-byte header that links the segments takes the space of 7 characters in each one. |
| SMS, concatenated, UCS-2 | 67 per segment | 3GPP TS 23.040. The same 6-byte header takes the space of 3 UCS-2 characters. |
| X post, standard account | 280 characters | X help center. Links count as 23, and most emoji and CJK characters count as 2. |
| Instagram caption | 2,200 characters | Instagram help center |
| Instagram bio | 150 characters | Instagram help center |
| LinkedIn post | 3,000 characters | LinkedIn help center |
| YouTube video title | 100 characters | YouTube help center |
| YouTube video description | 5,000 characters | YouTube help center |
| Google Ads responsive search ad headline | 30 characters | Google Ads help center |
| Google Ads responsive search ad description | 90 characters | Google Ads help center |
| HTML title tag | No hard limit | HTML sets no maximum. Search results cut titles by pixel width, and about 50 to 60 characters is the usual rule of thumb for staying fully visible. |
SMS rows: 3GPP TS 23.040 (technical realization of SMS) and TS 23.038 (alphabets and language-specific information). Platform rows are the limits each platform publishes in its help center. They were not re-verified on September 30, 2026, and platforms change limits without notice, so confirm the current number before a deadline.
Characters, words, and lines: what each count actually measures
Character count and word count answer different questions, and mixing them up causes avoidable mistakes. Character count matters when a system charges, truncates, or rejects text based on raw length, such as an SMS segment, a database column with a fixed width, or a social caption field. Word count matters more for readability and pacing, such as estimating how a paragraph reads or matching an editorial word limit.
The no-spaces count exists because some limits are defined by visible characters rather than total keystrokes. A system that bills per character sent, or a format with a strict letter budget, often means characters excluding spaces specifically. Checking both numbers before relying on either one avoids submitting text that is technically too long by one definition while looking fine by the other.
Line count is easy to misread if a visual wrap gets confused with an actual line break. A single long sentence that wraps across three lines on a phone screen is still 1 line by this counter, because no line-break character was typed or pasted into the text. Line count only increases when the text itself contains a newline, which matters for formatting things like addresses, code snippets, or list-style captions where each line needs to land in the right place.
One character on this page means one UTF-16 code unit, because the counter uses the JavaScript string length defined in ECMA-262. Letters, digits, punctuation, and accented letters stored as a single code point each count as 1. Most emoji count as 2, a flag emoji counts as 4, and a family emoji built from joiner characters can count as 11 even though each shows as one symbol. Unicode Standard Annex #29 defines those visible units as grapheme clusters, and any platform that counts by grapheme, by code point, or by its own weights will disagree with this page on emoji-heavy text. X, for example, counts most emoji and CJK characters as 2 and every link as 23 under its published twitter-text rules, so a post can read 270 here and still exceed 280 there.
SMS counting depends on the character set, not only the length. Under 3GPP TS 23.038 the GSM 7-bit basic table covers ASCII letters, digits, common punctuation, and a small set of accented letters, and extension characters such as the euro sign, square and curly brackets, backslash, caret, tilde, and vertical bar cost 2 of the 160. One character outside that table, such as a curly quote pasted from a word processor, moves the entire message to UCS-2, where TS 23.040 allows 70 characters in a single message and 67 per concatenated segment instead of 160 and 153. This page counts each of those characters as 1, so use its total as your SMS count only when every character sits in the basic table, and expect the segment count to change when one does not.
Common mistakes
- Assuming the character count and the no-spaces character count are the same number. A typical sentence has a meaningful share of its length made up of spaces alone.
- Copying text from a word processor or PDF that inserts hidden line breaks, which inflates the line count even though the text reads as a single paragraph on screen.
- Checking word count against a strict SMS or post limit instead of character count. Platforms with hard length limits almost always enforce characters, not words.
- Forgetting that punctuation, numbers, and symbols all count as characters. A caption padded with extra exclamation points or symbols can hit a limit faster than expected.
- Treating a platform's stated limit as fixed forever. Limits for bios, meta descriptions, and post previews change periodically, so a number that was accurate last year may be outdated.
Embed this calculator on your site
Paste this code where you want the calculator to appear. It is responsive, mobile-friendly, resizes automatically, and is free to use as long as the credit line stays in place.
<script src="https://calctide.com/embed.js" data-tool="character-counter" async></script>
<p style="font-size:12px;margin:4px 0 0">Character Counter by <a href="https://calctide.com/writing-utility/character-counter/">CalcTide</a></p>Preview the embed at /embed/character-counter/.