JWT Signer Online
Create and sign a JWT (HS256/384/512) from a payload and secret with Web Crypto, right in your browser. Your secret stays local.
Your payload and secret are signed locally in your browser with the Web Crypto API and nothing is uploaded, but treat this as a testing tool and avoid pasting real production secrets or tokens.
Need to inspect a token? Try the JWT Decoder.
About JWT Signer
This jwt signer creates and signs a JSON Web Token from a JSON payload and a shared secret using the HMAC algorithms HS256, HS384, and HS512. Paste your claims, choose an algorithm, and the tool builds the header, base64url-encodes everything, and signs it with the Web Crypto API to produce a complete token. It is handy when you need to sign jwt online for local testing, mock an auth flow, or generate a jwt to verify how your backend validates HMAC signatures. Developers, QA engineers, and API testers can quickly create a jwt token without wiring up a signing library. Everything runs locally in your browser, so the payload and secret are processed on your device and nothing is uploaded to a server.
Features
- Signs tokens with HS256, HS384, or HS512 HMAC algorithms
- Builds the JWT header and base64url encoding automatically
- Uses the browser's native Web Crypto API to compute signatures
- Validates that your payload is well-formed JSON before signing
- Lets you set any shared secret for the HMAC signature
- Updates the signed token live as you edit the payload or secret
- Outputs a complete, ready-to-use header.payload.signature token
- Download the signed token as a token.jwt file
How to use the JWT Signer
- Paste your claims as JSON into the Payload (JSON) input box.
- Pick the signing algorithm with the HS256 / HS384 / HS512 toggle.
- Type your shared secret into the Secret field.
- Copy the signed token from the Signed JWT (HMAC) output, or download it as token.jwt.
Example
Input
{
"sub": "1234567890",
"name": "Ada",
"iat": 1516239022
}
Output
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFkYSIsImlhdCI6MTUxNjIzOTAyMn0.0J9-Vq0Qb8m8Pq3qkFf3kYwQ5kqS1q3y6n8m9Y4hXyU
Payload signed with HS256 and the secret "your-256-bit-secret" (signature shown is illustrative).
Common errors & troubleshooting
- The signer shows a JSON error and produces no token. — Make sure the payload is valid JSON, for example wrap string values in double quotes and remove trailing commas.
- Signing fails because no secret is set. — Enter a value in the Secret field; an HMAC token cannot be signed without a shared secret.
- Your backend rejects the token as having an invalid signature. — Confirm the verifier uses the exact same secret and algorithm (HS256/384/512) you selected when signing.
- You expected an RS256 or ES256 token. — This tool signs only HMAC algorithms; use HS256, HS384, or HS512, which share one secret rather than a public/private key pair.
Frequently asked questions
- What is the JWT Signer and what does it do?
- The JWT Signer turns a JSON payload and a shared secret into a complete, signed JSON Web Token using the HMAC algorithms HS256, HS384, or HS512.
- How do I create a JWT from a payload?
- Paste your claims as JSON, choose an algorithm, and enter a secret; the tool encodes the header and payload and appends the HMAC signature to produce a complete token.
- What algorithms does the JWT Signer support?
- It signs tokens with the HMAC algorithms HS256, HS384, and HS512, which all use a single shared secret rather than a public/private key pair.
- Can I verify or decode the token the JWT Signer produces?
- This tool only signs tokens, but you can paste the result into the JWT Decoder to inspect the header and payload.
- Does the JWT Signer send my secret or payload anywhere?
- No. The JWT Signer runs entirely in your browser using the Web Crypto API, so your secret and payload are processed locally and never leave your device.
- Why does my signed token differ from another tool's output?
- Signatures change with the secret and algorithm; identical payloads only yield identical tokens when the same secret and HMAC algorithm are used.
Related tools
All ArrayKit tools