The benchmark compares fory-json-scala, jsoniter-scala, and Jackson Scala on the same immutable Scala MediaContent model and Eishay JSON document. The String group excludes UTF-8 conversion; every library in the UTF-8 group uses its direct byte-array API.
For the separate Google Maps workload, see JVM JSON pretty-printing measurements.
2026-08-14588ad6ab355c4c23fa0a2e4f269a8c733cba7b0126.0.1OpenJDK 64-Bit Server VM1.371 s1 s| Representation | Operation | fory-json-scala ops/sec | jsoniter-scala ops/sec | Jackson Scala ops/sec | Fastest |
|---|---|---|---|---|---|
| String | Serialize | 6,760,588 | 2,748,997 | 1,955,855 | fory-json-scala |
| String | Deserialize | 3,771,280 | 2,350,297 | 960,362 | fory-json-scala |
| UTF-8 bytes | Serialize | 9,485,122 | 2,745,567 | 1,761,719 | fory-json-scala |
| UTF-8 bytes | Deserialize | 3,318,893 | 2,391,923 | 1,080,453 | fory-json-scala |
| Representation | Operation | vs jsoniter-scala | vs Jackson Scala |
|---|---|---|---|
| String | Serialize | 145.9% | 245.7% |
| String | Deserialize | 60.5% | 292.7% |
| UTF-8 bytes | Serialize | 245.5% | 438.4% |
| UTF-8 bytes | Deserialize | 38.8% | 207.2% |