Below are benchmark results for several node.js JSON validation modules.

This is an update to a post I made 6 months ago.

Dec 2014 Update: Added 'revalidator' and updated module versions.

The following modules are benchmarked:

All modules validate with the JSON schema described here: http://json-schema.org/

I used the latest schema version supported by each module. This is noted as (v2) (v3) or (v4).

20,000 valid and 20,000 invalid JSON objects were pre-generated with random data. Each validator module was tested against the same randomized objects.

Results - Valid Objects



Results - Invalid Objects



Conclusion

is-my-json-valid is the fastest validator for both valid and invalid objects.

It's so fast I had to make sure it was actually doing anything at all. Amazingly fast!

tv4 is still plenty fast validating valid objects but is a bit slow dealing with invalid ones.

Jayschema remains the slowest validator.

Lastly, a reminder, amanda only supports async validation and so that test includes some additional overhead in dealing with callbacks.

Source Code

Full source code for all the tests can be found here: https://github.com/Sembiance/cosmicrealms.com/tree/master/sandbox/benchmark-of-node-dot-js-json-validation-modules-part-3