What is YAML?

YAML's syntax is similar to that of other high-level languages and can easily represent data forms such as lists, hash tables and scalars. It uses whitespace indentation and relies heavily on appearance, making it especially suitable for expressing or editing data structures, various configuration files, debug dumps and file outlines (for example, many email header formats are very close to YAML). Although it is better suited to expressing hierarchical-model data structures, it also has refined syntax for representing relational-model data. Because YAML uses whitespace characters and line breaks to separate data, it is especially suitable for manipulation with grep/Python/Perl/Ruby. Its most approachable feature is that it cleverly avoids various delimiting symbols, such as quotation marks and different kinds of brackets, which become complex and hard to read in nested structures.

Recently used:

How to use

This tool belongs to the “JSON tools” category.

  1. 1Paste your JSON into the input box, or enter a remote JSON URL and fetch it.
  2. 2Click Format to get indented output. If it fails, look for trailing commas, single quotes or comments.
  3. 3Use Minify to shrink the payload, or convert the object into GET parameters and copy it into your code.

Your input is processed locally in the browser whenever possible. We do not store it.

Frequently asked questions

Why does formatting report a parse error?

Almost always unquoted keys, single quotes, a trailing comma or an inline comment. The JSON standard allows none of those.

Is there a size limit?

Parsing runs synchronously in the browser, so a few megabytes are fine. For larger files use the compact view or a local tool.

Remote fetch returns nothing

The URL must be publicly reachable and must not require a login. Anti-hotlinking or same-origin rules will block the request.