Paste a JSON Web Token to decode the header and payload. Data stays entirely in your browser — nothing is sent to a server.
Paste your JWT into the input field. The decoder splits the token at the two dots, base64url-decodes the header and payload sections, and displays them as readable JSON. It checks the exp claim against the current time to show whether the token is valid or expired.
A JWT (JSON Web Token) is a compact, URL-safe token used to transmit information between two parties. It has three parts separated by dots: a Base64URL-encoded header, a Base64URL-encoded payload, and a signature. JWTs are commonly used for authentication — after a user logs in, the server issues a JWT that the client sends with each subsequent request.
The header typically contains the token type (JWT) and the signing algorithm (HS256, RS256, etc.). The payload contains claims — statements about the subject, like user ID, roles, and expiry time (exp). The signature verifies the token hasn't been tampered with. It requires the secret or public key to verify — which this tool does not do.
sub (subject): who the token refers to. iss (issuer): who issued the token. exp (expiry): Unix timestamp after which the token is invalid. iat (issued at): when the token was issued. aud (audience): who the token is intended for.
The header and payload are Base64URL-encoded, not encrypted. Anyone with the token can read the claims. Never put sensitive data like passwords in a JWT payload. Use this tool only with development tokens or tokens that don't contain private information.