JWT Payload Viewer

View the JWT payload and its claims such as iss, aud and sub. Paste a token to inspect who issued it, who it is for and what scopes it carries.

Part of the free JWT Decoder. Runs in your browser — nothing is uploaded.

JWT Payload Viewer

The payload carries the claims: who the token is about (sub), who issued it (iss), who it is meant for (aud) and any custom data. Paste a token to inspect each claim when debugging an authorization failure.

Worked example: Issuer, audience and subject claims

JWT

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL2F1dGguZXhhbXBsZS5jb20iLCJhdWQiOiJhcGkuZXhhbXBsZS5jb20iLCJzdWIiOiJ1c2VyXzlmMiIsInNjb3BlIjoicmVhZCB3cml0ZSIsImlhdCI6MTc2NzIyNTYwMCwiZXhwIjoxNzY3MjI5MjAwfQ.c2lnbmF0dXJl

Decoded payload

// HEADER
{
  "alg": "HS256",
  "typ": "JWT"
}

// PAYLOAD
{
  "iss": "https://auth.example.com",
  "aud": "api.example.com",
  "sub": "user_9f2",
  "scope": "read write",
  "iat": 1767225600,
  "exp": 1767229200
}

// CLAIM TIMES (UTC)
iat: 2026-01-01 00:00:00 UTC
exp: 2026-01-01 01:00:00 UTC

Practical tip

A 401 with a seemingly valid token is often an aud or iss mismatch. Compare these two claims against your API configuration first.

How to use this JWT Decoder

  1. 1Use the live tool above — it runs entirely in your browser and never uploads your data.
  2. 2Paste the sample from the worked example, or use your own input.
  3. 3Copy the result, then adapt the same steps in your editor, script, or pipeline.

JWT Payload Viewer FAQs

What is the difference between iss, sub and aud?

iss is the issuer that created the token, sub is the subject it describes (usually a user ID), and aud is the audience it is intended for.

Can I add custom claims?

Yes. Any extra key in the payload is a custom claim, for example roles or tenant_id. Keep them small, because the token is sent with every request.

More JWT Decoder pages

Open the full JWT Decoder tool →