Base64 Encoding Without Padding
Encode to Base64 without = padding characters. See when padding is optional, how to add it back, and why JWTs omit it.
Part of the free Base64 Encoder. Runs in your browser — nothing is uploaded.
Base64 Encoding Without Padding
The = characters at the end of Base64 only signal how many bytes are in the last group. Many formats, such as JWT and some URLs, leave them off because the decoder can infer the length.
Worked example: With and without padding
Text
ab
Both forms
padded: YWI= unpadded: YWI
Practical tip
To restore padding before decoding, append = until the string length is a multiple of 4. Some decoders require this step.
How to use this Base64 Encoder
- 1Use the live tool above — it runs entirely in your browser and never uploads your data.
- 2Paste the sample from the worked example, or use your own input.
- 3Copy the result, then adapt the same steps in your editor, script, or pipeline.
Base64 Encoding Without Padding FAQs
Is unpadded Base64 valid?
It is valid in contexts that allow it, such as Base64URL in JWTs (RFC 7515). Strict RFC 4648 Base64 expects padding.
Why do some decoders fail without padding?
Some implementations require input length to be a multiple of 4. Add = characters to fix it.
More Base64 Encoder pages
- Encode a String to Base64Encode any text string to Base64 online. Paste your text and copy the result instantly. Supports UTF-8, free and processed in your browser.
- Base64 Encode UTF-8 Text and EmojiEncode Unicode text, accents and emoji to Base64 correctly. Avoid the btoa "Invalid character" error by encoding as UTF-8 first.
- Base64URL Encoder (URL-Safe Base64)Encode text to URL-safe Base64 (Base64URL) with - and _ instead of + and /, and no padding. The format used in JWTs and URLs.
- HTTP Basic Auth Header GeneratorGenerate an HTTP Basic Authorization header by Base64-encoding username:password. Build the header for curl, fetch and Postman.
- Encode JSON to Base64Encode a JSON object to Base64 for headers, query strings and config values. Paste JSON and copy the encoded string. Free and local.
- Base64 Encode in JavaScriptEncode a string to Base64 in JavaScript with btoa() in the browser or Buffer in Node.js. Check your result with the encoder before shipping.
- Base64 Encode a URLBase64 encode a URL to pass it safely as a parameter, hide it from casual reading or store it in a single token. Use Base64URL for safer links.
- Base64 MIME Encoding With 76-Character LinesMIME Base64 wraps lines at 76 characters. See what wrapped output looks like for email attachments and PEM-style data.
- Base64 Encode in PythonEncode a string to Base64 in Python with base64.b64encode. Remember to encode to bytes first and decode the result. Verify with the online encoder.