Converters & Dev

JWT Decoder

Paste a JSON web token and read what is inside it — the algorithm, the claims, who issued it and when it expires. The token stays in your browser.

Your token

Inside the token

Algorithm
—
Issued
—
Expires
—
State
—

What is inside a JWT

A JSON web token is three Base64url strings joined by dots: a header saying how it was signed, a payload of claims, and a signature. The first two are only encoded, not encrypted — anyone holding the token can read them, which is exactly what this page does.

The usual claims

How to use the JWT decoder

  1. Paste the token. A leading "Bearer " is ignored, so you can paste straight from a header.
  2. Read the claims on the right, with the issued and expiry times shown as real dates.
  3. Check the state line to see whether it has expired — the usual reason an API call comes back 401.

What this does not do

Common problems it answers

Frequently asked questions

Is it safe to decode a JWT online?

This page decodes the token inside your browser and sends nothing anywhere, so it is as safe as opening the file locally. Even so, a live token is a credential — prefer a test token when you can.

Can you decode a JWT without the secret key?

Yes. The header and payload are only Base64url encoded, not encrypted. The secret is needed to verify the signature, not to read the contents.

Why does my token say it is expired?

The exp claim is a Unix timestamp. If it is in the past, every properly written server will reject the token and you need to log in again or refresh it.