Chat turn token breakdown
ClientLabel each turn with User: or Assistant: on its own line, paste the export, and review per-turn token share. Works alongside messages JSON for structured payloads.
Chat export
?
Lines starting with User:, Assistant:, System:, Human:, or AI: start a new turn. Everything until the next header belongs to that turn.
Total: ~73 tokens · 288 characters · 4 turns
| Turn | Role | ~Tokens | Share |
|---|---|---|---|
| 1 | user | 13 | 17.8% |
| 2 | assistant | 25 | 34.2% |
| 3 | user | 10 | 13.7% |
| 4 | assistant | 25 | 34.2% |
Nearby workflows on Toolcore
- Messages JSON token breakdown — Per-message rough token counts from OpenAI-style chat JSON—sum roles locally for API payload planning, not tokenizer-exact. when you want a second pass with AI-assisted explanation on Toolcore.
- LLM token estimate — Rough character-based token planning for prompts and context—CJK-aware heuristic, browser-only—not tokenizer-exact. when you want a second pass with AI-assisted explanation on Toolcore.
- Long text chunker for chat paste — Split long pasted prose into sequential under-the-limit blocks—paragraph, line, or fixed character breaks—browser-only; not tokenizer-exact. when you want a second pass with AI-assisted explanation on Toolcore.
- Context window fit check — See if pasted text fits a 4K–1M token window with a rough CJK-aware heuristic—plan headroom before chat paste, browser-only. when you want a second pass with AI-assisted explanation on Toolcore.
Common use cases
- See which user questions balloon context before trimming history manually.
- Analyze plain-text exports from support tickets or research chats.
- Decide where to split a thread before using the long text chunker.
Common mistakes to avoid
Exports without role headers
Turns are detected by lines like User: or Assistant:. Unlabeled prose is treated as one block.
Colons inside message bodies on the first line
Only lines that start with a recognized role label begin a new turn.
FAQ
Which role labels work?
User, Assistant, System, Human, AI, Tool, and Function (case-insensitive) followed by a colon.
Is this tokenizer-accurate?
No—it uses the same rough chars-per-token heuristic as our other LLM planning tools.
More tools
Related utilities you can open in another tab—mostly client-side.
Messages JSON token breakdown
ClientPer-message rough token counts from OpenAI-style chat JSON—sum roles locally for API payload planning, not tokenizer-exact.
LLM token estimate
ClientRough character-based token planning for prompts and context—CJK-aware heuristic, browser-only—not tokenizer-exact.
Long text chunker for chat paste
ClientSplit long pasted prose into sequential under-the-limit blocks—paragraph, line, or fixed character breaks—browser-only; not tokenizer-exact.
Context window fit check
ClientSee if pasted text fits a 4K–1M token window with a rough CJK-aware heuristic—plan headroom before chat paste, browser-only.