JWT Token Decoder
jwtchop decodes any JSON Web Token (JWT) entirely in your browser. Paste your token above and instantly see the decoded header, all payload claims, the raw signature, and the token's expiry status — with no data leaving your device. There are no server requests, no logs, and no tracking of the tokens you paste.
A JWT is made of three base64url-encoded parts joined by dots:
HEADER.PAYLOAD.SIGNATURE.
The header identifies the signing algorithm. The payload carries claims — structured facts
about the subject. The signature proves the token hasn't been tampered with (but verifying it
requires the secret, which you should never paste anywhere).
Standard JWT Claims
Why browser-side?
Most JWT decoders send your token to a server. That's a security risk — JWTs often contain user IDs, roles, email addresses, session identifiers, and other sensitive claims. Even if the server doesn't store them, the token travels over a network you don't control. jwtchop does all decoding locally using the browser's built-in JavaScript engine. Your tokens stay on your machine.
How to use jwtchop
Paste your JWT into the input field above. The decoder updates instantly as you type.
The header panel shows the algorithm (HS256, RS256, etc.) and token type. The payload panel
shows all claims with standard claim names labeled in plain English. The signature panel
shows the raw signature bytes. The token status panel shows whether the token is currently
valid, expired, or not yet active based on the exp,
iat, and nbf claims.
FAQ
What is a JWT?
Is it safe to paste my JWT here?
Can jwtchop verify the signature?
What algorithms does jwtchop support?
Why is my token showing as expired?
exp claim in the payload contains a Unix
timestamp (seconds since Jan 1, 1970). If that timestamp is in the past relative to your
current local time, the token is expired. This is expected for tokens you've retrieved
from logs or old sessions. Request a fresh token from your auth provider.
What's the difference between iat and nbf?
iat (Issued At) is when the token was created.
nbf (Not Before) is when the token becomes valid —
useful for tokens that are created in advance but shouldn't be used yet. A token can have
both: issued now, valid in 5 minutes, expires in 1 hour.