JWT Decode
Client-sidePopularFeaturedNewDecode JWT header and payload in your browser - inspect claims without uploading tokens.
JWT Decode shows a token’s header and payload in your browser. It does not verify signatures - treat claims as untrusted display data.
Examples
Key takeaways
- Decode header and payload locally
- Shows iat / exp / nbf as ISO times when present
- Signature is not verified
- Tokens are not uploaded
What is a JWT?
A JSON Web Token is a compact, Base64URL-encoded structure (typically header.payload.signature) used to carry claims between parties.
Decoding reads the JSON segments. Verification checks the signature with a key and algorithm. This page only decodes. Never trust exp, roles, or other claims from an unverified token in production logic.
Features
Header & payload JSON
Pretty-prints decoded segments with algorithm and claim fields.
Claim helpers
Shows issued-at, expiry, and not-before as ISO timestamps when present.
Bearer prefix tolerant
Paste Authorization: Bearer … values; the prefix is stripped.
Private by default
Tokens stay on your device - never POSTed to a server.
How it works
Paste a JWT
Use a compact token (header.payload.signature) from logs or DevTools.
Decode
Base64URL segments are decoded to JSON. Signature bytes are not verified.
Inspect claims
Review alg, sub, exp, and custom claims in the formatted output.
Example walkthroughs
Sample HS256-shaped token
Decodes a classic demo token into header, payload, and signature metadata.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyLCJleHAiOjE5MTYyMzkwMjJ9.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Issuer and audience claims
Shows iss, aud, iat, and exp style claims - still display-only; signature is not verified.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL2F1dGguZXhhbXBsZS5jb20iLCJzdWIiOiJ1c2VyXzQyIiwiYXVkIjoiYXBpLnJzcm9zaGkuZGV2IiwiaWF0IjoxNzAwMDAwMDAwLCJleHAiOjE4MDAwMDAwMDB9.demo-signature-not-verified
Common JWT registered claims
| Claim | Meaning |
|---|---|
| iss | Issuer |
| sub | Subject (who the token is about) |
| aud | Audience |
| exp | Expiration time (Unix seconds) |
| nbf | Not-before time |
| iat | Issued-at time |
| jti | JWT ID |
Use cases
Debug auth failures
Confirm expiry and audience claims when APIs return 401.
Inspect SSO cookies
Read payload fields from session JWTs during local development.
Document APIs
Show example claim shapes in internal runbooks.
Code snippets
Split a compact JWT
jsJWT Decode performs this split and pretty-prints header + payload.
const [header, payload] = token.split("."); // decode each Base64URL segment → JSON
Common errors
Invalid JWT format
Cause: The token is missing segments or is a JWE / opaque string.
Fix: Paste a compact JWS with header.payload.signature (two or three parts).
Claims look trusted but auth still fails
Cause: This tool does not verify signatures.
Fix: Validate signatures with your auth library; use decode only for inspection.
About JWT Decode
JWT Decode inspects a JSON Web Token’s header and payload so you can debug auth flows, expiry, audience, and custom claims without leaving the browser. Paste compact tokens from DevTools, logs, or Authorization headers (Bearer prefixes are stripped).
Decoding is not verification. The signature segment is shown as metadata only - never treat exp, roles, or other claims from an unverified token as authoritative in production logic. Encrypted JWTs (JWE) and opaque session strings are out of scope; this page targets compact JWS shapes.
Tokens are decoded locally. That reduces the risk of pasting production credentials into a third-party decoder, though you should still avoid shared machines and screen shares when tokens are live. Pair with JSON Formatter when you want to restyle a copied payload blob.
Best practice: confirm algorithm and issuer expectations in your auth library, not here. Use Base64 tools for ad-hoc segment experiments, and Hash Generator only when comparing digests - not as a substitute for signature verification. Prefer short-lived tokens and rotate anything that may have been exposed.
Frequently asked questions
Does this verify the signature?
No. Decoding only. Never trust claims from an unverified token in production logic.
Is my JWT uploaded?
No. Decoding runs in your browser. Still avoid pasting production secrets on shared machines.
What about encrypted JWTs (JWE)?
This tool targets compact JWS (three segments). Encrypted tokens are not supported.
Related tools
UUID Generator
Generate UUID v4 identifiers in bulk - uppercase and hyphenless options, fully client-side.
Barcode Generator
Generate Code128, EAN, UPC, Code39, and QR barcodes as PNG in your browser.
Regex Tester
Test JavaScript regular expressions against sample text - matches and groups, private in your browser.
Timestamp Converter
Convert Unix timestamps to dates and back - seconds, milliseconds, and ISO strings in your browser.
Markdown Preview
Preview Markdown as HTML in your browser - private drafts, no upload.
HTML Email Preview
Preview HTML email with estimated client compatibility - private sandbox, no upload.
More in Developer
Email Dark Mode Tester
Test HTML email dark-mode risks with light/dark preview chrome and color heuristics - private and client-side.
Gmail Email Preview
Preview HTML email with Gmail-focused estimated compatibility checks - private browser sandbox.
Outlook Email Preview
Preview HTML email with Outlook-focused estimated warnings for Word-based rendering risks.
Responsive Email Tester
Test HTML email at common device widths with estimated media-query guidance - private browser sandbox.
Popular tools
JSON Formatter
Format, beautify, and minify JSON in your browser. Free, private, and instant - no upload to a server.
JSON Validator
Validate JSON instantly in your browser. See type, size, and node counts - or exact parse errors with line and column.
JSON Viewer
Explore JSON as an interactive tree with paths, types, and expandable nodes - all processed locally in your browser.
Base64 Encode / Decode
Encode UTF-8 text to Base64 or decode Base64 back to text - instantly in your browser.
Newest tools
Gradient Generator
Build linear and radial CSS gradients with Tailwind output - private and client-side.
Case Converter
Convert text between UPPERCASE, lowercase, Title Case, camelCase, snake_case, and more.
Word Counter
Count words, characters, sentences, and paragraphs with reading time - live and private.
Text Diff
Compare two texts line by line - see added and removed lines with a unified-style diff.
Explore more
Guides & articles
How to decode a JWT safely (without trusting claims)
Inspect JWT header and payload in your browser. Learn why decoding is not verification, and which claims matter when debugging auth.
Keyboard shortcuts
Common keyboard shortcuts for Toolverse by RS workspaces - format, copy, reset, and global search.
Privacy model (client-side tools)
How Toolverse by RS handles data: browser-first processing, what we do not upload, and how that claim maps to product behavior.
JWT inspection notes on the RS Roshi blog
Practical write-ups around jwt inspection.
Platform documentation
Shortcuts, limits, and how client-side tools work.