LLM Token Counter — Browser-Local OpenAI & Claude
Count tokens for GPT-4o, Claude, and Gemini in your browser. Exact tiktoken for OpenAI models and clear estimates for others, with no provider API calls. See also: word counter and JSON formatter.
How counting works
Exact (OpenAI-family models): we lazy-load js-tiktoken with the model encoding (o200k_base or cl100k_base) and count in your browser.
Estimate (Claude, Gemini): a characters-per-token heuristic (±5–15% typical variance). Results are labeled Estimate so you are not misled.
In API messages mode, valid [{"role","content"}] arrays add ChatML per-message overhead (+3 tokens per message, +1 per name, +3 reply priming) following the OpenAI cookbook.
API messages mode
Paste a JSON array of objects with role (system, user, assistant, or tool) and string content. Optional name is supported. Invalid shapes fall back to raw text in Auto mode, so use the format toggle to force messages mode and surface parse errors. Format JSON first with our JSON formatter.
Privacy
All tokenization runs locally. Unlike many online counters that upload your prompt to a provider tokenizer page, FastMinify keeps text on your device. No provider token-count APIs are called.
Limitations
Estimate tier is not billing-grade. Pricing on this cluster is maintained manually; see the verified date on the pricing calculator. Image, audio, and tool-call token rules are out of scope for v1.
When to use OpenAI's official tokenizer
For OpenAI-only byte-exact disputes, compare against platform.openai.com/tokenizer. Our Exact tier targets the same encodings via js-tiktoken.
Related text & JSON tools
Pair token counts with our word counter or validate message JSON with the JSON formatter.
Options that change the count
- Model
- Switches tokenizer (exact OpenAI encodings vs estimate heuristics) and the context window shown in stats.
- Input format
- Auto-detect treats a valid [{role, content}] array as Chat API messages with per-message overhead. Raw text counts the editor string literally.
- Encoding override
- For OpenAI models only. Force o200k_base or cl100k_base when testing legacy prompts against older GPT encodings.
- Compare all models
- Lists every registry model with a live token count and Exact/Estimate badge for the same input. Select a row to switch back to single-model view.
FAQ
Token counting, privacy, and accuracy
Is my prompt sent to OpenAI or Anthropic?
No. All counting runs in your browser. FastMinify does not call provider token APIs or log your text.
Why is Claude labeled Estimate?
Anthropic does not publish a browser-side tokenizer. We use a conservative characters-per-token heuristic and label results Estimate so you are not misled.
What is message overhead?
Chat API messages add fixed template tokens per message (role, content, separators) plus reply priming. Exact OpenAI counts follow the public tiktoken cookbook; estimates use a flat +3 per message approximation.
What is the maximum input size?
About 512 KiB of UTF-8 text. Larger inputs show an error card and are not tokenized.
How often is pricing updated?
Model prices are reviewed manually at least monthly. The verified date appears on the pricing calculator tool only.
Why is there no token breakdown for Claude?
Token pills use js-tiktoken BPE decoding, which is exact for OpenAI encodings only. Estimate-tier models show an inline notice instead of fabricated pills.
Does compare-all include pricing?
No. Compare view shows token counts and accuracy tier only. Use the LLM pricing calculator for cost estimates.
AI & LLM
Count tokens, estimate API costs, check context-window fit, convert JSON to TOON and analyze prompts, all in your browser.
Explore other tool categories
- Minify
Minify JavaScript, CSS, HTML, JSON, XML, SVG and other formats to cut the bytes you ship, before gzip or a CDN.
- Unminify
Make minified code readable again to debug or review it. Unminify JavaScript, CSS, TypeScript, SCSS, LESS, SQL, YAML and other formats.
- Conversion
Convert data between JSON, YAML, XML, CSV, TOML and other formats locally, with no upload to a server.
- Encoding
Encode or decode Base64, URLs, HTML entities and JWTs, and generate hashes and HMACs in your browser.
- Serialization
Serialize and deserialize PHP data structures beside JSON workflows.
- JSON Tools
Validate, format, repair, compare and explore JSON in your browser, alongside the JSON minifier and converters.
- SVG Tools
Preview, optimize with SVGO, export as a data URI, resize, beautify, convert to JSX and validate SVG in your browser.
- Beautify
Make code readable with consistent indentation. Beautify JavaScript, CSS, TypeScript, SCSS, LESS, Markdown, GraphQL, SQL, YAML and more in your browser.
- CSS preprocessors
Compile SCSS or LESS to standard CSS in your browser. Pair it with beautify or minify to handle a whole stylesheet.
- Color & CSS Tools
Check WCAG contrast, convert CSS colors and units, and generate shades, border-radius and box-shadow code in your browser.
- DevOps & Infra
Terraform HCL format/validate/minify, Dockerfile format & lint, Docker Compose and .env validation.
- CI/CD
Format GitHub Actions and GitLab CI YAML and check the structure of workflows and jobs in your browser.
- Logs & observability
Format, filter and validate JSON and NDJSON logs, and turn Nginx or Apache access logs into CSV or TSV.
- Kubernetes
Multi-doc manifests, structural validate, Ingress/Deployment starters, and Helm values formatting.
- Networking / IP
Subnet calculator, IP converter, range to CIDR, CIDR summarize and IP-in-subnet checks for IPv4 and IPv6, in your browser.
- Security & tokens
Inspect JWKS, verify JWTs, decode X.509 certificates, convert PEM and JWK, scan text for secrets and hash with bcrypt in your browser.
- API & schemas
Format, validate, lint and convert OpenAPI, JSON Schema and GraphQL SDL in your browser.
- HTTP Tools
Paste cURL commands, HTTP messages, URLs, HAR files and Cookie or Set-Cookie headers to format and inspect them. Nothing is sent.
- SEO / Web Tools
Generate meta tags, Open Graph, Twitter Card, robots.txt, sitemap.xml and JSON-LD in your browser. Previews come from your input, and your site is never fetched.
- Developer utilities
Timestamps, UUID, ULID, Nanoid, cron, passwords, regex, slugs, number bases, letter case, text diff, chmod and Lorem Ipsum, all in your browser.
- Text & Markdown
Count words, build Markdown tables of contents, turn CSV into Markdown tables and sort or deduplicate lines in your browser.
- Test Data
Dummy names, emails, phone numbers, addresses, dates, IBANs, card numbers and JSON, CSV or SQL rows for fixtures and database seeds. Everything is generated in your browser.
- Barcode labels
Draw Code 128, EAN-13 and UPC-A labels and static QR codes in your browser, then download PNG or SVG. This is not a GS1 lookup.