Util Tools logo Util Tools
Developer Tools

Free JWT Decoder Online

Decode and inspect JSON Web Tokens entirely in your browser. View the header, payload, and signature, check expiration, and verify HS256/RS256 signatures locally - nothing is sent to a server.

  • 100% free
  • No signup
  • Runs in your browser

JWT structure

header.payload.signature

  • Header - token type and signing algorithm.
  • Payload - the claims (data), base64url-encoded, not encrypted.
  • Signature - verifies the token was not tampered with.
Guide

What is a JWT?

A JSON Web Token (JWT) is a compact, URL-safe token used to carry claims between parties, most often for authentication and authorization. It has three Base64url-encoded parts separated by dots: a header (the algorithm and token type), a payload (the claims, such as user ID and expiry), and a signature that proves the token has not been altered.

Decoding is not the same as decryption

The header and payload of a standard JWT are only Base64url-encoded, not encrypted, so anyone can read them. This tool decodes them for inspection. The important consequence: never put secrets in a JWT payload, because it is effectively public. What the signature provides is integrity, the assurance that the contents were not tampered with, not confidentiality.

Checking expiry and the alg field

The payload usually includes an exp claim, a Unix timestamp after which the token is invalid; this decoder shows whether the token has expired. The header's alg field names the signing algorithm, such as HS256 (a shared secret) or RS256 (a public/private key pair). Verifying that alg is what you expect is an important security check, since attacks have exploited servers that trusted the token's own stated algorithm.

Is it safe to decode a JWT here?

Yes. This decoder runs entirely in your browser, and signature verification (HS256/RS256) is performed locally. Nothing is transmitted to a server. Still, treat any production token as a live credential: decode it to debug, but do not paste tokens into untrusted tools, and rotate any token you suspect has been exposed.

Last updated: July 2026

Frequently Asked Questions

What is a JWT?
A JWT (JSON Web Token) is a compact, URL-safe token format used for authentication and authorization. It consists of three base64url-encoded parts separated by dots: header, payload, and signature.
Is it safe to decode a JWT online?
Decoding (reading) a JWT is safe since the header and payload are not encrypted, only encoded - anyone with the token can already read this data. However, never paste a private signing key or production secret into any online tool.
How do I check if a JWT is expired?
Decode the token and check the exp (expiration) claim in the payload. It is a Unix timestamp. This tool automatically converts it to a readable date and shows whether the token is currently valid or expired.
What is the difference between JWT encoding and encryption?
JWTs are encoded (base64url) and signed, not encrypted. Anyone can decode and read the contents. The signature only verifies the token hasn’t been tampered with - it does not hide the data. Use JWE (JSON Web Encryption) if you need to hide the payload contents.
What does the alg field mean?
The alg field in the JWT header specifies which algorithm was used to sign the token. Common values are HS256 (HMAC with SHA-256, symmetric), RS256 (RSA with SHA-256, asymmetric), and ES256 (ECDSA with SHA-256).