JWT Decoder
Decode a JSON Web Token's header and payload. Runs 100% in your browser — tokens never leave the page.
Your token is decoded in your browser. Nothing is sent to any server.
JWT
Token has expired at 2026-03-20 00:00:00 UTC.
Header
Payload
Signature (raw, not verified)
How to decode a JWT
- 1Paste your JWTDrop the full token (header.payload.signature) into the input.
- 2See header & payloadBoth sections are Base64URL-decoded and pretty-printed.
- 3Check expirationWe compute iat/exp from the payload and flag expired tokens.
Frequently asked questions
Is my token sent to your server?
No. Decoding runs entirely in JavaScript in your browser. Your token never touches our servers or logs.
Does this verify the signature?
No. Verification requires the signing key, which should never be shared in a tool like this. Use your server-side library for verification.
Which algorithms are supported?
All of them — we only decode the header and payload, which is algorithm-independent.
What does the expiration check do?
If the payload contains `exp`, we compare it to the current browser time. Expired tokens get a red badge.
Building a SaaS product?
We design, build, and scale SaaS platforms — from auth and billing to dashboards and APIs.
Built by CountryDevs · No signup · No ads · No tracking