Text / JSON Diff

Compare two texts and see exactly what changed, line by line

Diff
+0 -0 = 0

When to Use a Diff Tool

Common use cases in auth and API development

JWT Claim Changes

Compare token payloads before and after a scope or role change to verify exactly which claims were added, removed, or modified.

Config Comparison

Diff OIDC discovery documents, JWKS responses, or environment configs between staging and production to catch unintended differences.

API Response Drift

Paste the same API response from two different environments or versions to spot field renames, type changes, or missing fields that would break your client.

Comparing configuration and responses

Typical uses in an auth context

Comparing a working environment's configuration against a broken one is often the fastest route to a root cause — staging authenticates and production doesn't, and the difference is one scope or one redirect URI.

Other frequent cases: two JWT payloads where one is accepted and one rejected, two discovery documents from different providers, and a JWKS before and after a rotation to confirm both keys are present.

Whitespace and ordering

JSON object key order is not semantically meaningful, but a plain text diff will report reordered keys as changes. Normalize by formatting both sides consistently before comparing, or the real difference gets lost in noise.

Trailing whitespace and line-ending differences (\r\n versus \n) produce the same problem — a diff full of changes where nothing meaningful differs. This is common when one side was copied from a Windows machine.

What to look for in a token diff

When one token works and another doesn't, the differences that matter are usually aud, iss, exp, the kid in the header, and the scope or roles claim. Everything else is generally noise.

Header differences are worth checking first. A different alg or kid between two tokens points at a key or configuration problem rather than anything about the claims.

Frequently asked questions

No. The comparison runs entirely in your browser, which matters when diffing tokens or configuration that contains secrets.

Almost certainly key ordering or formatting. JSON objects are unordered semantically, but a text diff compares lines. Format both sides identically first, then compare.

Decode them first — comparing the encoded strings tells you only that they differ. Decode each with the JWT Decoder, then diff the payloads to see which claims actually changed.

Mixed CRLF and LF will show as differences on every line. Normalize line endings before comparing if you're diffing content that came from different operating systems.

Export both as JSON, format them consistently, sort keys if your tooling allows, then compare. That removes ordering and whitespace noise so the genuine differences stand out.

Diffing staging against production?

Applications, connections, and roles are configurable per tenant and scriptable through the Management API — so environments stay in sync by construction.

Free, unlimited users. No credit card required.