100% Client-Side • No Data Leaves Your Browser
JWT Decoder
Paste a JSON Web Token to instantly decode and inspect its header, payload, and signature. Expiration check, timestamp conversion, and claim explanations included.
Paste JWT Token
Standard JWT Claims (RFC 7519)
| Claim | Full Name | Description |
|---|---|---|
| iss | Issuer | Identifies who issued the JWT (e.g., your auth server URL) |
| sub | Subject | Identifies the principal subject (usually a user ID) |
| aud | Audience | Identifies the recipients the JWT is intended for |
| exp | Expiration Time | Unix timestamp after which the JWT must not be accepted |
| nbf | Not Before | Unix timestamp before which the JWT must not be accepted |
| iat | Issued At | Unix timestamp when the JWT was issued |
| jti | JWT ID | Unique identifier to prevent token replay attacks |
Frequently Asked Questions
A JSON Web Token (JWT, pronounced "jot") is a compact, URL-safe token format defined by RFC 7519. It consists of three Base64URL-encoded parts separated by dots:
header.payload.signature. The header specifies the signing algorithm (e.g., HS256, RS256). The payload contains claims — key-value pairs carrying information like user ID, roles, and expiration time. The signature ensures the token hasn't been tampered with. JWTs are widely used for authentication (after login, the server issues a JWT that the client sends with each request) and authorization (the token's claims determine what the user can access).No. JWT signature verification requires the signing key — either a shared secret (HMAC algorithms like HS256) or a public key (asymmetric algorithms like RS256 or ES256). Since this is a client-side tool, we don't have access to your keys. We can decode the token (show you what's inside) but not verify it (confirm it's authentic and untampered). For signature verification, use server-side libraries like
jsonwebtoken (Node.js), PyJWT (Python), or java-jwt (Java).This tool runs 100% in your browser — no data is sent to any server. However, as a general security practice, avoid pasting production tokens that contain sensitive information into online tools you don't trust. For production JWTs, you can decode them directly in your browser console:
JSON.parse(atob(token.split('.')[1])). Development and staging tokens are safe to decode anywhere since they contain test data.HS256 (HMAC-SHA256) is a symmetric algorithm — the same secret key is used to both sign and verify the token. Both the issuer and the verifier must share the secret. RS256 (RSA-SHA256) is an asymmetric algorithm — the issuer signs with a private key, and anyone can verify with the corresponding public key. RS256 is preferred when multiple services need to verify tokens without sharing secrets (e.g., microservices architecture, third-party integrations).
The
exp (expiration) claim is a Unix timestamp (seconds since January 1, 1970 UTC) that defines when the token expires. After this time, the token should be rejected by the server. Short-lived tokens (e.g., 15 minutes) reduce the window of misuse if a token is compromised. Pair them with refresh tokens for a good balance of security and user experience. If a JWT doesn't have an exp claim, it never expires — which is generally a security risk.Base64URL is a URL-safe variant of Base64 encoding defined in RFC 4648. It replaces
+ with - and / with _, and omits the = padding characters. This makes the output safe to use in URLs, HTTP headers, and cookies without percent-encoding. JWTs use Base64URL (not standard Base64) for all three parts. If you try to decode a JWT part with standard atob(), you may need to first replace - with + and _ with /, and add padding.Deep Dive
JWT Tokens Explained: Structure, Security & Common Mistakes →
1,500+ word guide covering JWT structure, signing algorithms, security best practices, and common pitfalls.
Related Tools
Developer Tool
Base64 Encoder & Decoder
Encode and decode Base64 strings with auto-detect, file support, and MIME wrapping
Developer Tool
JSON Formatter
Format, validate, and beautify JSON with syntax highlighting and error detection
Developer Tool
Hash Generator
Generate MD5, SHA-1, SHA-256, SHA-512 hashes from text or files
Developer Tool
Unix Timestamp Converter
Convert Unix timestamps to human-readable dates and vice versa