Why Free Online Tools Give Different Word Counts for the Same Text
Every writer has a story about the invoice that came up short. You paste a finished article into the client’s free online tools and the total is three per cent lower than your own count. A 1,200-word piece becomes 1,164 words, and at typical web-copy rates of €0.08–€0.40 per word, that gap is real money. The same thing happens in reverse when a form rejects your bio because its counter sees five characters you cannot find.
It is not a bug, and it is rarely dishonesty. Word and character counting is a set of arbitrary conventions, and every application—Word, Google Docs, a browser-based counter, a CMS field—applies a slightly different rulebook. This guide explains why the numbers diverge, where the limits that matter actually live, and how to choose the count you should be paid by, or the one that will let your post through.
The same paragraph, three different numbers#
To see the problem in miniature, paste the same short paragraph into three free online tools or word processors. The text below is only one sentence long, yet the word count changes depending on whether hyphens, contractions, and punctuation are treated as word boundaries. Microsoft Word and most word processors keep hyphenated compounds and contractions intact; a regex-based browser counter may split them. The character count is more stable, but even it shifts if trailing spaces or line breaks are included.
| Tool | Word count | Characters with spaces |
|---|---|---|
| Microsoft Word | 14 | 100 |
| Browser counter A (splits on hyphens) | 19 | 100 |
| Browser counter B (splits on hyphens and apostrophes) | 20 | 100 |
The exact numbers depend on the tool version and settings; treat them as illustrations, not specifications.
Why the numbers diverge#
There is no ISO standard for what counts as a word. A word processor usually treats a word as a string of letters, digits, or connectors such as apostrophes and hyphens, bounded by spaces or punctuation. A web form may simply split on whitespace. A programming script may use a regular expression that splits on anything that is not a letter or number. Because the source text is identical, the disagreement looks like a mistake; in fact, each tool is answering a different question.
- Hyphens: some tools treat 'start-up' as one word; others count 'start' and 'up' separately.
- Contractions and possessives: 'it's' may be one word or two, and 'client's' may keep or lose the apostrophe-s.
- Numbers and currency: '€50' can count as one token or split into '€' and '50'.
- Punctuation attached to words: trailing commas, full stops, and quotation marks may be stripped or counted as separators.
- Line breaks and multiple spaces: a double space can create an empty word in some counters.
- Non-Latin scripts: CJK text has no spaces, so whitespace-based counting fails entirely.
The character limits people actually hit#
Character limits are usually hard stops: a form simply refuses the extra character, or a search engine truncates your snippet. The limit that matters is the one enforced by the system that will publish the text, not the one shown by the tool you drafted in. If you are writing for a CMS, test in the CMS; if you are writing a meta description, check the pixel width as well as the character count, because Google truncates by pixels, not characters.
| Field | Typical limit | What counts |
|---|---|---|
| Google title tag | ~60 characters | Characters and spaces; pixel width is the real limit |
| Google meta description | ~155–160 characters | Characters and spaces; mobile often truncates earlier |
| X post | 280 characters | Spaces, punctuation, and URLs counted as shortened t.co links |
| Bluesky post | 300 characters | All characters including spaces |
| SMS (GSM-7 alphabet) | 160 characters per message | Letters, digits, and a few symbols; longer texts split into parts |
| SMS (UCS-2 encoding) | 70 characters per message | Non-Latin scripts and some emoji; longer texts split into parts |
| Database VARCHAR(255) | 255 characters | Characters in the declared encoding; emojis may use multiple bytes |
A limit is a contract; draft in whatever tool you like, but validate in the final system.
How CJK and emoji break naive counting#
Naive counters usually return the length of the string in bytes, Unicode code points, or grapheme clusters. Those three numbers can be very different. A single Chinese character is one user-perceived character and one code point, but it may be three bytes in UTF-8. An emoji with a skin-tone modifier is one visible glyph, two code points, and four bytes. A family emoji can be seven code points and one glyph. If your counter is counting bytes, your Chinese novel will look enormous.
| Example | Visible characters | Code points | UTF-8 bytes |
|---|---|---|---|
| Latin 'A' | 1 | 1 | 1 |
| Chinese '中' | 1 | 1 | 3 |
| Emoji thumbs up | 1 | 1 | 4 |
| Emoji thumbs up with skin tone | 1 | 2 | 8 |
| Flag emoji | 1 | 2 | 8 |
| Family emoji | 1 | 7 | 25 |
For user-facing limits, count grapheme clusters; for storage, count bytes.
Which number should you argue from?#
If you are invoicing by the word, the only number that matters is the one in your contract or the client's brief. If the brief says 'Microsoft Word count', use Word. If it says 'per source word', count the source text in the agreed tool. For ad-hoc work, agree on a sample before you start. Freelance rates for web copy typically run €0.08–€0.40 per word, with the lower end for bulk blog posts and the upper end for technical or rushed work; the counting method should be specified alongside the rate, because a 5 per cent difference is not noise at those prices.
- One-off web check: a browser-based counter is fine.
- Bulk invoices or client reports: a spreadsheet with a consistent formula, or a native app like Word's built-in counter, is better.
- Legal, medical, or financial documents: hire a professional or use the tool mandated by the regulator; never rely on a free online tool for compliance.
- Programming and database limits: use the language's string-length function in the target encoding.
- Social posts: draft anywhere, but paste into the platform for the final count.
This is guidance, not legal or financial advice; put the counting method in your contract.
Privacy: the tools that quietly upload your text#
Many free online tools are not calculators on your device; they are front ends for a cloud service. Paste your text and it travels to a server for analysis, storage, or AI training. That is fine for a public blog post, but it is a poor choice for an unpublished manuscript, a client brief under NDA, or a draft containing personal data. Browser-only tools—such as the five counters siteb.biz publishes—run entirely in your browser and never upload the text, though you should still check the network tab if you are cautious.
- The site asks you to sign in to count words.
- The counter offers grammar checking, summarising, or translation—features that require understanding the text.
- Pasting triggers network requests to analytics or AI endpoints.
- The privacy policy says content may be used to improve services.
- There is no privacy policy at all.
If in doubt, use a native app or a spreadsheet.
How to choose a counter you can trust#
A good counter tells you what it is counting. Look for a clear label: 'words separated by whitespace', 'Unicode code points', or 'grapheme clusters'. Test it with a known string containing a hyphen, a contraction, an emoji, and a Chinese character. If the result matches your expectations, the tool is probably suitable for that job. Remember that no single tool is right for every job; the right tool is the one that matches the limit you are trying to satisfy.
- Identify the limit: word count for an invoice, characters for a form, bytes for a database.
- Find the system that enforces the limit and use its count as the reference.
- Choose a tool that explains its counting rule, or verify it with a test string.
- For sensitive text, prefer a browser-only or native app counter.
- Keep a screenshot or saved copy of the count if money or compliance is at stake.
Frequently asked questions
Why does Microsoft Word give a different word count from a free online tool?
Microsoft Word uses an internal word-breaking algorithm that keeps hyphenated compounds, contractions, and numbers together when they are not separated by spaces. A browser-based counter often uses a simple regular expression that treats hyphens and apostrophes as boundaries, so 'start-up' becomes two words and 'it's' becomes two. Some tools also split punctuation differently. Neither result is wrong; they are simply following different definitions of a word. The practical fix is to agree on the tool and the counting rule before any money changes hands, and to record that agreement in your contract or brief.
Are browser-based word counters safe for confidential documents?
It depends on whether the tool runs entirely in your browser or uploads text to a server. Browser-only counters process the text locally and never transmit it, which makes them a reasonable choice for drafts you would not want to share publicly. However, many free online tools that also offer grammar checking, summarising, or AI features send your text to the cloud. For NDAs, patient records, financial drafts, or any material covered by data-protection rules, use a native app, an offline spreadsheet, or the tool mandated by your organisation rather than an unknown website.
How should I count text that includes Chinese, Japanese, Korean, or emoji?
Use a counter that returns grapheme clusters, not bytes or raw code points. A single Chinese character is one grapheme, but three bytes in UTF-8. An emoji with a skin-tone modifier is one visible character, yet two code points. A flag or family emoji can be one visible glyph made of several code points joined by zero-width joiners. For user-facing limits, grapheme clusters are the fair measure because they reflect what a reader sees. For database storage and programming, byte length or code-point length is what matters, because that is what the system must allocate.
free online toolsword count toolcharacter count onlineSEO title character limitCJK character countingbrowser-based text counter