To fully understand how JWTs work, it's important to understand the decoding process.
A JWT Decoder reveals the information embedded within a JWT, allowing you to check the integrity and trustworthiness of the data it contains.
This decoding process is critical for verifying whether the token has been altered and whether it comes from a trusted source.
A JWT consists of three parts:
When a JWT is decoded, the header and payload are revealed as Base64Url-encoded JSON objects.
You don’t need the secret key to decode these parts.
However, to verify the signature and confirm that the token is valid and hasn't been tampered with, the secret key is required.
When a user logs into an application, the server generates a JWT specifically for that user. This JWT includes details like the user ID and roles, and is sent to the client (browser, mobile app, etc.). The client stores the token in localStorage or cookies.
For future requests, the client sends the JWT back to the server using the HTTP Authorization header. The server decodes the token to verify the user’s identity and permissions. Thanks to this, the server doesn't have to query the database on every request, improving performance.
For example, when a user wants to access a protected page, the server checks the JWT to determine whether the user has permission. JWT decoding speeds up authentication and reduces unnecessary database load.
To understand how a JWT decoder works, let’s look at the components of a JWT:
This part contains information about the token itself — usually the type ("JWT") and the signing algorithm ("HS256", "RS256", etc.).
This tells the recipient how to process the token.
This is where the actual data lives. It contains claims in JSON format — statements about the user or other entities.
For example:
The signature ensures security. It confirms that the token is authentic and hasn’t been changed. The signature is created by combining the header and payload, then encrypting them using a secret key and a specific algorithm.
To make decoding easier, many open-source libraries and tools are available. Here are some popular ones:
It shows the 3 parts of a JWT:
Header: The algorithm and token type
Payload: User information, roles, expiration time
Signature: The signature itself (hidden, not verified)
No, it only visualizes the token. It does not verify whether the token is valid or whether the signature is correct.
Yes. This tool runs entirely in your browser. No data is sent to any server, and the contents of your token stay completely local.