JWT decoder & verifier
Paste a JSON Web Token to see its header, payload, expiry and claims — with optional HMAC / RSA / ECDSA signature verification. All client-side. Nothing leaves your browser.
100% client-side • Secrets & keys stay in your browser • No registration
What is a JWT?
A JSON Web Token is a compact, URL-safe credential made of three base64url-encoded parts separated by dots: a header, a payload, and a signature.
The header and payload are not encrypted — they are plain JSON anyone can read. The signature only proves the token has not been tampered with by a party that holds the key.
This decoder splits the token, pretty-prints the JSON, annotates standard claims (iss, sub, exp…), and optionally verifies the signature with the browser's SubtleCrypto API.

Decode a JSON Web Token
Paste a token — the header, payload and claims decode as you type
Pasted tokens and secrets stay in your browser — nothing is sent to our servers.
Decoded header appears here.
Decoded payload appears here.
Debugging auth on real sites?
Scrappey returns clean HTML, JSON, and full session context from any URL — inspect the tokens your scrapers receive.
Why use Scrappey's JWT decoder?
Built for developers debugging auth and reverse-engineering sessions
Live Decoding
Header, payload and claims decode the instant you paste — no Decode button, no roundtrip.
100% Client-Side
Tokens, secrets and keys are processed entirely in your browser with SubtleCrypto. Nothing is uploaded.
Signature Verification
Verify HS256/384/512, RS*, PS*, and ES* signatures locally against a secret or a PEM public key.
Expiry & Age
See exp / iat / nbf rendered as human time, with an expired-N-ago or in-N badge at a glance.
Claim Annotations
Standard claims (iss, sub, aud, jti…) are labelled; custom claims pass through unchanged.
Pretty-Printed JSON
Header and payload are formatted and one click away from your clipboard.
JWT decoder FAQ
What is a JWT?
A JSON Web Token is a compact, URL-safe token with three base64url parts — header, payload, and signature — used to carry claims between parties, most commonly for authentication and authorisation.
Are JWTs encrypted?
No. A standard signed JWT (JWS) is not encrypted — the header and payload are base64url-encoded plaintext that anyone can decode. The signature only proves integrity and authenticity, not confidentiality. Never put secrets in a JWT payload.
Does this tool send my token anywhere?
No. Decoding and signature verification run entirely in your browser using built-in APIs. Your token, secret, and keys never leave the page.
What's the difference between HS256 and RS256?
HS256 is a symmetric HMAC algorithm — the same secret signs and verifies. RS256 is asymmetric — a private key signs and the corresponding public key verifies, so you can hand out the public key without exposing signing power.
Why does my JWT show "Invalid signature" when I know it is valid?
Usually you pasted the wrong secret or public key, the key format is off (HMAC expects the raw secret, asymmetric expects a PEM SPKI public key), or the token uses an algorithm this tool does not support. Double-check the alg field in the header.
Integrations
n8n
Automate workflows visually. Streamline data collection processes.
n8n Template
Pre-built template for modern websites. Simplifies Scrappey integration.
RapidAPI
Access via API marketplace. Easy integration with comprehensive docs.
Apify
Scalable actor-based automation. Reliable browser rendering.
MCP Server
AI-powered browser automation. Intelligent session management.
Scrappey CLI
Scrape from your terminal. One command, pipeable output, CI-ready.
Claude Code Skill
Portable skill for Claude Code + Codex. Browser-backed data access on demand.
LangChain
LangChain connector — clean web data for any chain or agent.
LlamaIndex
LlamaIndex reader — load modern web pages straight into RAG.
Zapier
Connect with 7,000+ apps. Automate workflows easily.
Make
Visual workflow automation. Connect with 1,000+ apps easily.
Start building with Scrappey
Try it free. No subscription, no credit card, instant setup — your trial is waiting.