TOON vs TRON vs JTON: Token-Efficient Formats Compared
TOON has rivals: TRON's class-based rows and JTON's Zen Grid. Compare syntax, published token savings, accuracy evidence and maturity before you commit.
TOON, TRON and JTON all cut the tokens JSON spends repeating keys, but they take different approaches. TOON uses indented tables with one header per array. TRON defines classes and calls them like constructors. JTON stays a strict JSON superset with a "Zen Grid" table. TOON is the most mature of the three. TRON has the strongest agent-benchmark result. JTON has the best generation-validity data.
What are TOON, TRON and JTON?
All three formats exist for the same reason: JSON repeats every key name in every object of an array, and LLM providers charge for each of those tokens. They differ in how they remove that repetition, and in how much evidence stands behind each one.
- TOON (Token-Oriented Object Notation) is a YAML-like indented format with tabular arrays. The specification is at version 4.1, and the reference library
@toon-format/toonis at 4.1.1. - TRON (Token Reduced Object Notation), by Tim Huang under the MIT license, removes repeated object shapes by declaring a class once and creating instances inline. The JavaScript package is
@tron-format/tron. - JTON (JSON Tabular Object Notation) comes from an April 7, 2026 arXiv paper by Gowthamkumar Nandakishore. It is "a strict JSON superset" whose main idea, Zen Grid, "factors column headers into a single row and encodes values with semicolons".
How does the syntax differ?
The clearest comparison uses the smallest possible table. The TRON README encodes [{ a: 1, b: 2 }, { a: 3, b: 4 }] like this:
class A: a,b
[A(1,2), A(3,4)]TOON 4.1.1 encodes the same array like this:
[2]{a,b}:
1,2
3,4JTON's paper shows Zen Grid on a three-row table. The header is the first segment, and each row follows after a semicolon:
[3: id, name, score; 1, "Alice", 95; 2, "Bob", 87; 3, "Carol", 92 ]For comparison, here is TOON's encoding of that same three-row table:
[3]{id,name,score}:
1,Alice,95
2,Bob,87
3,Carol,92The design choices matter more than the punctuation. TOON relies on indentation and an explicit row count, [3], which helps models check that the data is complete. TRON's classes can be reused anywhere in the document, so the same shape appearing in many places is declared once. That is useful when an agent sees many tools with similar schemas. JTON keeps JSON's type system and quoting. Quoted strings cost tokens, but any JSON document is already valid JTON. The paper reports that an optional bare_strings mode, which leaves identifier-like strings unquoted, saves another 5–10% on string-heavy data.
Which format saves the most tokens?
No single benchmark measures all three formats on the same data, so read the numbers below as separate studies. Each one uses a different baseline and tokenizer.
| Claim | TOON | TRON | JTON |
|---|---|---|---|
| Headline token saving | 42.6% fewer than JSON (official benchmark) | Up to 27% fewer (agent benchmarks) | 15–60% fewer than compact JSON, 28.5% average |
| Baseline used | Pretty JSON, o200k_base | JSON in agent loops | Compact JSON |
| Agent study (arXiv 2605.29676) | Up to 18% fewer tokens, about 9 pp accuracy cost | Up to 27% fewer tokens, within 14 pp of JSON | Not tested |
| Comprehension accuracy | 72.2% vs 71.4% for JSON (5,856 calls) | Workload-dependent (see below) | +0.3 pp vs JSON across 10 LLMs |
| Generation validity | Not the recommended output format | Parallel calls failed for most models in study | 100% valid across 12 LLMs |
| Spec status | v4.1 Working Draft | Library v0.1.3 | Paper plus Rust/PyO3 reference |
| npm downloads (Sep 2026) | About 5.44M per month | About 2.2K per month | n/a |
Sources: TOON retrieval-accuracy results; Notation Matters (arXiv 2605.29676); JTON paper (arXiv 2604.05865); npm download API for @toon-format/toon and @tron-format/tron.
Baselines matter. JTON's 28.5% average is measured against compact JSON, which is already much smaller than pretty-printed JSON. TOON's own token-efficiency results show the same effect. On the flat-only track TOON is 35.2% smaller than compact JSON, but on the mixed-structure track it is 1.6% larger than compact JSON while still 32.7% smaller than pretty JSON. A "40% saving" and a "28% saving" can describe very similar formats measured against different baselines.
What did the 2026 agent benchmark find?
The only head-to-head study of TOON and TRON is "Notation Matters" (Kutschka and Geiger, v2 June 17, 2026). It ran four agent benchmarks (BFCL, MCPToolBenchPP, MCP-Universe and StableToolBench) on five open-weight model configurations from 17B to 32B parameters. Its abstract states that "TRON reduces tokens by up to 27% with accuracy within 14 pp of the JSON baseline. TOON achieves up to 18% reduction at a similar 9 pp accuracy cost, but additionally cascades on multi-turn parsing failures and collapses parallel tool-call output for most models."
TRON did not win everywhere. According to the full paper, on BFCL's non-live categories "total tokens increase by up to 21%". With only a few unique schemas per task, the class headers cost more than they save. The authors call TRON "a defensible drop-in for JSON" only "when the workload exposes many structurally similar tools", and otherwise a choice "that should be measured rather than assumed."
TOON produced the largest single compression, about 30% on MCPToolBenchPP's verbose tabular data. It also produced the largest single accuracy drop: one model's BFCL score fell from 89% to 53%. For practical agent guidance, see TOON for AI agents.
One limitation applies to all of this: the study tested only open-weight models up to 32B parameters. The official TOON benchmark tested hosted models (Claude Haiku 4.5, Gemini 3.6 Flash, GPT-5.4 Nano and Grok 4.5) on retrieval, not tool calling, and found TOON slightly ahead of JSON overall. The two studies answer different questions.
How mature is each format?
Maturity is where TOON leads most clearly. It has a versioned specification with a changelog, a provisional media type (text/toon), official community ports in Python, Rust, Java, Go, .NET, Swift, Dart and Julia, and about 25.4K GitHub stars. Monthly npm downloads grew from about 984K in January 2026 to about 5.44M in September 2026.
TRON is a small project. Its npm package is at v0.1.3 with about 2.2K downloads a month. The README offers a playground for comparing token counts but publishes no savings figures of its own. Treat its syntax as subject to change.
JTON is mainly a research artifact. The paper describes a Rust/PyO3 reference implementation that parses at "1.4x the speed of Python's json module", plus a 683-vector test suite. That is a solid base, but it has no measurable ecosystem yet.
Which format should you choose?
- Large uniform tables sent to a model for reading: TOON. It has the most tooling and the largest published savings on tabular data, and v4 adds nested field groups for uniform nested objects.
- Agents with many similar tool schemas: TRON deserves a test, because class reuse pays off exactly there. Measure it on your own tools first.
- Output that must stay JSON-compatible: JTON's superset design and 100% generation validity make it the most interesting option on paper. Check the implementation's maturity before relying on it.
- Model output in production agents: plain JSON, ideally with structured outputs. None of the three alternatives has shown it is safe for parallel tool calls.
Whatever you pick, measure on your own payloads. Our TOON vs minified JSON comparison explains why the baseline changes the answer, and when not to use TOON lists the cases where JSON or CSV still wins. You can test TOON on your own data in the TOON token calculator, which compares JSON and TOON token counts side by side.
Frequently Asked Questions
What is the difference between TOON and TRON?
TOON writes uniform arrays as indented tables with a header listing field names once. TRON declares a class with the field names, then writes each object as a constructor call such as A(1,2). TRON can reuse a class anywhere in a document, while TOON declares fields per array.
What is JTON?
JTON, or JSON Tabular Object Notation, is a strict JSON superset described in arXiv paper 2604.05865 from April 2026. Its Zen Grid encoding puts column headers in one row and separates rows with semicolons. The paper reports 15 to 60 percent fewer tokens than compact JSON, 28.5 percent on average.
Is TRON better than TOON for AI agents?
In the 2026 Notation Matters study on open-weight models, TRON cut tokens by up to 27 percent with accuracy within 14 points of JSON, and was called a defensible drop-in when tools share similar schemas. TOON cut up to 18 percent but failed more in multi-turn loops and on parallel tool calls.
Which token-efficient format is most widely used?
TOON, by a wide margin. The @toon-format/toon package had about 5.44 million npm downloads in September 2026, compared with about 2,200 for @tron-format/tron. TOON also has a versioned spec and official ports in eight other languages. JTON is so far mainly a research paper with a reference implementation.
Recommended Reading
TOON vs Minified JSON: When Compact JSON Wins
The latest TOON benchmark shows compact JSON beats TOON on mixed, nested data, while TOON wins big on uniform tables. Here is how to choose for your payload.
How TOON Handles Nested and Non-Uniform Data
TOON shines on uniform arrays, but real data nests. How TOON represents nested objects and mixed structures, where savings drop, and when JSON or YAML wins.
Compressing REST API Responses for LLMs with TOON
REST endpoints over-fetch and repeat keys on every record. Learn how to convert REST JSON responses into TOON tables before sending them to an LLM.