Base64 Encoder & Decoder Online

Local processing

Encode UTF-8 text or hexadecimal bytes as Base64, create unpadded URL-safe Base64 (Base64URL), or decode Base64 as UTF-8 text or hexadecimal bytes locally.

11 chars · 1 line

16 chars · 1 line

Encoding Base64 text

Base64 encoding guide

How to encode and decode Base64

Encode UTF-8 text as standard Base64 or unpadded Base64URL, convert hexadecimal bytes directly to Base64, decode either Base64 variant back to readable text, or inspect decoded binary bytes as hexadecimal. The converter validates Base64 length, padding, padding bits, and hexadecimal byte input locally in your browser. This tool is free to use. No account or payment is required.

Last updated

What you can do here

  • UTF-8 text encoding
  • Standard Base64 decoding
  • URL-safe Base64 decoding
  • Binary Base64 to hexadecimal inspection
  • Strict padding and UTF-8 text validation
  • Browser-local processing

How to use

  1. Choose Encode, Base64URL, Hex → Base64, Decode, or Decode → Hex.
  2. Paste readable text, hexadecimal bytes, or a Base64 value into the input panel.
  3. Use Hex → Base64 for raw bytes, Decode for UTF-8 text, or Decode → Hex when the decoded value may contain arbitrary binary bytes.
  4. Copy or download the converted result.

Base64 is an encoding, not encryption

Base64 represents binary bytes with printable ASCII characters. Anyone who receives the value can decode it, so Base64 does not protect passwords, secrets, or private data.

VetaTool encodes text as UTF-8 before converting the bytes. Encode produces standard padded Base64, while Base64URL produces the URL-safe alphabet without trailing = padding.

Base64 and Base64URL

Standard Base64 uses + and / characters and commonly ends with = padding. Base64URL replaces those characters with - and _ so values can be placed more safely in URLs and tokens.

Base64URL mode emits the URL-safe alphabet and omits padding, matching the representation commonly used by JWT segments. Decode accepts both alphabets and can restore omitted padding while still rejecting impossible lengths and non-canonical padding bits.

Binary byte conversion and inspection

Hex → Base64 reads pairs of hexadecimal digits as raw bytes before encoding them, so binary values such as file signatures, hashes, keys, or compressed data are not accidentally encoded as the visible hex characters themselves.

Decode requires decoded bytes to form valid UTF-8 text, while Decode → Hex skips UTF-8 interpretation and renders each decoded byte as two lowercase hexadecimal digits. This keeps arbitrary binary Base64 values inspectable without uploading them.

Base64 encoding example

Readable text is converted to its standard padded Base64 representation.

Text input

hello world

Base64 output

aGVsbG8gd29ybGQ=

Common questions

Frequently asked questions

Is Base64 secure or encrypted?

No. Base64 is reversible encoding and should not be used to hide secrets or protect sensitive data.

Can VetaTool encode and decode Base64URL values?

Yes. Base64URL mode encodes with the URL-safe - and _ alphabet and omits trailing padding. Decode accepts both standard and URL-safe Base64 and restores omitted padding when the encoded length is valid.

Why does a valid-looking value fail to decode?

The input may contain invalid padding, non-canonical padding bits, or an impossible length. Text Decode also rejects bytes that are not valid UTF-8; use Decode → Hex when you need to inspect arbitrary binary bytes.

Does VetaTool upload the text I encode?

No. Base64 encoding and decoding happen locally in your browser.

Looking for broader references? Browse all developer guides.