JWT Decoder

Decode and inspect JSON Web Tokens. View header, payload, and check expiration.

Decode tokens fast

JWT Token

About This Tool

JSON Web Tokens (JWT) are used for authentication and secure data exchange. They consist of three parts: header (algorithm info), payload (claims), and signature. This tool decodes the header and payload but does not verify the signature.

About

About the JWT Decoder

The JWT Decoder reads a JSON Web Token and instantly shows you what's inside it — the header, the payload, and the raw signature — without sending the token anywhere. Paste a token and it splits the three dot-separated parts, Base64Url-decodes the header and payload into readable JSON, surfaces the common claims (issuer, subject, audience, issued-at, expiry), and tells you whether the token has already expired. Reach for it when you're debugging auth flows and need to confirm exactly what a token is asserting and when it lapses.

How to use the JWT Decoder

  1. 1Copy the JWT you want to inspect (or click Load Example to try one).
  2. 2Paste it into the token box — decoding happens instantly as you type.
  3. 3Read the decoded Header and Payload panels rendered as formatted JSON.
  4. 4Check the expiry banner and the Common Claims grid (iss, sub, aud, iat, exp, nbf).
  5. 5Use the copy buttons to grab the header or payload JSON for your notes or a bug report.

Common use cases

  • Debugging a failing login or API call by confirming what claims a token actually carries
  • Checking whether an expired exp (or a not-yet-valid nbf) is why a request is being rejected
  • Inspecting the alg and typ in the header to confirm which signing algorithm an issuer used
  • Verifying iss, sub, and aud match what your service expects during an integration
  • Copying decoded payload JSON into a bug report or ticket without exposing the live token to a server

Frequently asked questions

What is a JWT?

A JSON Web Token is a compact, URL-safe token used for authentication and passing claims between systems. It has three Base64Url-encoded parts separated by dots — header, payload, and signature — and this tool decodes the first two into readable JSON.

Is it safe to paste my token here? Is my data private?

Yes. Decoding runs entirely in your browser using built-in Base64 decoding — your token is never uploaded, stored, logged, or sent to any server. That said, treat real tokens as secrets and avoid pasting production credentials into any third-party site.

Does this tool verify the JWT signature?

No. It only decodes the header and payload so you can read them. It does not verify the signature, so a decoded token is not proof the token is authentic or untampered — signature verification requires the secret or public key on your server.

Does it tell me if a token is expired?

Yes. If the payload contains an exp claim, it converts the Unix timestamp to your local time and shows whether the token is still valid or has already expired. It also surfaces iat (issued at) and nbf (not before) when present.

Is it free, and why is my token 'invalid'?

It's completely free with no sign-up. A token is rejected if it isn't three dot-separated parts or if the header/payload aren't valid Base64Url-encoded JSON — that usually means the value was truncated, double-encoded, or isn't actually a JWT.

Your data never leaves your browser • No cookies • Works offline after your first visit

Press ? for keyboard shortcuts

We use minimal, privacy-focused cookies to improve your experience. Our developer tools process all data locally — we never store your content. Learn more