JWT decoder

Read a token’s header, claims and expiry — and verify HS256 locally.

About & FAQ ↓
Encoded token
Waiting for input.
Header
Payload / claims

Decoding is not verification. Without a secret this only reads the token; with one, HS256/384/512 signatures are checked via WebCrypto in the browser. RS/ES tokens need a public key and are not verified here.

Reference
JWT decoder

About the JWT decoder

A JWT is a credential. Pasting one into a website that decodes it server-side hands someone a session, which is why this decoder runs entirely in the page: the token is split and base64url-decoded locally, and if you supply the signing secret, the HMAC signature is verified with the browser's own WebCrypto. Expiry and not-before claims are worked out for you in plain language.

01

Header and claims

Both halves decoded and pretty-printed, with UTF-8 claims intact.

02

Expiry in plain language

exp, iat and nbf are shown as real dates plus "in 42 minutes" or "3 days ago".

03

Real HS256 verification

Supply the secret and the signature is checked with WebCrypto, in the page.

04

Never transmitted

A JWT is a live credential. This one is decoded locally and goes nowhere near a server.

How to use it

  1. Paste the token (a "Bearer " prefix is fine — it gets stripped).
  2. Read the header and claims; timestamps are annotated with how long ago or how far ahead they are.
  3. Optionally paste the signing secret to verify an HS256, HS384 or HS512 signature.

Questions

Is my token sent anywhere?

No, and this is the one page where that matters most. Decoding and verification both happen in your browser. There is no backend to receive it.

Can it verify RS256 or ES256 tokens?

No. Those are signed with a private key and verified with the matching public key, which this tool does not ask for. RS/ES tokens are decoded and clearly reported as unverified.

Does decoding mean the token is valid?

No. Anyone can read a JWT — the payload is only base64-encoded, not encrypted. Only a signature check with the right key proves it is genuine, which is what the secret field is for.