Base64 Encoder
Encode text to Base64 as you type, or turn an image or any other file into Base64 or a data URL for HTML, CSS and JSON. Text is encoded as UTF-8, so accents and emoji come out right.
- Free
- No upload
- No sign-up
CSV to JSON and JSON to CSV
Quoted fields, line breaks inside cells, semicolon CSV from Excel and JSON Lines are handled.
Base64 encoder and decoder
UTF-8 safe for accents and emoji. Decoding ignores line breaks and missing padding.
Color converter: HEX, RGB and HSL
Type or paste a color in any field, or use the picker. All formats update together.
WCAG contrast
AA needs 4.5:1 for normal text and 3:1 for large text (24px, or 19px bold). AAA needs 7:1 and 4.5:1.
Number base converter
Binary, octal, decimal and hexadecimal. Very large and negative whole numbers are supported.
Spaces and underscores are ignored, and the prefixes 0b, 0o and 0x are accepted. Negative numbers keep a minus sign; for values that fit in 8 to 128 bits the two’s complement form is shown too.
Text case converter
Accented letters such as á, ž and ľ are kept, and ß becomes ẞ in capitals. Code cases are applied line by line.
URL encoder and decoder
Percent-encode text for links and query strings, or decode %20-style text back.
Component encodes every reserved character (/ ? & = #), for a single query value or path part. Full URL keeps the URL structure readable.
Unix timestamp converter
Seconds or milliseconds are detected automatically from the number of digits.
Current Unix time: —
Without Z or an offset such as +02:00, the date is read in your time zone (local).
- Unix time (seconds)
—- Unix time (milliseconds)
—- ISO 8601, UTC
—- ISO 8601, your time zone
—- Readable, your time zone
—- Relative
—
Runs entirely in your browser. Your data, files and text are never uploaded.
What Base64 encoding does
Base64 writes binary data using only 64 safe characters (A–Z, a–z, 0–9, + and /), so it can travel through email, JSON, XML and URLs that only accept text. Every 3 bytes become 4 characters, which makes the encoded text about 33% larger than the original.
Text is first turned into UTF-8 bytes. That is why "Žltý kôň" or an emoji encode correctly here, whereas the browser's own btoa() function fails on any character outside Latin-1.
The URL-safe variant from RFC 4648 replaces + and / with - and _, so the result can be used in URLs, file names and JSON Web Tokens; padding = signs can be left out too. For files, choose a data URL such as data:image/png;base64,… to embed small images directly in HTML or CSS.
How to use the Base64 Encoder
- Type or paste text in the Text field; the Base64 appears next to it immediately.
- Switch on the URL-safe alphabet or turn off padding if your system needs it.
- To encode a file, choose File → Base64 and pick an image, PDF or any file up to 5 MB.
- Copy the result, or download the file's Base64 as a .txt file.
Frequently asked questions
Is Base64 a form of encryption?
No. Base64 only changes how bytes are written down, and anyone can decode it instantly. Never use it to hide passwords or private data.
Why is the Base64 longer than my text?
Base64 stores 3 bytes in 4 characters, so it is about a third longer. Letters with accents and emoji take 2–4 bytes each in UTF-8, which makes the result longer still.
When should I use a data URL?
For small images and icons that you want to embed directly in HTML, CSS or JSON without a separate file. For anything larger than a few kilobytes, a normal file is usually faster.
Is my text or file uploaded?
No. Encoding is done by this page in your browser; nothing you type or open is sent to a server.
More conversions
Code & data
Other categories
