Performance profiling of JSON libraries (Compiled and run on Darwin 24.6.0 using the AppleClang 17.0.0.17000013 compiler).
Latest Results: (Dec 12, 2025)
Using the following commits:
| Jsonifier: 28dfa9b
| Glaze: d8a8fb9
| Simdjson: ae32422
1400 iterations on a (Apple M1 (Virtual)), where the most stable 20 subsequent iterations are sampled.
These benchmarks were executed using the CPU benchmark library benchmarksuite .
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
299.615
4.01512
914
2908.35
194.51
3.79329
878
4306.4
glaze
129.738
7.43441
905
6666.65
89.3179
12.5811
917
9822.8
simdjson
93.9815
5.33005
891
9043.8
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
437.429
40.1147
4246
10102.1
709.354
9.89595
4237
5718.85
glaze
294.154
9.60701
4224
13768.7
208.943
7.44086
4276
19546
simdjson
132.739
25.0644
4257
31387.4
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1033.91
2.78123
1938
1789.45
928.828
2.75536
1939
1991.6
glaze
290.983
6.70892
1940
6374.95
252.976
12.8551
1938
7341.5
simdjson
277.69
3.61491
1941
6672.85
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
444.146
3.0228
1937
4162.5
956.101
3.29607
1937
1933.45
simdjson
222.921
5.84644
1935
8297.8
glaze
105.518
2.362
1936
17506
257.204
9.9457
1937
7212.55
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
474.141
6.14987
449
904.1
289.538
2.50414
449
1481.3
glaze
78.1422
11.3418
450
5535.3
48.6738
10.3178
449
8839.55
simdjson
23.1689
4.3931
450
18535.5
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1304.82
2.38207
48111
35185.5
1736.81
2.89036
50985
27998
simdjson
1216.14
12.2264
49908
39643.7
glaze
976.94
2.02196
47656
46502
1535.55
4.94272
47630
29568.6
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
simdjson
934.746
5.10577
35965
36796
jsonifier
912.266
3.52413
35313
36904.1
1737.39
5.73064
35118
19312.5
glaze
740.503
3.82133
34728
44710.4
1238.38
13.7265
34153
26773
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
simdjson
1452.52
22.0857
1065
685.2
jsonifier
774.996
10.8369
1179
1437.4
1795.85
11.3513
1110
587.45
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
simdjson
927.566
23.8136
514
512.35
jsonifier
513.615
9.38431
595
1077.15
1758.45
14.0074
749
408.25
The JSON documents in the previous tests featured keys ranging from "a" to "z", where each key corresponds to an array of values. Notably, the documents in this test arrange these keys in reverse order, deviating from the typical "a" to "z" arrangement.
This test effectively demonstrates the challenges encountered when utilizing simdjson and iterative parsers that lack the ability to efficiently allocate memory locations throughhashing. In cases where the keys are not in the expected sequence, performance is significantly compromised, with the severity escalating as the document size increases.
In contrast, hash-based solutions offer a viable alternative by circumventing these issues and maintaining optimal performance regardless of the JSON document's scale, or ordering of the keys being parsed.
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1359.1
3.5075
50003
35089.5
1813.31
5.09791
52836
27812.6
glaze
866.01
8.91042
49788
55375.2
1362.45
4.90036
49704
34766.7
simdjson
863.667
7.53221
49924
55212.6
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
951.115
5.46898
33357
33493.8
1655.31
2.77663
34461
19839.6
simdjson
942.774
4.00984
33700
34127.1
glaze
746.8
3.22366
33975
43391.7
652.552
4.33876
35079
51356.3
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1948.83
3.23588
92442
45258.3
2204.11
3.81224
92442
40008.3
glaze
1382.46
3.98514
92442
63795.8
1951.93
2.78242
92442
45177.1
simdjson
1303.51
2.2783
92442
67643.7
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1295.09
1.97784
55353
40768.8
2293.31
2.56702
55353
23027.2
glaze
1228.52
4.24675
55353
43000.1
2266.74
2.28901
55353
23295.8
simdjson
843.797
2.12007
55353
62572.9
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1024.1
1.86744
6661897
6.20481e+06
1060.58
4.30406
6661897
5.99423e+06
glaze
1006.76
21.2261
6661897
6.3543e+06
497.006
23.7716
6661897
1.33255e+07
simdjson
966.709
11.9271
6661897
6.60853e+06
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
glaze
525.521
1.7944
2090234
3.79368e+06
709.455
2.3398
2090234
2.81049e+06
jsonifier
458.219
2.22517
2090234
4.35127e+06
585.083
9.75923
2090234
3.41433e+06
simdjson
348.38
2.94484
2090234
5.72321e+06
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1968.3
3.74988
1439562
697690
1916.98
2.78314
1439562
716513
simdjson
1418.37
5.18199
1423415
957987
glaze
1361.21
3.73058
1439584
1.00909e+06
1161.14
5.68448
1439584
1.18457e+06
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
842.682
5.36459
500299
566665
1303.95
5.3897
500299
366273
glaze
842.142
5.44891
500299
567104
1296.22
4.99964
500299
368673
simdjson
625.133
4.31039
492910
752565
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1612.73
4.70514
44653
26427.2
2888.86
5.65813
44653
14756.4
simdjson
645.128
11.5454
44653
66248.1
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1557.25
9.24191
37543
23031.1
3270.33
6.82509
37543
10954.2
simdjson
1495.95
11.7648
37543
24000
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1998.77
4.60747
414021
197900
1007.45
4.37047
414021
392202
simdjson
1463.12
4.35204
418582
273044
glaze
1461.7
3.0507
414021
270225
1508.41
4.64113
414021
261952
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
jsonifier
1490.48
4.55664
277014
177475
3060.18
4.52054
277014
86422.9
glaze
1351.84
4.82621
277014
195556
2303.05
5.68609
277014
114933
simdjson
1006.3
2.44451
278407
263958
Library
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
glaze
1267.64
2.0296
466906
351308
jsonifier
1133.15
1.60774
466906
392979
simdjson
660.285
1.65364
466906
674429
Library
Write (MB/S)
Write Percentage Deviation (+/-%)
Write Length (Bytes)
Write Time (ns)
glaze
1577.28
5.58888
699405
423167
jsonifier
1523.01
4.41228
699405
438150
Library
Read (MB/S)
Read Percentage Deviation (+/-%)
Read Length (Bytes)
Read Time (ns)
jsonifier
2313.13
4.84582
631515
260444
glaze
2140.37
4.72459
631515
281446