Updated benchmark results of JSON parsers for Scala - now with results for circe and play-json boosters based on jsoniter-scala.

This page summarizes the projects mentioned and recommended in the original post on /r/scala

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • jsoniter-scala

    Scala macros for compile-time generation of safe and ultra-fast JSON codecs

  • Sources of benchmarks are here.

  • µPickle

    uPickle: a simple, fast, dependency-free JSON & Binary (MessagePack) serialization library for Scala

  • See here for sample code size numbers (not picking on upickle specifically, it's just what I'm using myself. I've heard similar reports about e.g. circe)

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • weePickle

    A fork of uPickle, shaded for backwards and forwards compatibility.

  • The summary would be that jsoniter-scala-core API can speed up AST-based parsers like circe and play-json greatly. But the code generated by jsoniter-scala-macros API is much more efficient, so I'm expecting that some JSON parsers that allow derivation of direct codecs will port or reuse best implementations from jsoniter-scala-core API like here or here.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts