ArduinoJson (community library)


Name Value
Name ArduinoJson
Version 6.21.3
Installs 414263
License MIT
Author Benoit Blanchon <>
Maintainer Benoit Blanchon <>
Download .tar.gz
All Versions 6.21.3, 6.21.2, 6.21.1, 6.21.0, 6.20.1, 6.20.0, 6.19.4, 6.19.3, 6.19.2, 6.19.1, 6.19.0, 6.18.5, 6.18.4, 6.18.3, 6.18.2, 6.18.1, 6.18.0, 6.17.3, 6.17.2, 6.17.1, 6.17.0, 6.16.1, 6.16.0, 6.15.2, 6.15.1, 6.15.0, 6.14.1, 6.14.0, 6.13.0, 6.12.0, 6.11.5, 6.11.4, 6.11.3, 6.11.2, 6.11.0, 6.10.1, 6.10.0, 6.9.1, 5.13.5, 5.13.4, 5.13.3, 5.11.2, 5.11.1, 5.8.4

A simple and efficient JSON library for embedded C++. ArduinoJson supports ✔ serialization, ✔ deserialization, ✔ MessagePack, ✔ fixed allocation, ✔ zero-copy, ✔ streams, ✔ filtering, and more. It is the most popular Arduino library on GitHub ❤❤❤❤❤. Check out for a comprehensive documentation.

Example Build Testing

Device OS Version:

This table is generated from an automated build. Success only indicates that the code compiled successfully.

Library Read Me

This content is provided by the library maintainer and has not been validated or approved.


GitHub Workflow Status Continuous Integration Fuzzing Status Coveralls branch Arduino Library Manager PlatformIO Registry ESP IDF GitHub stars GitHub Sponsors

ArduinoJson is a C++ JSON library for Arduino and IoT (Internet Of Things).




Here is a program that parses a JSON document with ArduinoJson.

char json[] = "{\"sensor\":\"gps\",\"time\":1351824120,\"data\":[48.756080,2.302038]}";

DynamicJsonDocument doc(1024);
deserializeJson(doc, json);

const char* sensor = doc["sensor"];
long time          = doc["time"];
double latitude    = doc["data"][0];
double longitude   = doc["data"][1];

See the tutorial on


Here is a program that generates a JSON document with ArduinoJson:

DynamicJsonDocument doc(1024);

doc["sensor"] = "gps";
doc["time"]   = 1351824120;
doc["data"][0] = 48.756080;
doc["data"][1] = 2.302038;

serializeJson(doc, Serial);
// This prints:
// {"sensor":"gps","time":1351824120,"data":[48.756080,2.302038]}

See the tutorial on


ArduinoJson is thankful to its sponsors. Please give them a visit; they deserve it!

Programming Electronics Academy


If you run a commercial project that embeds ArduinoJson, think about sponsoring the library's development: it ensures the code that your products rely on stays actively maintained. It can also give your project some exposure to the makers' community.

If you are an individual user and want to support the development (or give a sign of appreciation), consider purchasing the book Mastering ArduinoJson ❤, or simply cast a star ⭐.

Browse Library Files