Developer Tools

JWT Decoder

Decode and inspect JSON Web Tokens. All processing happens in your browser.

Runs in your browser

JWT Token
. .

Header

                            
Payload
EXPIRED Valid

                                
                                
Issued at
Expires at
Signature

Signature cannot be verified client-side. Verification requires the secret key or public key on a server.

Token Timeline

Issued
Now
Expires

What is the Jwt Decoder?

The JWT Decoder lets you instantly decode and inspect any JSON Web Token (JWT) without needing a private key. JWTs are the standard authentication token format used by REST APIs, OAuth 2.0 systems, and single sign-on (SSO) providers. They consist of three Base64URL-encoded parts - Header, Payload, and Signature - separated by dots.

Decoding a JWT reveals the claims inside: user ID, email, roles, expiration time (exp), issued-at time (iat), and any custom claims your application adds. The signature section is also decoded and displayed, though verifying it requires the secret key (which this client-side tool does not do).

Common use cases: debugging authentication issues, understanding what claims your identity provider sends, checking token expiration, and inspecting third-party API tokens during integration development.

How to use the Jwt Decoder

Paste your JWT token (the full string including all three dot-separated sections) into the input. The decoder immediately splits it into Header, Payload, and Signature, decodes each section, and displays the JSON in a formatted, readable structure.

The expiry indicator shows whether the token is still valid based on the exp claim. Hover over any timestamp claim to see it converted to a human-readable date and time. Click any value to copy it.

Frequently asked questions

JWT (JSON Web Token) is a compact, URL-safe token format widely used for authentication. It has three parts - header, payload and signature - separated by dots.
No. Decoding only reveals the header and payload, which are base64-encoded but not encrypted. Verification requires the secret or public key the token was signed with - never do that in a browser-based tool.
The decoder runs entirely in your browser and never sends the token anywhere. Still, treat any active token as a credential and rotate it if you suspect it has been exposed.
The "exp" claim is the Unix timestamp at which the token expires. After that moment, properly configured servers should reject the token.
Common causes are an expired "exp" claim, mismatched "aud" or "iss" claims, clock skew between server and client, or a signature mismatch from using the wrong key.