Hack the Hydra

JWT decoder

Paste a JSON Web Token (with or without "Bearer ") to see its header and payload as formatted JSON. Timestamps such as exp and iat are shown as UTC dates, and the tool tells you whether the token has expired.

🔒 Private by design: the conversion runs in this browser tab. Nothing is uploaded.

JWT decoder is a free online tool by Hack the Hydra. Decode a JWT to read its header and payload, with iat, nbf and exp shown as dates and an expired / not-yet-valid check. Runs entirely in your browser, so tokens are never sent anywhere.

100% freeNo upload: runs in your browserNo sign-up
JWT decoder: the tool with a sample file converted

What a JWT contains

A JWT has three parts separated by dots: a header (the signing algorithm, for example HS256 or RS256), a payload with the claims (user id in sub, expiry in exp, issuer in iss, audience in aud...) and a signature. The header and payload are only base64url-encoded, not encrypted: anyone who has the token can read them, which is exactly what this tool does.

Decoding is not verifying

This page does not check the signature, because that needs the secret (HS256) or the issuer's public key (RS256, ES256). A decoded token can therefore be forged. Your server must always verify the signature and the exp, nbf, iss and aud claims with a JWT library before trusting anything inside. A token with "alg": "none" has no signature at all and must be rejected.

Why decode locally

Access tokens are credentials: pasting a live token into a website that sends it to a server can leak access to your account or API. Here the decoding is plain JavaScript in your tab, and nothing is uploaded or logged. Encrypted tokens (JWE, five parts) cannot be read without the key, and the tool says so.

Example

The public sample token from the JWT documentation. The iat timestamp is shown as a date; the signature is reported but not verified.

Input

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Output

Header:
{
  "alg": "HS256",
  "typ": "JWT"
}

Payload:
{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022
}

Dates (UTC):
iat: 2018-01-18T01:30:22Z

Signature: 43 characters, NOT verified

How to use

  1. Type or paste your text in the box above.
  2. The result updates as you type; change the options to switch mode.
  3. Copy the result or download it.

FAQ

Is it safe to paste a production token?

Nothing leaves your browser, so the page does not leak it. Still, treat tokens like passwords: prefer expired or test tokens when sharing screenshots.

Why does it say EXPIRED?

The exp claim is a Unix time in seconds. If it is earlier than your computer clock, the token is expired and a correct server will refuse it.

Can it check the signature?

No. Verification needs the secret or public key and should be done by your backend with a maintained JWT library.

What do iat, nbf and exp mean?

iat is when the token was issued, nbf is the time before which it must not be accepted, and exp is when it expires. All three are Unix timestamps in seconds.

Guides

More free converters

PDF to Markdown converterOCR PDF: scanned PDF to textImage to text (OCR)Word (DOCX) to Markdown converterExcel & CSV to Markdown tablesHTML to Markdown converterPowerPoint (PPTX) to Markdown converterJSON to Markdown tablePDF to text converterExcel to JSON converterMarkdown to HTML converterMerge PDF filesSplit PDF: extract pagesRotate PDFJPG to PDF converterPDF to JPG converterImage converter: PNG, JPG, WebPCompress image: JPG and WebPQR code generatorWord counterCase converterJSON formatter and validatorBase64 encode and decodeURL encoder and decoderUUID v4 generatorStrong password generatorLorem ipsum generatorJSON to CSV converterRemove duplicate linesUnix timestamp converterJSON to YAML converterText diff checkerImage resizerPercentage calculatorAge calculatorHash generator (SHA-256, SHA-1, SHA-512)Color converter: HEX, RGB, HSLDays between dates calculatorYAML to JSON converterUnit converterBinary, hex, decimal and octal converterRoman numeral converterRegex testerCron expression explainerPDF to Markdown for ChatGPTPDF to Markdown for ClaudePDF to Markdown for RAG pipelinesPDF to Markdown for ObsidianPDF to Notion (via Markdown)Screenshot to textFrench OCR: image to textCSV to Markdown tableGoogle Docs to MarkdownJPG / JPEG to text (OCR)PNG to text (OCR)CSV to JSON converterPNG to JPG converterJPG to PNG converterWebP to PNG converter