Runs in your browser. Nothing you paste is sent anywhere.
Header
Signature
Payload
How it works
header . payload . signatureA JWT is three Base64url pieces joined by dots. The first two are plain JSON that anyone can read; only the signature proves the token wasn’t changed. Your token, colored by part:
-
Split at the dots
3 parts → header, payload, signature -
Base64url-decode the first two
- → +, _ → /, add = padding, then decode to JSON -
Turn time claims into dates
exp, iat, nbf are seconds since 1 Jan 1970 (Unix time)
Registered claims
| Claim | Meaning |
|---|---|
| iss | issuer: who made the token |
| sub | subject: who it’s about (a user ID) |
| aud | audience: who should accept it |
| exp | expires at (Unix time) |
| nbf | not valid before (Unix time) |
| iat | issued at (Unix time) |
| jti | token ID, to stop replays |
Good to know
- The payload isn’t secret: never put passwords or personal data in a JWT.
- Login tokens from real sites are keys to an account: decoding here is safe because nothing leaves your browser, but don’t paste them into tools you don’t trust.