Quick answer
1,000 tokens is about 750 English words
That familiar rule is a planning estimate, not a tokenizer result. Use the calculator below to switch direction, compare prose with chat or code, and expose the assumptions behind characters, pages, and reading time.
Convert tokens and words
Choose what you know, select the closest content profile, and adjust the ratio when you have tokenizer evidence. Nothing is uploaded.
Changing direction does not claim an exact inverse tokenizer result. It applies the same readable-content estimate from the other side.
Estimated words
750
Using 0.75 words per token for english prose.
Characters
≈4,000
Includes spaces, using 4 characters per token.
Pages
≈1.5
500 words per single-spaced text page; layouts vary.
Reading time
≈3.2 min
At 238 English words per minute.
Sensitivity range
638–862
words when the selected ratio shifts by 15% in either direction.
Transparent method
How the estimate works
The calculator deliberately uses simple ratios you can inspect. In tokens-to-words mode it multiplies the token count by the selected words-per-token ratio. In words-to-tokens mode it divides by that ratio. Character count uses a separate characters-per-token assumption, while pages and reading time are derived from the estimated words.
Pages
Estimated words ÷ 500. This approximates a single-spaced text-heavy page, not a designed PDF or manuscript.
Reading time
Estimated words ÷ 238 words per minute. Technical material and code are usually read more slowly.
Sensitivity
The result panel also shows a ±15% ratio range so the uncertainty is visible instead of hidden.
Choose the closest material
Why prose, chat, and code need different assumptions
| Profile | Starting ratio | Use it for |
|---|---|---|
| English prose | ≈0.75 words/token | Articles, product docs, essays, and ordinary English paragraphs |
| Conversational chat | ≈0.70 words/token | Short messages with names, punctuation, markdown, and fragmented turns |
| Code / JSON | ≈0.45 word-equivalents/token | Source, config, tool payloads, symbols, identifiers, and structured data |
These presets are deliberately rounded planning assumptions. “Words” for code are only a readability analogy; compilers and tokenizers do not count source code as prose.
Worked examples
What common token counts feel like
4K chat tokens
≈2,800 words
Roughly twelve minutes of English reading at the chat preset, before allowing for markup or tool payloads.
8K prose tokens
≈6,000 words
About twelve 500-word text pages. A PDF with diagrams or generous spacing will occupy more physical pages.
32K code tokens
≈14,400 word-equivalents
A planning shorthand only. Repositories with generated files, long strings, or minified data can tokenize very differently.
When an estimate is safe—and when it is not
Use an estimate for planning
Comparing draft sizes, sketching a content budget, estimating reading time, or deciding whether a document is likely to fit comfortably inside a large context window.
Use an exact tokenizer for limits
Enforcing a context ceiling, forecasting a provider invoice, validating truncation, or comparing models with different tokenizer families and special-message formatting.
Source and assumptions
The preset ratios are transparent editorial assumptions, not values guaranteed by a provider. For an exact count, use the tokenizer associated with the model and compare a representative sample before setting a custom ratio.
- OpenAI tokenizer guidance
A tokenizer is the authoritative way to count exact tokens for a specific model; word conversions remain estimates.
Frequently asked questions
How many words are 1,000 tokens?
A useful English-prose estimate is about 750 words, but it is not an exact conversion. Code, JSON, unusual punctuation, non-English text, and a model's tokenizer can move the result substantially.
How many tokens are in 1,000 words?
At 0.75 words per token, 1,000 English words are roughly 1,333 tokens. Use an exact tokenizer for the specific model before enforcing a hard context or API limit.
Why does code use a different ratio?
Programming text contains punctuation, whitespace, long identifiers, file paths, and structured syntax. Those pieces do not map cleanly to natural-language words, so the calculator labels the output as word-equivalents and uses a more conservative preset.
Does this page send my text to a server?
No text is entered at all: the calculator accepts only numeric counts and ratios. Its arithmetic runs in your browser and the page does not claim to tokenize source material.
Which ratio should I use for another language?
Use the custom profile. Tokenize a representative sample with the exact model tokenizer, divide its word count by token count, and reuse that measured ratio. Languages and scripts can differ too much for one global preset.