JWT Encode Online — HS256, RS256, ES256 & More
Sign compact JWTs from header and payload JSON that you can edit. It supports none, HMAC, RSA, RSA-PSS, ECDSA, and EdDSA, with live debugging in the style of jwt.io. The algorithms come as HS, RS, PS, and ES variants at 256, 384, or 512 bits, plus Ed25519. Pair it with JWT Decode to inspect the result.
How JWT encode works
Edit the header, payload, and signing material, and the encoded JWT updates automatically (debounced). The editors start empty, so use **Load sample** or pick an algorithm to load a demo fixture. Choose the algorithm from the toolbar or edit alg in the header JSON. iat is always set to now on encode. Use the Expiration dropdown to set exp (15m, 1h, 24h), or leave None to keep or omit exp in the payload JSON. HMAC uses a secret (optional base64url). RSA, RSA-PSS, ECDSA, and EdDSA use a PEM or JWK private key. alg=none produces an unsecured token. Encoding is not verification, so use jwt-decode to inspect.
Options
- Expiration
- A shortcut for the exp claim. None leaves your payload as it is, or without exp. 15m, 1h, and 24h set exp relative to the iat, which is refreshed on each encode, and they overwrite any exp already in the JSON.
Examples
Basic claims
Claims
Result
Inspect after encode
Claims
Result
Related tools
Inspect tokens with jwt-decode. Review a JWKS locally with inspect-jwks. Encoding here does not replace a verified authentication flow.
JWT encode FAQ
Multiple algorithms (the jwt.io set)
Does this verify JWTs?
No. It signs tokens locally. Use jwt-decode to inspect and verify signatures inline, or jwt-verify for JWKS and claim policies.
Which algorithms are supported?
none, HS256/384/512, RS256/384/512, PS256/384/512, ES256/384/512, and EdDSA (Ed25519 only). Remote JWKS and full exp/aud/iss validation stay on jwt-verify.
Is this a secure JWT for production?
No. This is a local helper for fixtures and debugging. It makes no claim that tokens are “secure” or that it replaces production authentication.
Encoding
Encode or decode Base64, URLs, HTML entities and JWTs, and generate hashes and HMACs in your browser.
Explore other tool categories
- Minify
Minify JavaScript, CSS, HTML, JSON, XML, SVG and other formats to cut the bytes you ship, before gzip or a CDN.
- Unminify
Make minified code readable again to debug or review it. Unminify JavaScript, CSS, TypeScript, SCSS, LESS, SQL, YAML and other formats.
- Conversion
Convert data between JSON, YAML, XML, CSV, TOML and other formats locally, with no upload to a server.
- Serialization
Serialize and deserialize PHP data structures beside JSON workflows.
- JSON Tools
Validate, format, repair, compare and explore JSON in your browser, alongside the JSON minifier and converters.
- SVG Tools
Preview, optimize with SVGO, export as a data URI, resize, beautify, convert to JSX and validate SVG in your browser.
- Beautify
Make code readable with consistent indentation. Beautify JavaScript, CSS, TypeScript, SCSS, LESS, Markdown, GraphQL, SQL, YAML and more in your browser.
- CSS preprocessors
Compile SCSS or LESS to standard CSS in your browser. Pair it with beautify or minify to handle a whole stylesheet.
- Color & CSS Tools
Check WCAG contrast, convert CSS colors and units, and generate shades, border-radius and box-shadow code in your browser.
- DevOps & Infra
Terraform HCL format/validate/minify, Dockerfile format & lint, Docker Compose and .env validation.
- CI/CD
Format GitHub Actions and GitLab CI YAML and check the structure of workflows and jobs in your browser.
- Logs & observability
Format, filter and validate JSON and NDJSON logs, and turn Nginx or Apache access logs into CSV or TSV.
- Kubernetes
Multi-doc manifests, structural validate, Ingress/Deployment starters, and Helm values formatting.
- Networking / IP
Subnet calculator, IP converter, range to CIDR, CIDR summarize and IP-in-subnet checks for IPv4 and IPv6, in your browser.
- Security & tokens
Inspect JWKS, verify JWTs, decode X.509 certificates, convert PEM and JWK, scan text for secrets and hash with bcrypt in your browser.
- API & schemas
Format, validate, lint and convert OpenAPI, JSON Schema and GraphQL SDL in your browser.
- HTTP Tools
Paste cURL commands, HTTP messages, URLs, HAR files and Cookie or Set-Cookie headers to format and inspect them. Nothing is sent.
- SEO / Web Tools
Generate meta tags, Open Graph, Twitter Card, robots.txt, sitemap.xml and JSON-LD in your browser. Previews come from your input, and your site is never fetched.
- Developer utilities
Timestamps, UUID, ULID, Nanoid, cron, passwords, regex, slugs, number bases, letter case, text diff, chmod and Lorem Ipsum, all in your browser.
- Text & Markdown
Count words, build Markdown tables of contents, turn CSV into Markdown tables and sort or deduplicate lines in your browser.
- AI & LLM
Count tokens, estimate API costs, check context-window fit, convert JSON to TOON and analyze prompts, all in your browser.
- Test Data
Dummy names, emails, phone numbers, addresses, dates, IBANs, card numbers and JSON, CSV or SQL rows for fixtures and database seeds. Everything is generated in your browser.
- Barcode labels
Draw Code 128, EAN-13 and UPC-A labels and static QR codes in your browser, then download PNG or SVG. This is not a GS1 lookup.