Skip to content

Конвертер изображений в Base64

Кодируйте изображения в data URI Base64 прямо в браузере — PNG, JPG, GIF, WebP, SVG, ICO. Копируйте вывод для HTML, CSS, Markdown и JSON. 100% приватно, без загрузки.

Без отслеживания Работает в браузере Бесплатно
Всё работает в вашем браузере. Ваши изображения не покидают устройство.

Перетащите изображение сюда, вставьте его или нажмите для выбора

PNG · JPG · GIF · WebP · SVG · ICO · BMP — преобразуется полностью в браузере

Проверено на корректность data-URI, точные метрики размера, определение MIME и рекомендации по производительности встраивания — Команда инженеров Go-Tools · Jun 5, 2026

Что такое Base64-изображение (Data URI)?

Base64-изображение — это картинка, чьи двоичные байты перекодированы в строку печатных ASCII-символов по алфавиту Base64 (A–Z, a–z, 0–9, + и /). Обёрнутая в схему data: URI — data:image/png;base64,iVBORw0KGgo… — эта строка может появиться везде, где ожидается URL: HTML img src, CSS background-image, тело письма или поле внутри JSON-payload. Браузер декодирует её на лету и отображает изображение без отдельного сетевого запроса. Поэтому Base64-изображения иногда называют «встроенными» (inline или embedded).

Кодирование существует по простой причине: многие системы создавались для переноса текста, а не произвольных двоичных данных. HTML, JSON, заголовки email и URL ожидают символы, а сырые байты изображения содержали бы управляющие коды и разделители, которые их ломают. Base64 отображает каждые 3 двоичных байта в 4 безопасных текстовых символа, гарантируя, что данные переживут транспорт нетронутыми. Цена — размер: текстовое представление примерно на 33% больше исходного двоичного, и его нельзя кешировать независимо от содержащего его документа.

Этот компромисс определяет, когда Base64-изображения имеют смысл. Для крошечной иконки, используемой в одной таблице стилей, встраивание убирает один цикл обмена, а штраф по размеру пренебрежимо мал — явный выигрыш. Для hero-фото на 200 КБ, переиспользуемого на каждой странице, встраивание раздувает каждую страницу, обходит кеш браузера и тратит CPU на декодирование при каждой загрузке — явный проигрыш. Современная рекомендация эпохи HTTP/2: встраивать только маленькие, стабильные ресурсы, а всё остальное отдавать обычными кешируемыми файлами. Инструмент показывает точные цифры для вашего изображения и рекомендацию-светофор, чтобы решение опиралось на данные, а не на фольклор.

Обратная операция — превращение строки Base64 обратно в просматриваемое, скачиваемое изображение — не менее полезна, когда вы отлаживаете data URI из таблицы стилей, изучаете ответ API или восстанавливаете ресурс, встроенный в конфигурационный файл. Переключитесь на вкладку Base64 → Image или откройте отдельный декодер Base64 в изображение.

<!-- The same 1×1 transparent PNG, four ways -->

<!-- HTML -->
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==" alt="pixel">

/* CSS */
.badge {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==");
}

<!-- Markdown -->
![pixel](data:image/png;base64,iVBORw0KGgo…)

// JSON
{ "mime": "image/png", "data": "iVBORw0KGgo…" }

Ключевые возможности

Перетаскивание, клик или вставка

Три способа ввода: перетащите файл, выберите его или вставьте изображение прямо из буфера обмена через Ctrl+V — самый быстрый путь для скриншотов. Всё, что вы предоставите, кодируется сразу, без загрузки.

Шесть форматов вывода

Сырой Base64, полный Data URI, элемент HTML , правило CSS background-image, ссылка на изображение в Markdown и объект JSON. У каждого своя кнопка «Скопировать» и опция «Скачать», поэтому фрагмент готов ровно для нужного вам контекста.

Живые метрики размера и увеличения

Панель метаданных показывает исходный размер файла, размер Base64 после кодирования и точный процент увеличения для вашего конкретного изображения — не общее «около 33%». Вы видите реальную стоимость встраивания до того, как на него решитесь.

Значок-совет о встраивании

Рекомендация-светофор читает размер вашего файла и подсказывает, хорошая ли идея data URI: зелёный до ~2 КБ, жёлтый до ~10 КБ, красный выше. Он кодирует консенсус эпохи после HTTP/2, чтобы вам не пришлось помнить пороги.

Встроенный декодер

Вкладка Base64 → Image обращает процесс: вставьте строку или data URI и получите живой предпросмотр, декодированные размеры и тип MIME и кнопку «Скачать», которая воссоздаёт исходный файл. Она терпима к отсутствующим префиксам и лишним пробелам.

Все распространённые форматы

PNG, JPG, GIF (анимация сохраняется), WebP, SVG, ICO и BMP — плюс AVIF там, где поддерживается. Сырые байты кодируются как есть, поэтому прозрачность, анимация и векторная масштабируемость остаются нетронутыми.

Примеры

PNG в data URI (готово для CSS / HTML)

transparent-1x1.png  (PNG размером 68 байт)
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==

Перетащите PNG, и вкладка Data URI даст строку, которую можно вставить прямо в HTML src или CSS url(). Панель метаданных показывает исходный размер, размер Base64 и точный процент увеличения.

Встраивание SVG-иконки в HTML

icon.svg
<img src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0i…" alt="icon">

Переключитесь на вкладку HTML, чтобы получить готовый к вставке элемент . Именно для SVG URL-кодирование часто компактнее Base64 — см. FAQ о том, почему SVG это особый случай.

Markdown-изображение со встроенным JPG

photo.jpg  (12 КБ)
![photo](data:image/jpeg;base64,/9j/4AAQSkZJRgABAQ…)

Вкладка Markdown создаёт самодостаточную ссылку на изображение — удобно для файлов README, GitHub Issues и блокнотов, где нельзя разместить внешний файл. На 12 КБ значок-совет становится жёлтым: взвесьте удобство против стоимости веса страницы.

Как преобразовать изображение в Base64

  1. 1

    Добавьте изображение

    Перетащите изображение в зону сброса, кликните для выбора или вставьте из буфера обмена через Ctrl+V / Cmd+V. PNG, JPG, GIF, WebP, SVG, ICO и BMP поддерживаются и кодируются полностью в браузере.

  2. 2

    Выберите формат вывода

    Выберите Data URI, сырой Base64, HTML , CSS background, Markdown или JSON из вкладок. Проверьте панель метаданных на увеличение размера и значок-совет о том, стоит ли встраивание того.

  3. 3

    Скопируйте или скачайте

    Нажмите «Скопировать», чтобы взять фрагмент, или «Скачать», чтобы сохранить его как файл. Для обратного процесса переключитесь на вкладку Base64 → Image, вставьте строку и скачайте восстановленное изображение.

Частые ошибки

Отсутствующий или неверный тип MIME

Data URI должен объявлять правильный тип медиа, иначе браузер откажется отрисовывать его. Кодирование PNG, но с меткой image/jpeg, или полное отсутствие типа даёт сломанное изображение. Скопируйте вывод Data URI или HTML прямо из этого инструмента, чтобы автоматически получить правильный префикс.

✗ Неверно
data:base64,iVBORw0KGgo…
<!-- no MIME type — will not render -->
✓ Верно
data:image/png;base64,iVBORw0KGgo…
<!-- correct: image/png -->

Пробелы или переносы строк в строке

Некоторые инструменты переносят Base64 на 76 символах по RFC 2045, а копирование-вставка может вставить лишние пробелы или переводы строк. В HTML-атрибуте или CSS url() эти переносы могут сделать URI невалидным. Уберите пробелы перед использованием строки — декодер этого инструмента делает это автоматически, поэтому круговой проход через вкладку Base64 → Image очистит её.

✗ Неверно
data:image/png;base64,iVBORw0KGgoAAAANS
UhEUgAAAAEAAAABCAYAAAA…
<!-- embedded newline breaks the attribute -->
✓ Верно
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAA…
<!-- single unbroken line -->

Обрезанная строка (потерян padding)

Строки Base64 заканчиваются нулём, одним или двумя символами padding =. Частичная копия, потерявшая завершающий = (или последние несколько символов), даёт недекодируемую строку и сломанное изображение. Если вставка не отрисовывается, убедитесь, что вы скопировали всё значение, включая любой завершающий padding.

✗ Неверно
…WjR9awAAAABJRU5ErkJggg
<!-- missing trailing == -->
✓ Верно
…WjR9awAAAABJRU5ErkJggg==
<!-- complete with padding -->

Кодирование большой фотографии в Base64

Кодирование фотографии в несколько сотен КБ даёт огромную строку, которая раздувает ваш HTML или CSS, не кешируется сама по себе и медленно декодируется. Значок-совет становится красным именно для этого случая. Отдавайте большие изображения обычными файлами; оставьте Base64 для маленьких ресурсов и сначала сжимайте.

✗ Неверно
/* 380 KB hero photo inlined into a global stylesheet */
.hero { background-image: url("data:image/jpeg;base64,/9j/…(½ MB of text)…"); }
✓ Верно
/* Serve it as a cached file instead */
.hero { background-image: url("/img/hero.jpg"); }

Типичные сценарии

Встроить логотип или иконку в CSS
Перетащите маленькую PNG- или SVG-иконку, скопируйте фрагмент CSS background-image и вставьте его в таблицу стилей, чтобы убрать HTTP-запрос для редко меняющегося ресурса. Держите его до ~2 КБ (следите за зелёным значком), чтобы таблица стилей оставалась лёгкой.
Встроить изображения в HTML email
Почтовые клиенты часто блокируют удалённые изображения. Закодируйте логотип как data URI и вставьте элемент в шаблон, чтобы он отрисовался без обращения к серверу. Проверяйте в разных клиентах — встраивайте маленькие иконки, а не фотографии.
Самодостаточные Markdown и README
Когда нельзя разместить изображение — GitHub Issue, блокнот, офлайн-документ — вывод Markdown встраивает картинку прямо в файл, чтобы она путешествовала вместе с текстом. Идеально для маленьких схем и значков.
Изображения внутри JSON или API-payload
Нужно отправить миниатюру внутри JSON-документа или конфигурационного файла? Вывод JSON даёт объект { mime, data }, который можно вставить напрямую, а декодер восстанавливает изображение на другом конце.
Быстрая отладка data URI
Нашли загадочный data: URI в таблице стилей или ответе API? Вставьте его во вкладку Base64 → Image, чтобы увидеть, что это на самом деле, прочитать реальные размеры и скачать как обычный файл для детального изучения.
Однофайловые виджеты и букмарклеты
Букмарклеты и встраиваемые виджеты должны быть самодостаточными без внешних зависимостей. Встраивание их иконок как Base64 держит всё в одном файле, который работает, куда бы его ни поместили.

Технические детали

Как работает кодирование Base64
Base64 берёт двоичный поток изображения по три байта (24 бита) за раз и делит на четыре 6-битные группы, каждая из которых отображается в один символ 64-символьного алфавита. Когда длина входа не кратна трём, один или два символа padding = отмечают остаток. Это соотношение 3 к 4 — причина, по которой закодированный текст примерно на 33% больше исходника. Инструмент вычисляет декодированную длину в байтах прямо из длины строки и padding, поэтому сообщаемые им цифры размера точны, а не оценочны.
Определение MIME и магические байты
Когда вы кодируете файл, его тип MIME берётся из объекта File браузера. Когда вы декодируете сырую строку Base64 без префикса data:, инструмент изучает ведущие символы, соответствующие магическим байтам изображения: iVBORw0KGgo для PNG, /9j/ для JPEG, R0lGOD для GIF, UklGR для WebP и PHN2Zy или PD94bWw для SVG. Это позволяет декодеру восстановить корректный data URI и скачать с правильным расширением файла, даже когда ввод — лишь голый payload.
Обработка только локально
Кодирование использует readAsDataURL из FileReader API, который возвращает data URI, синтезированный полностью в браузере. Декодирование для скачивания использует atob плюс Uint8Array для восстановления двоичных данных, затем Blob и object URL — снова без участия сети. Результат — инструмент, который можно запускать офлайн и которому можно доверить конфиденциальные изображения, потому что байты никогда не покидают страницу. Поведение «ноль запросов» можно проверить в инструментах разработчика браузера.

Лучшие практики

Встраивайте только маленькие стабильные ресурсы
Золотая середина для Base64 — ресурсы до ~2 КБ, которые редко меняются и появляются на немногих страницах: иконки, крошечные логотипы, UI-спрайты. Выше ~10 КБ штраф по размеру и потеря кеширования перевешивают сэкономленный запрос, особенно теперь, когда HTTP/2 делает дополнительные запросы дешёвыми. Пусть значок-совет вас направляет, а фотографии и крупную графику отдавайте обычными кешируемыми файлами.
Предпочитайте URL-кодирование для SVG
SVG — это текст, поэтому Base64 раздувает его без выгоды. При встраивании SVG в CSS или HTML вместо этого URL-кодируйте разметку — обычно она компактнее, остаётся читаемой человеком и лучше сжимается gzip/brotli. Оставьте Base64 SVG для пайплайнов, которые его специально требуют. Наш URL-кодировщик/декодер выполняет percent-кодирование.
Всегда задавайте правильный тип MIME
Data URI отрисовывается, только если его тип MIME совпадает с содержимым: image/png, image/jpeg, image/gif, image/webp, image/svg+xml. Неверный или отсутствующий тип — причина номер один, по которой встроенное изображение не отображается. При копировании из этого инструмента тип задаётся за вас; если собираете URI вручную, перепроверьте префикс.
Сжимайте перед кодированием
Поскольку Base64 добавляет ~33% поверх размера файла, уменьшение исходника окупается вдвойне. Прогоните изображения через наш Сжиматель изображений — или экспортируйте в правильных размерах — перед кодированием, чтобы итоговый data URI был как можно меньше. Сжатый PNG в 4 КБ бьёт оригинал в 40 КБ и как файл, и встроенным.
Никогда не полагайтесь на Base64 ради приватности
Base64 тривиально обратим и не даёт защиты. Не используйте его, чтобы скрыть чувствительное содержимое изображения — любой может декодировать его мгновенно, в том числе вкладкой на этой странице. Если содержимое нужно защитить, используйте настоящий контроль доступа и шифрование на сервере и отдавайте изображение через аутентифицированный эндпоинт.

Часто задаваемые вопросы

Что делает этот конвертер изображений в Base64?
Он читает изображение, которое вы перетащили, вставили или выбрали, и кодирует его байты в строку Base64 — полностью внутри браузера. Вы получаете сырой Base64, готовый data URI (data:image/png;base64,…) и фрагменты для вставки в HTML , CSS background-image, Markdown и JSON. Панель метаданных сообщает исходный размер файла, размер после кодирования, точный процент увеличения (Base64 примерно на 33% больше), пиксельные размеры и тип MIME. Ничего не загружается: кодирование выполняется локально через FileReader API, поэтому инструмент безопасен для скриншотов, внутренних ресурсов и неопубликованной графики. Для обратного преобразования используйте вкладку Base64 → Image или наш декодер Base64 в изображение.
Загружаются ли мои изображения на сервер?
Нет. Каждый шаг выполняется на стороне клиента в браузере через FileReader API и кодирование строк в JavaScript. Ваше изображение никогда не передаётся, не сохраняется и не логируется. Это можно проверить, открыв вкладку Network в браузере — кодирование изображения не вызывает ни одного сетевого запроса. Поэтому инструмент безопасен для чувствительных материалов: скриншотов продукта до запуска, внутренних схем, ресурсов клиентов и всего, что под NDA. Лимита размера файла, навязанного ограничением загрузки, нет — есть только практический предел того, насколько большую строку Base64 ваш браузер и целевая система могут комфортно обработать.
Насколько Base64 увеличивает размер изображения?
Base64 кодирует каждые 3 байта двоичных данных в 4 ASCII-символа, поэтому закодированная строка примерно на 33% больше исходного файла (плюс несколько байт padding и префикс data:). PNG в 9 КБ становится примерно 12 КБ текста. Эти накладные расходы — главная причина не кодировать большие изображения в Base64: вы передаёте больше байт и, поскольку строка встроена в ваш HTML или CSS, эти байты повторно скачиваются при каждом изменении файла-контейнера и не кешируются отдельно. Инструмент показывает точное увеличение для вашего конкретного файла в панели метаданных, чтобы решение опиралось на реальные цифры.
Когда стоит использовать Base64-изображение вместо обычного файла?
Base64 (как data URI) хорошо подходит для маленьких, редко меняющихся ресурсов, где избежать отдельного HTTP-запроса важнее кеширования: крошечные иконки и логотипы, встроенные в CSS, изображения в HTML email (многие клиенты блокируют внешние изображения, но отрисовывают data URI), однофайловые виджеты или букмарклеты, которые должны быть самодостаточными, SVG-спрайты и изображения, хранящиеся внутри JSON/API-payload. Практическое правило: меньше примерно 2 КБ и используется на одной-двух страницах — встраивание обычно выигрывает. Значок-совет в инструменте кодирует именно эту эвристику: зелёный до 2 КБ, жёлтый до 10 КБ, красный выше.
Когда НЕ стоит использовать Base64-изображения?
Избегайте Base64 для всего крупного или переиспользуемого на многих страницах. Четыре конкретные причины: (1) увеличение размера на ~33% означает больше байт по сети; (2) встроенное изображение нельзя кешировать само по себе — оно повторно скачивается при каждом изменении содержащего его HTML или CSS и повторяется на каждой странице, где встроено; (3) декодирование большого data URI расходует CPU и батарею, что заметно на мобильных; и (4) вы теряете адаптивные изображения (srcset/sizes) и отложенную загрузку. Поскольку HTTP/2 дёшево мультиплексирует множество мелких запросов, исходная причина встраивать — сократить число запросов — почти не актуальна. Для фотографий, hero-изображений или всего больше ~10 КБ обычный кешируемый файл почти всегда загружается быстрее. Если цель — файл поменьше, сначала прогоните его через наш Сжиматель изображений.
Как использовать вывод Base64 в HTML и CSS?
Для HTML переключитесь на вкладку HTML и вставьте сгенерированный элемент: …. Для CSS используйте вкладку CSS, которая оборачивает data URI в background-image: url("data:image/png;base64,…"). Оба работают везде, где принимается URL — img src, CSS background, mask-image, даже теги link для favicon. Схема data: поддерживается всеми современными браузерами. Одна оговорка: очень длинные data URI во встроенном HTML вредят читаемости, а в CSS раздувают таблицу стилей, которая отправляется каждому посетителю, поэтому оставляйте встраивание для действительно маленьких ресурсов.
Какие форматы изображений поддерживаются?
Поддерживаются PNG, JPEG/JPG, GIF (включая анимированные), WebP, SVG, ICO и BMP, а также AVIF там, где браузер умеет его декодировать. Поскольку инструмент кодирует сырые байты, а не перерисовывает изображение, анимированные GIF остаются анимированными, прозрачные PNG сохраняют альфа-канал, а SVG остаются полностью масштабируемыми. Тип MIME считывается из самого файла, а при вставке сырого Base64 в декодер выводится из магических байтов данных. Во время кодирования нет конвертации формата — вывод представляет ровно тот файл, который вы предоставили.
Почему SVG это особый случай?
SVG — это XML-текст, а не бинарные данные, поэтому Base64 на самом деле делает его больше и труднее для чтения без какой-либо пользы. Для встраивания SVG в CSS или HTML URL-кодирование разметки (percent-кодирование нескольких символов вроде #, <, > и кавычек) обычно компактнее Base64 и сохраняет исходник читаемым и удобным для gzip. Инструмент всё же предлагает вывод SVG в Base64, потому что некоторые пайплайны его требуют, но если вы вручную оптимизируете CSS, предпочтите URL-кодированный data URI. С этим подходом поможет наш URL-кодировщик/декодер.
Base64 — это то же самое, что шифрование?
Нет. Base64 — это кодирование, а не шифрование — оно полностью обратимо любым без ключа. Оно существует, чтобы представлять двоичные данные через безопасный набор печатных ASCII-символов, и данные переживают транспорт через системы, работающие только с текстом (HTML, JSON, заголовки email, URL). Любой может декодировать строку Base64 обратно в исходное изображение за секунды, в том числе вкладкой Base64 → Image здесь. Никогда не считайте Base64 способом скрыть или защитить чувствительное содержимое изображения; оно не даёт никакой конфиденциальности.
Можно ли встроить Base64-изображение в email?
Да, и это один из лучших вариантов применения техники. Многие почтовые клиенты по умолчанию блокируют внешне размещённые изображения ради приватности, что ломает макеты, зависящие от удалённых логотипов. Встраивание маленьких изображений как data URI гарантирует их немедленную отрисовку без обращения к серверу. Компромиссы: у некоторых старых клиентов (особенно отдельных версий Outlook) поддержка data URI неровная, а большие вставки раздувают размер сообщения, которое скачивает каждый получатель. Держите встроенные изображения маленькими — логотипы и иконки, а не фотографии — и проверяйте в целевых клиентах.
Почему моё Base64-изображение не отрисовывается?
Самые частые причины: отсутствующий или неверный тип MIME в префиксе data: (используйте image/png для PNG, image/jpeg для JPG, image/svg+xml для SVG), пробелы или переносы строк, случайно вставленные в строку, обрезанная копия, потерявшая завершающий padding (= или ==), или вставка только сырого Base64 без префикса data:…;base64, там, где ожидается URL. Декодер в этом инструменте терпим — он убирает пробелы, принимает ввод с префиксом или без него и выводит MIME из магических байтов изображения — поэтому вставка вашей строки во вкладку Base64 → Image это самый быстрый способ проверить, валидны ли сами данные.

Похожие инструменты

Все инструменты →

Base64 декодер и кодировщик

Кодирование и форматирование

Декодирование и кодирование Base64 онлайн бесплатно. Преобразование в реальном времени с полной поддержкой UTF-8 и эмодзи. Полная приватность — работает в браузере. Без регистрации.

Конвертер Base64 в изображение

Кодирование и форматирование

Декодируйте строку Base64 или data URI обратно в изображение прямо в браузере. Предпросмотр, размеры и MIME, затем скачивание как PNG, JPG, GIF, SVG. Без загрузки.

Конвертер CSV в JSON

Кодирование и форматирование

Конвертируйте CSV в JSON в браузере. RFC 4180, определение типов, заголовок, безопасность больших целых. 100% приватно, без загрузки.

JSON Diff и сравнение

Кодирование и форматирование

Сравнивайте два JSON-файла мгновенно в браузере. Side-by-side подсветка, вывод JSON Patch (RFC 6902), игнорирование шума вроде timestamp и ID. 100% приватно, без загрузки.

Форматировщик и валидатор JSON

Кодирование и форматирование

Форматирование, проверка и улучшение читаемости JSON прямо в браузере. Бесплатный онлайн-инструмент с проверкой синтаксиса, поиском ошибок, минификацией и копированием в один клик. Полная приватность.

Валидатор JSON Schema

Кодирование и форматирование

Проверяйте JSON по любой JSON Schema мгновенно в браузере. Поддержка Draft 2020-12, 2019-09 и Draft-07 с точными путями ошибок. 100% приватно — без загрузки, без аккаунта, бесплатно.