What This Tool Does
Character Counter is a free browser tool that counts text, words, lines, and platform limits as you type. It is built for writers, marketers, support teams, and social media editors who need one reliable screen for X/Twitter 280, SMS 160 or 70, Bluesky 300, Threads 500, LinkedIn 3,000, Instagram 2,200, YouTube, meta titles, and meta descriptions.
Inputs Explained
- Text: Paste a caption, post, title, SMS, or draft message. Counts update immediately.
- Platform bars: Each bar compares the current character count with a fixed platform limit such as 280 for X or 160 for a GSM-7 SMS segment.
- SMS encoding: The tool checks whether the text fits GSM-7. If it contains emoji or other non-GSM characters, the SMS limit switches to 70.
- Copy Stats: Copies the visible count summary so you can paste it into a brief, checklist, or content QA note.
- Clear: Removes the current text and resets every count, warning color, and segment estimate.
How It Works
The counter converts the text into an array of Unicode code points, counts words with a whitespace token match, and then compares the character total against every configured platform limit. A progress bar stays green below 80%, turns yellow from 80% to 99%, and turns red at or above 100%. SMS is special because a plain GSM-7 message allows 160 characters, while Unicode UCS-2 messages usually allow 70 characters per segment.
Formula / Logic Used
Character Counter
Count characters and words while tracking X, SMS, Bluesky, Threads, SEO, and social caption limits.
Live Counts
Platform Limit Progress
Step-by-Step Example
Sample input: A launch announcement with 245 characters and 39 words.
Sample output: X/Twitter shows 245 / 280, SMS shows 2 GSM-7 segments if the text is longer than 160, and the meta description bar warns because 245 is above the 160-character SEO target.
Explanation: The same text can be safe for LinkedIn but too long for an SMS or meta description. The progress bars make those differences visible without switching tools.
How to read the result: Use the output from Character Counter as a practical decision aid, not just a raw number or decorative conversion. First, confirm that the sample input represents the same kind of text you plan to publish, submit, paste, or share. Then compare the main output with the formula and notes above it. If a result looks surprising, change one input at a time and watch how the output changes. This makes the tool useful for planning, editing, and quality checks because you can see which setting actually moved the result.
Recommended workflow: Draft normally, paste the finished text into the tool, and make a first pass using the default settings. After that, adjust the options to match the real destination: a social platform limit, a document format, an audience reading speed, a Unicode style, a rewrite tone, or a summary length. Copy the output only after you have checked spelling, names, numbers, and context. For client work, classroom work, and publishing workflows, keep the original text nearby so you can compare the generated output before using it.
Quality checks: Review any transformed text in the exact app or editor where it will be used. Unicode effects, line breaks, sentence splitting, and platform limits can behave differently across devices and fonts. If the output will be read by customers, students, search visitors, or screen-reader users, prefer clarity over decoration. If the output is a calculation, treat it as an estimate and leave a small buffer. If the output is a rewrite or summary, verify that the meaning, facts, and tone still match your intent.
Validation tip: For repeatable work, save the input settings in your brief or checklist along with the copied result. A small note such as "12 pt, double spaced, normal margins" or "average reading speed, conversational speaking rate" prevents confusion later. For text generators, paste the output into a plain-text field first to confirm that it remains selectable, searchable, and visually acceptable. For summarizing and paraphrasing, compare at least one sentence against the source before sharing it with someone else. This extra review takes less than a minute and prevents most formatting, accuracy, context, and handoff mistakes in real publishing workflows and team reviews.
Privacy note: The working area is intentionally local. The JavaScript reads the fields already on this page, calculates or transforms the text in your browser, and writes the result back into the visible result box. That local workflow is why the page can be useful for drafts that are not ready for external services. The ad, analytics, and notification scripts are part of the shared site template, but the tool-specific text processing does not call a text API, upload your draft, or store the result.
Use Cases
- Social media publishing: Check X/Twitter 280, Bluesky 300, Threads 500, Mastodon 500, Pinterest 500, and LinkedIn 3,000 before scheduling posts.
- SMS campaign QA: See whether a message uses a 160-character GSM-7 segment or a 70-character Unicode segment because of emoji or special symbols.
- SEO snippet writing: Keep meta titles near 60 characters and meta descriptions near 160 characters for cleaner search snippets.
- Video metadata: Draft YouTube titles under 100 characters and descriptions under 5,000 characters in one editor.
- Content handoff: Copy the count summary into an approval comment so editors know exactly which limits were checked.
Assumptions and Limitations
- Array.from improves emoji counting compared with text.length, but full grapheme clusters such as family emoji can still be counted as multiple visible units.
- Platform limits can change. The tool uses the fixed limits listed on this page: X/Twitter 280, SMS 160 or 70, Bluesky 300, Threads 500, and the other stated values.
- Some platforms apply extra URL shortening, media attachment, or mention rules that are not reproduced here.
- SMS segment math is simplified to one segment size. Carriers may use concatenation headers that reduce multi-part segment capacity.
Frequently Asked Questions
How do I count characters for Twitter or X?
Paste your post into the text box and read the X/Twitter bar. It uses a 280-character limit and turns yellow at 80% and red when the text reaches or exceeds 280 characters.
Why does SMS switch from 160 to 70 characters?
SMS uses 160 characters when the message fits GSM-7. If the text contains emoji, many non-Latin letters, or unsupported symbols, it switches to UCS-2 encoding, where a single segment is commonly 70 characters.
Does this character counter include spaces?
Yes. The main character count includes spaces, line breaks, punctuation, emoji, and symbols. A separate count also shows characters without spaces for briefs that ask for that metric.
Can I check meta title and meta description length?
Yes. The platform list includes a 60-character meta title target and a 160-character meta description target, which are common SEO drafting limits.
Is the count accurate for emoji?
The tool uses Array.from(text).length instead of text.length, so common emoji outside the basic multilingual plane count more accurately. Complex joined emoji may still count differently from some platforms.
What happens when I exceed a platform limit?
The progress bar turns red and the count shows the over-limit value. You can edit the text until the bar returns below 100%.
Is my social post uploaded anywhere?
No. All counting and limit checks run locally in your browser. Your draft is never sent to a server by this tool.
Can I use this for Facebook and Instagram captions?
Yes. The tool includes Facebook 63,206 characters and Instagram caption 2,200 characters, plus LinkedIn, Pinterest, Mastodon, YouTube title, and YouTube description limits.
Sources and References
- X Help Center - How to post - Official posting guidance for X, formerly Twitter.
- Wikipedia - SMS - Overview of SMS message encoding, segments, and character limits.
- Unicode Consortium - Code Charts - Official charts for Unicode letters, symbols, combining marks, and styled alphabets.
- MDN - JavaScript String length - Reference for JavaScript string behavior and character counting caveats.