Developer Tools guide

JWT Tokens Explained — and Why Decoding Isn't Verifying

What's inside a JWT, how to read the payload safely, and the security pitfall that decoding glosses over.

3 min read Updated 2026-06-23 All Developer Tools
Written by Priya Sharma, lead editor, toolstop. Reviewed by Arjun Mehta.

JWTs are everywhere in modern authentication — and most developers can decode one but couldn't tell you whether the signature checks out. This guide closes that gap.

The three parts

Header.Payload.Signature, each base64url-encoded and separated by dots. Decoding the first two parts is trivial — they're just base64 of JSON.

Decoding isn't verifying

Anyone can decode a JWT and read its claims. Only the holder of the signing key can verify the signature. Never trust JWT contents without verifying first.

Common claims

iss (issuer), sub (subject), exp (expiration), iat (issued-at), aud (audience). Custom claims live alongside these in the payload.

Frequently asked questions

No. The payload is base64-encoded, not encrypted. Anyone with the token can read it. Use JWE if you need encryption.

Keep exploring