Who is JSON?
Not a file system, not a storage medium, not a person. A format — and he has been readable this whole time.
September 1, 2026 · 8 minute readYou would know a JSON if you saw one
You would know a JSON if you saw one. Braces, quoted keys, a colon between each key and its value, commas holding the members apart, and some amount of nesting. No header, no magic bytes, no version field, no declaration of intent. The shape is the whole announcement.
Here is one, and it is dangling. An array was opened and never bracketed shut, and two objects are still waiting on their closing braces. A parser will refuse this and report the point at which it ran out of document, which lands after the character that actually went wrong rather than on it — V8 blames line 5, and the missing bracket is on line 4. That gap — between where a parser gives up and where a human made the mistake — is most of what a repair tool exists to close.
{
"id": 4021,
"name": "Jason",
"tags": ["orange", "striped",
"seen": {
"where": "localhost",
"readable": trueYou will find him locally
For about twenty years the joke was localhost. It sounds like a place you could visit, or a man who is always home, and the punchline was that nobody could ever visit him anyway. Only developers ever typed it, so the joke stayed inside the building.
JSON is the 2026 edition, and it did not stay inside the building. A screenshot went around in June: an AI coding tool, a single prompt reading who is json, and a full-access permission grant sitting next to it, captioned day one of vibecoding. The dunking lasted about a week.
So in the middle of countless hours with your technical coworkers you will hear the phrase go past — who is json, and why does he have everything readable. He has everything readable because that was the entire point. Readability was not a side effect of the format. It was the requirement the format was built to meet, and every other property it has was traded away to keep it.
Douglas did not invent him
Douglas Crockford is careful about the verb. "I do not claim to have invented JSON," he has said, "because it already existed in nature. What I did was I found it, I named it, I described how it was useful."
The finding happened at State Software, a company he cofounded in March 2001 with Chip Morningstar and others. The first JSON message was sent in April 2001, and json.org went up the same year. The format was not so much designed as noticed: a legal subset of JavaScript that a browser could already read, with no plugin, no compiler, and no committee.
Standardization was equally informal at the start. Crockford put the grammar on json.org as a set of railroad diagrams and declared that this was the standard. It became one. RFC 4627 followed as an informational specification in 2006, ECMA-404 in October 2013, RFC 7159 in 2014, and in late 2017 both ISO/IEC 21778 and RFC 8259 — now Internet Standard STD 90. Three standards bodies eventually ratified a page one person had already put on the internet.
The reference implementation carried a license clause reading "The Software shall be used for Good, not Evil." It was aimed at corporate lawyers and it landed: the clause is unapprovable by most of them and incompatible with several open-source licenses. The story that trails it is that IBM asked, in writing, for permission to use the software for evil, and was granted it.
How to say his name
The pronunciation argument outlasted the format's own standardization. The 2017 international standard put an end to it in writing: JSON is "pronounced /ˈdʒeɪ.sən/, as in 'Jason and The Argonauts'."
Crockford's own position, stated in 2011, was less invested: "There's a lot of argument about how you pronounce that, but I strictly don't care." Both readings survive in the wild, which is the only reason the rest of this page is possible.
What JSON is not
He is not a file system. There are no directories, no permissions, no inodes, no path resolution, no notion of where anything lives. A .json file sits inside a file system; it does not provide one.
He is not a storage medium. There is no index, no transaction, no durability guarantee, no query planner, no answer to what happens when two writers arrive at once. Databases store JSON. JSON stores nothing. If a document is on disk, something else put it there and something else is responsible for keeping it true.
He is not a programming language, a schema, or a protocol. He carries no behavior, no functions, no dates, no comments, no references, and no types beyond the six he has. Every additional meaning — this string is a timestamp, this object is a User, this null means the field was never set rather than deliberately cleared — is a convention held by the code on both ends, never by the document.
He is not a person. Well. Maybe by the end of this page.
What JSON actually is
A text format for data interchange. UTF-8 bytes, six types — object, array, string, number, and the literals true, false and null — and a grammar that fits on one page with room to spare.
That smallness is the entire feature. A conforming parser is a weekend project in almost any language, which is why almost every language shipped one, which is why two systems that agree on nothing else can still agree on a payload. JSON did not win on capability. It won by being too small to argue with.
It has one honest sharp edge, and it is the number. JSON says a number is a number and declines to say how wide. Most parsers land on IEEE 754 doubles, so a 64-bit identifier above 2^53 can go out one side and come back a different value, silently, with no error anywhere. That is not a bug in anyone's parser. It is the specification refusing to have an opinion, and it is why a validator worth using flags large integers before your database does.
Why not just send a spreadsheet
The comparison people reach for is .xlsx or .docx, because those also hold data and people also email them around. They are not the same kind of object. An .xlsx is a ZIP archive of XML parts written against the OOXML schema; reading a single cell means opening the archive, resolving a shared-string table, and understanding a document model that exists to describe a rendering application rather than a value.
A spreadsheet stores presentation alongside the data — column widths, fonts, merged cells, formulas, and above all the position a value happens to occupy. The answer to what is this number is it is in C7. In JSON the meaning is in the key path: /orders/42/total says what it is from anywhere, and it keeps saying it after the document is reordered, reformatted, or nested a level deeper.
A workbook is also flat and rectangular, and JSON is a tree. An order with three line items and a nested shipping address is one JSON value. In a workbook it is several sheets that have to be joined, which means the joining rule lives in somebody's head instead of in the file.
Spreadsheet applications then edit your data on the way in. Leading zeros disappear, identifiers are helpfully converted to dates, long numbers are rounded for display and saved that way. JSON does not reinterpret a string: the bytes you wrote are the bytes that come back. Its one coercion risk is the number width described above, and that one is at least written down.
And JSON diffs. It is line-oriented text, so version control shows which field changed, in which commit, by whom. To git an .xlsx is a binary blob and the review comment is the file changed. For anything that gets reviewed, deployed, or argued about six months later, that single property outweighs most of what a spreadsheet offers.
None of which makes a spreadsheet wrong. A grid a human edits by hand and a payload one machine hands to another are different jobs. The only mistake is using either one where the other belongs.
Meet Jason
This is Jason. He is the new mascot of jsontools.me: an orange cat with black stripes near his ears and down his stomach, permanently looking rightways, permanently on all fours.
He is not the format. The format is JSON, has no legs, and is described above. Jason is the cat who answers to the sound of it, which is defensible, because a standards body wrote down that the format answers to it too.
He is drawn as pixels rather than rendered as a photograph for roughly the reason the format is text rather than a binary container. Every part of him is visible at a glance, the whole thing is a small grid you could write out by hand, and there is nothing underneath it.