How to use
- Paste your JSON Web Token into the input box.
- The decoder splits it on the dots and base64url-decodes it.
- Read the pretty-printed header and payload JSON below.
- Check the expiry status and copy the header or payload with one click.
Frequently asked questions
What is a JWT and what does this tool decode?
A JWT (JSON Web Token) is a compact, dot-separated token with three parts: header, payload, and signature. This tool base64url-decodes the header and payload and pretty-prints them as JSON so you can read the claims. It does not touch or expose the raw signature.
Is my token uploaded or stored anywhere?
No. Decoding happens entirely in your browser using JavaScript β your JWT is never sent to a server, logged, or stored. This makes it safe to inspect real access tokens without leaking sensitive data.
Does it verify the JWT signature?
No. This is a decoder, not a validator. It reads the header and payload but performs no signature verification, so it cannot confirm the token is authentic or untampered. Never trust a decoded token as proof of validity.
How does it show whether a token is expired?
If the payload contains an exp claim (a numeric Unix timestamp), the tool converts it to a readable date and compares it to your current time, marking the token as valid or expired. Tokens without an exp claim simply show no expiry status.
Can I copy the decoded output?
Yes. Each of the header and payload has its own copy button that puts the pretty-printed JSON on your clipboard. If clipboard access is blocked, the text is selected so you can copy it manually.
What if the token is invalid or malformed?
If the token is missing parts, has bad base64url segments, or the decoded data is not valid JSON, the tool shows an invalid-token notice instead of output. Make sure you paste the full token, including the header and payload segments separated by dots.
About this tool
Free online JWT decoder that runs 100% in your browser. Paste a JSON Web Token to inspect its header, payload, claims and expiry as readable JSON. Nothing uploaded.