Privacy
The short version: the JSON you paste is never uploaded. This site has no analytics, no cookies, no advertising and no third-party scripts, and it makes no network requests to any domain but its own.
Most JSON tools now describe themselves as private, so it is worth stating precisely what this one does and does not do. Everything below can be verified from the browser — the network panel and the storage inspector under developer tools show the same picture this page describes.
What happens to the JSON you paste
Parsing, comparison, formatting and rendering all happen in browser memory. There is no backend API, no session and no server-side component, so there is nowhere for the document to be sent. Large documents are processed in a Web Worker, which is still a thread inside your own browser, not a remote process.
Nothing about the content you paste is stored anywhere unless you explicitly save it — history is written only when you press Compare, and favourites only when you ask for them to be saved.
What is stored on your device
The tool keeps a small amount of state between visits so that settings and history survive a reload. All of it lives in your browser and can be removed from the interface, without clearing anything else on your machine.
| What it holds | Where | Key or database | How to remove it |
|---|---|---|---|
| Preferences | localStorage | json-diff:settings:v1 |
Settings → Reset to defaults |
| Comparison history | IndexedDB | json-diff-db → history |
Settings → Local data → Clear history |
| Saved favourites | IndexedDB | json-diff-db → favorites |
Settings → Local data → Clear favourites |
| History and favourites (fallback) | localStorage |
json-diff:fallback:history,
json-diff:fallback:favorites
|
Used only when IndexedDB is unavailable; cleared with the same buttons |
| Offline copy of the site | Cache Storage | json-diff-<version> |
Settings → Runtime info → Clear cache and reload |
| Update marker | sessionStorage | json-diff:sw-reloaded |
Discarded when the tab is closed |
None of these keys contains anything except the JSON you chose to compare and the preferences you set. Nothing is synchronised, so a second device starts empty.
Deleting everything
The quickest route is the tool itself, which removes the site's data without touching other sites:
- Open Settings → Local data and press Clear history and Clear favourites.
- Still in settings, press Reset to defaults to drop your stored preferences.
- Under Runtime info, press Clear cache and reload to delete the cached copy of the site.
As a fallback, every browser can remove the same data from its own settings under Cookies and site data — look for this site's origin and clear its storage. Since no cookies are set, that entry contains only the local storage and cache described above.
Share links
A share link compresses both documents and the active comparison options
into the part of the URL after the # character. Browsers do
not transmit the fragment to a server, so the payload stays on the
machine that opened the link. Anyone holding the link can read the
comparison, so treat it exactly as you would treat the underlying data.
What the hosting provider can see
- The page is served over HTTPS with HSTS enabled, so traffic is encrypted in transit.
- The provider sees ordinary request logs: an IP address, a user agent, and the requested URL — without its fragment.
- It never sees your JSON, because the JSON is never part of a request.
That is the technical limit of what this site can promise: it cannot conceal the fact that you visited a page, and it does not pretend to.
What is not on this site
- No analytics, page-view counters, heatmaps or A/B testing.
- No advertising, trackers or social media pixels.
- No cookies at all, and therefore no cookie banner.
- No third-party scripts, fonts or CDN — every asset is served from this domain.
- No account, sign-up, quota or server-side profile.
Changes to this page
If a future release changes what is stored or requested, this page and the changelog are updated in the same release. The version the site is running is shown under Settings → Runtime info, so the description here can always be matched against the build that produced it.
See also about this tool for how the comparison engine itself works.