Back to Tools & Utilities

Developer Tools

JWT Decoder, Debugger & Token Inspector

Decode and inspect JWT tokens securely in your browser. View token headers, payload claims, expiration timestamps, issued dates, algorithms, and signature data without sending information to external servers.

JWT Header Inspection
Payload Claims Viewer
Expiration Status
Issued At Analysis
Not Before Validation
Signature Viewer
Local Processing
Zero Tracking

Sample Tokens — click to load

Encoded JWT Token

100% Client-Side: All decoding runs in your browser using native JavaScript. No tokens, credentials, or headers leave your device.

Decoded Token

Header
// Awaiting token…
Payload
// Awaiting token…
Signature
// Awaiting token…

Signature is displayed but not verified.

Verification requires the original secret or public key used to sign the token.


What Is a JWT (JSON Web Token)?

A JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact, self-contained way to transmit information between parties as a JSON object. JWTs are digitally signed — either using a secret key (HMAC algorithms like HS256) or a public/private key pair (RSA or ECDSA) — which means the information can be verified and trusted.

JWTs are used in authentication (proving who you are) and authorization (proving what you're allowed to do). After a user logs in, the server issues a JWT. The client stores this token and sends it with subsequent requests in the Authorization header. The server validates the token's signature and reads the claims to determine access rights — without needing to query the database on every request.

JWT Structure: Header, Payload, Signature

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Header

Algorithm & token type

Payload

Claims & user data

Signature

Cryptographic verification

Common JWT Claims Explained

ClaimFull NameTypeDescription
subSubjectstringIdentifies the principal that is the subject of the JWT — typically a user ID.
issIssuerstringIdentifies the authentication server that issued the token. Usually a URL (e.g., https://auth.example.com).
audAudiencestringIdentifies the recipients the JWT is intended for. Servers reject tokens where they're not in the audience.
expExpiration TimeintegerUnix timestamp after which the token must not be accepted. Essential for security — prevents token replay.
iatIssued AtintegerUnix timestamp when the token was issued. Useful for determining token age and time-based policies.
nbfNot BeforeintegerUnix timestamp before which the token must not be accepted. Used for tokens issued in advance.
jtiJWT IDstringUnique identifier for the JWT. Enables token blacklisting and prevents replay attacks.
algAlgorithmstringIn the header — specifies the algorithm used to sign the token. E.g., HS256, RS256, ES256.
kidKey IDstringIn the header — identifies which key from a JWKS (JSON Web Key Set) was used to sign the token.

Security Reminder

JWT payloads are Base64URL encoded, not encrypted. Anyone with access to a JWT can read its contents simply by decoding it — exactly as this tool does. Never store passwords, API secrets, private keys, internal system paths, or sensitive personal information inside JWT payload claims. If a JWT is intercepted or leaked, all its claims are immediately readable without any key or password.

For sensitive data transmission, use JWE (JSON Web Encryption) or ensure tokens are only transmitted over TLS/HTTPS and expire quickly (short exp values).

Frequently Asked Questions