Developer Tools

JWT Generator

Generate signed JSON Web Tokens (JWT) with HS256 using the WebCrypto API, right in your browser

Security notice: Never include sensitive data in a JWT payload. JWTs are base64url-encoded, not encrypted — anyone can decode them. All signing happens locally in your browser.

Header

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

Payload

Quick-add standard claims:

Signature

Use a strong, random secret of at least 32 characters for HS256.

HMACSHA256(
  base64UrlEncode(header) + "." +
  base64UrlEncode(payload),
  your-secret-key
)

Generated Token

Click "Generate JWT" to create a token

About JWT

  • JWTs consist of three Base64URL-encoded parts separated by dots.
  • HS256 uses a shared secret — keep it safe on your server.
  • The payload is readable by anyone — do not store passwords or PII.
  • Always set an exp claim to limit token lifetime.

JWT Generator — Create Signed JSON Web Tokens

Generate signed JSON Web Tokens (JWT) with HS256 using the Web Crypto API, right in your browser. Choose your payload claims, set expiry, and get a signed token — no server needed.

JWT structure explained

Header

Algorithm and token type. Example: { "alg": "HS256", "typ": "JWT" }

Payload

Claims about the user or session. Standard claims: sub, iat, exp, iss. You can add custom fields.

Signature

HMAC-SHA256 of base64(header).base64(payload) signed with your secret key. Prevents tampering.

Full token

Three Base64URL-encoded parts joined by dots: header.payload.signature.

FAQ

What is a JWT?

A JSON Web Token is a compact, URL-safe token for securely transmitting claims between parties. It's widely used for authentication — the server issues a JWT on login, and the client includes it in subsequent requests.

Is JWT the same as an API key?

No. API keys are opaque random strings. JWTs are self-contained and carry verifiable claims (user ID, roles, expiry) without a database lookup on each request.

Is it safe to test JWTs in a browser tool?

Yes for testing. Never use your real production secret key in any online tool. Use a separate test key when experimenting.

Don't see what you need?

We build free tools based on community feedback. If there's a utility that would improve your workflow, suggest it today!