JWT Decoder & Debugger.
Decode a token, edit header and payload with live re-signing, and verify signatures — without the token ever leaving your browser.
Signature
Paste a token to inspect and verify its signature.
What is a JWT?
A JSON Web Token (RFC 7519) is a compact, self-contained way to transmit claims between parties — most commonly, proof of who a user is and what they may do. Because the token is signed, an API can trust its contents without a database lookup, which makes JWTs the backbone of stateless authentication, OAuth 2.0, and OpenID Connect.
Three parts, one dot apart
- Header — metadata: the signing algorithm (alg) and token type.
- Payload — the claims: registered ones like exp and sub, plus anything the issuer adds.
- Signature — a MAC or digital signature over the first two parts, proving integrity and origin.
Each part is Base64URL-encoded — encoded, not encrypted. Anyone can read a JWT's contents; only the signature is protected.
Decoding is not verifying
The most common JWT mistake: treating a decoded payload as trustworthy. Decoding requires no key — an attacker can craft any payload they like. Trust comes only from verifying the signature against your secret (HS256) or the issuer's public key (RS256/ES256), and from checking exp, iss and aud. Server-side libraries do this for you — configure an explicit algorithm allow-list.
Keep your tokens safe
- Never put secrets or personal data in the payload — it is readable by anyone.
- Keep access-token lifetimes short and rotate with refresh tokens.
- Send tokens over HTTPS only, and store them out of reach of injected scripts.
- Reject alg: none and verify against an algorithm allow-list.
Frequently asked questions
Is it safe to paste a JWT into an online decoder?
What is the difference between decoding and verifying a JWT?
Can I edit a token and get a valid signature?
Can I decode a JWT without knowing the secret key?
What are the standard JWT claims?
Why is my token marked as expired?
What is the difference between HS256 and RS256?
What does alg: none mean, and why is it dangerous?
Can this tool decode encrypted JWTs (JWE)?
Free tools from a European software company.
- Runs in your browser
- Made & hosted in the EU
- No account needed