No. 08 · PDF, image, text and code

JWT decoder

Paste a JSON Web Token to see what is inside: the algorithm, the user and role claims, and when it was issued and expires, in your own time zone. Decoding happens on this device.

Free · no sign-up · runs in your browser · updated 15 Nov 2026

Decoded on this device only. Still, never paste a live production token into a site you do not trust.

Algorithm HS256 · Signature present, not verified

Header
{
  "alg": "HS256",
  "typ": "JWT"
}
Payload
{
  "sub": "user_1042",
  "name": "Asha Patel",
  "role": "editor",
  "iat": 1794700800,
  "exp": 1794704400
}

What is a JWT decoder?

A JWT (JSON Web Token) is three Base64URL-encoded parts joined by dots: a header naming the signing algorithm, a payload of claims such as sub, iat and exp, and a signature. Decoding reads the first two parts. It does not prove the token is genuine; only checking the signature with the right key does that.

Features

  • Header and payload as formatted JSON
  • iat, nbf and exp as dates in your time zone
  • Expired or time-left status
  • Accepts tokens with the Bearer prefix
  • Recognises encrypted tokens (JWE)
  • Runs in your browser; nothing uploaded

How to use the JWT decoder

  1. Paste the token, with or without 'Bearer '.
  2. Read the status: expiry, algorithm and whether it is signed.
  3. Check the claims in the payload.
  4. Copy the header or payload as JSON if you need them.

Registered claims

ClaimMeaning
issIssuer: who created the token
subSubject: usually the user ID
audAudience: which service should accept it
expExpiry time, in seconds since 1 January 1970 UTC
nbfNot valid before this time
iatIssued at
jtiUnique token ID, used to block reuse

These names come from RFC 7519. Anything else in the payload is a custom claim chosen by the issuer.

Decoding is not verifying

  • Anyone can read a signed JWT's payload; it is encoded, not encrypted. Never put passwords or secrets in one.
  • Your server must verify the signature with the expected algorithm and key, and reject alg: none, before trusting any claim.
  • Treat a live production token like a password. This page decodes it locally, but test or expired tokens are the safer habit anywhere.

Frequently asked questions

Is the token sent to a server?

No. It is split and Base64URL-decoded by JavaScript in this page. Nothing is uploaded, logged or stored.

Does it verify the signature?

No. Verification needs the secret or public key, which should stay on your server. This tool only reads the contents.

Why does it say expired when the token still works?

Servers often allow a few minutes of clock difference, and some do not check exp at all. The time shown is exactly what the exp claim says.

Can it read encrypted tokens?

No. An encrypted token (JWE) has five parts and needs the key to read. The tool tells you when it sees one.

Last updated 15 November 2026. Made by Criza Labs. Spotted a mistake? Tell us.

No. 09 · PDF, image, text and code

Base64 Encode & Decode

Encode text to Base64 or decode Base64 back to text, with full UTF-8 for emoji and Indian scripts and a URL-safe option.

No. 07 · PDF, image, text and code

JSON Formatter

Format, validate and minify JSON in your browser.

No. 06 · PDF, image, text and code

Password Generator

Generate strong random passwords up to 64 characters with letters, numbers and symbols, using your browser's secure random generator.

Made by Criza Labs

Need a custom tool for your team or customers?

Criza Labs builds tools like this into websites, billing systems and internal apps: with your branding, your data and your workflow. Fixed scope, fixed price, and you own the code.