Best JSON Validator & Formatter

About JSONLint Editor

JSONLint is a validator and reformatter for JSON, a lightweight data-interchange format. Copy and paste, directly type, or input a URL in the editor above and let JSONLint tidy and validate your messy JSON code.

What Is JSON?

JSON (pronounced as Jason), stands for "JavaScript Object Notation," is a human-readable and compact solution to represent a complex data structure and facilitate data interchange between systems. It's a widespread data format with a diverse range of applications enabled by its simplicity and semblance to readable text. As such, it's used by most but not all systems for communicating data.

Why Use JSON?

There are several reasons why you should consider using JSON, the key reason being that JSON is independent of your system's programming language, despite being derived from JavaScript. Not only is JSON language-independent, but it also represents data that speaks common elements of many programming languages, effectively making it into a universal data representation understood by all systems.

Other reasons include:

  • Readability – JSON is human-readable, given proper formatting.
  • Compactness – JSON data format doesn't use a complete markup structure, unlike XML.
  • It's easy to analyze into logical syntactic components, especially in JavaScript.
  • Countless JSON libraries are available for most programming languages.

Proper JSON Format

Using JSON doesn't require any JavaScript knowledge, though having such would only improve your understanding of JSON. And though the knowledge of JavaScript isn't necessary, following specific rules is:

  • Data is in name/value pairs
  • Data is separated by commas
  • Objects are encapsulated within the opening and closing curly brackets
  • An empty object can be represented by {}
  • Arrays are encapsulated within opening and closing square brackets
  • An empty array can be represented by []
  • A member is represented by a key-value pair, contained in double quotes
  • Each member should have a unique key within an object structure
  • The value of a member must be contained in double quotes, if it's a string
  • Boolean values are represented using the true or false literals in lower case
  • Number values are represented using double-precision floating-point format and shouldn't have leading zeroes
  • "Offensive" characters in a string need to be escaped using the backslash character \
  • Null values are represented by the null literal in lower case
  • Dates, and similar object types, aren't adequately supported and should be converted to strings
  • Each member of an object or array value must be followed by a comma, except for the last one
  • The standard extension for the JSON file is '.json'
  • The mime type for JSON files is 'application/json'

You can achieve proper JSON formatting by following these simple rules. However, if you're unsure about your code, we suggest using JSONLint Validator.

Why Use JSONLint Validator?

Programming can be challenging, as it requires enormous attention and excellent knowledge of the programming language, even as simple as JSON. Still, writing codeis tricky, and finding an error in JSON code can be a challenging and time-consuming task.

The best way to find and correct errors while simultaneously saving time is to use an online tool such as JSONLint. JSONLint will check the validity of your JSON code, detect and point out line numbers of the code containing errors. It's an excellent way to correct errors without wasting hours finding a missing coma somewhere inside your code.

How Does A JSONLint Validator Work?

JSONLint is an online editor, validator, and reformat tool for JSON, which allows you to directly type your code, copy and paste it, or input a URL containing your code. It will validate your JSON content according to JS standards, informing you of every human-made error, which happens for a multitude of reasons – one of them being the lack of focus.

Using JSONLint, you can quickly find any errors that might've occurred, allowing you to focus more on the rest of your code than on a tiny error itself.

Tips & Tricks

  • You can directly input a URL into the editor and JSONLint will scrape it for JSON and parse it.
  • You can provide JSON to lint in the URL if you link to JSONLint with the "json" parameter. Here's an example URL to test.
  • JSONLint can also be used as a JSON compressor if you add ?reformat=compress to the URL.

Common Errors

  • Expecting 'STRING' - You probably have an extra comma at the end of your collection. Something like { "a": "b", }
  • Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[' - You probably have an extra comma at the end of your list. Something like: ["a", "b", ]
  • Enclosing your collection keys in quotes. Proper format for a collection is { "key": "value" }
  • Make sure you follow JSON's syntax properly. For example, always use double quotes, always quotify your keys, and remove all callback functions.

Different Results

If you use a Windows computer you may end up with different results. This is possibly due to the way Windows handles newlines. Essentially, if you have just newline characters (\n) in your JSON and paste it into JSONLint from a Windows computer, it may validate it as valid erroneously since Windows may need a carriage return (\r) as well to detect newlines properly. As a solution, either use direct URL input, or make sure your content's newlines match the architecture your system expects!

Popular tools