One thing I kept running into while building JSON Semantic Diff is that comparing JSON arrays by index breaks down pretty quickly.
If the same objects appear in a different order, a small change can suddenly look like dozens of modifications.
I ended up treating it as an identity problem first: which object on the left corresponds to which object on the right? This semantic diff tool tries to infer that from the data, and falls back when it s ambiguous.
Hey Product Hunt 👋
I started building JSON Semantic Diff after running into the same frustrating problem over and over: two JSON payloads were logically almost identical, but a reordered array made the diff look like everything had changed.
That got me thinking that the real problem wasn’t just comparison - it was figuring out which objects on the left actually correspond to which objects on the right.
So I built a diff that tries to infer object identity from the data itself, including composite identities like store + sku. If the match isn’t reliable enough, it falls back instead of guessing, and you can always choose the matching keys yourself.
It’s still early, but the core experience is working well, and I’m actively improving it. If you work with APIs, payloads, configs, snapshots, or just messy JSON, I’d love for you to open the app, load an example, reorder a few objects, change some values, and see how it behaves.
Try it: https://jsonsemanticdiff.dev