Перевод изображения для сайта: таблицы, формулы и онлайн-конвертер
- WebP даёт сжатие на 25–35% лучше JPEG при том же качестве, AV1 — ещё на 20%.
- Для Retina (2x) ширина изображения должна быть вдвое больше контейнера: 1200px при контейнере 600px.
- Стандартные размеры для ширины контейнера: 320, 640, 1024, 1440, 1920 px.
- Используйте с multiple sources: WebP для современных браузеров, JPEG/PNG — fallback.
- Сжатие без потерь (lossless) для PNG даёт экономию до 50% объёма без артефактов.
- Формула идеального размера изображения для Retina-экранов
- Таблица форматов: когда какой использовать (актуально на 2026)
- Пошаговый пример: конвертация и оптимизация изображения для интернет-магазина
- Подводные камни конвертации: цветовые профили, метаданные и размеры
- Как отладить конвертацию: инструменты и проверки
- Автоматизация конвертации: скрипты и CI/CD
- Когда конвертация не нужна: SVG и векторные изображения
- Оценка влияния оптимизации на конверсию: бизнес-метрика
- Бонус: рецепт для фоновых изображений (CSS background-image)
Формула идеального размера изображения для Retina-экранов
Пиксельная плотность дисплеев (DPR) — это коэффициент, показывающий, сколько физических пикселей приходится на один CSS-пиксель. Для обычного экрана DPR=1, для Retina (iPhone, многие мониторы 4K) — чаще 2 или 3.
Пример: контейнер 400px, DPR 2 → изображение должно быть 800px по ширине. Если поставить 400px, на Retina оно будет размытым. Если 1200px — избыточный вес.
Для автоматического подбора используйте атрибут srcset в теге <img>:
<img src="photo-800.jpg"
srcset="photo-400.jpg 400w,
photo-800.jpg 800w,
photo-1200.jpg 1200w"
sizes="(max-width: 600px) 100vw, 50vw"
alt="описание">
Подводный камень: браузер использует не только DPR, но и размер окна (viewport). Указывайте sizes — без него браузер возьмёт 100vw и скачает самое большое.
Таблица форматов: когда какой использовать (актуально на 2026)
| Формат | Сжатие | Прозрачность | Когда использовать |
|---|---|---|---|
| JPEG | С потерями | Нет | Фотографии, сложные градиенты |
| PNG | Без потерь | Да | Логотипы, иконки, скриншоты |
| WebP | С потерями / без | Да | Основной формат для современных браузеров (98% поддержки) |
| AVIF | С потерями / без | Да | Лучшее сжатие, медленное кодирование, 85% поддержки |
| SVG | Вектор | Да | Иконки, диаграммы, адаптивные элементы |
Для совместимости используйте тег <picture> с несколькими источниками:
<picture>
<source srcset="photo.avif" type="image/avif">
<source srcset="photo.webp" type="image/webp">
<img src="photo.jpg" alt="описание">
</picture>
Важно: порядок источников определяет приоритет — ставьте AVIF первым, WebP вторым, JPEG последним.
Пошаговый пример: конвертация и оптимизация изображения для интернет-магазина
Допустим, у нас есть исходное фото товара (6000×4000 px, 12 МБ, JPEG). Хотим показать его на странице товара и в карусели.
- Определите максимальные размеры контейнеров: детальная карточка — 800px, миниатюра — 200px.
- Рассчитайте размеры для Retina: для детальной 800×2=1600px, для миниатюры 200×2=400px.
- Сконвертируйте в WebP: используйте cwebp или онлайн-конвертер. Пример команды:
cwebp -q 80 source.jpg -o product-1600.webp cwebp -q 80 source.jpg -resize 400 0 -o thumb-400.webp - Создайте fallback в JPEG тех же размеров:
convert source.jpg -resize 1600x1600 product-1600.jpg convert source.jpg -resize 400x400 thumb-400.jpg - Вставьте в HTML с
: <picture> <source srcset="product-1600.webp" media="(min-width: 800px)"> <source srcset="product-1600.jpg" media="(min-width: 800px)"> <img src="product-800.jpg" alt="Товар"> </picture>
Результат: вес загрузки уменьшился с 12 МБ до ~350 КБ (WebP). Если нужно быстро перевести несколько файлов, используйте наш Конвертер изображения для сайта.
Подводные камни конвертации: цветовые профили, метаданные и размеры
- Цветовой профиль (ICC): если изображение содержит встроенный профиль (например, Adobe RGB), при конвертации цвета могут исказиться. Рекомендуется конвертировать в sRGB и удалить профиль:
cwebp -noalpha -metadata none src.jpg -o out.webp. - EXIF-данные: ориентация, дата, GPS — обычно не нужны на сайте. Удаляйте:
cwebp -metadata noneилиjpegtran -copy none. - Размеры в srcset: не используйте разные пропорции (aspect ratio) в одном srcset — браузер решит, что изображения разные, и может скачать все. Сохраняйте одинаковое соотношение сторон.
- Lazy loading: загрузка изображений при прокрутке экономит трафик. Добавьте атрибут
loading="lazy"для всех картинок ниже сгиба.
Для быстрого сжатия без потери качества попробуйте Сжать изображение онлайн — он автоматически удаляет метаданные и подбирает степень сжатия.
- 1Определить контейнеры
Измерьте ширину CSS-контейнеров в пикселях (например, 800px и 200px).
- 2Рассчитать размеры
Умножьте каждую ширину на DPR (обычно 2) — получите 1600px и 400px.
- 3Конвертировать в WebP/AVIF
Используйте cwebp или онлайн-конвертер для создания файлов нужных размеров.
- 4Создать JPEG-fallback
Для старых браузеров подготовьте JPEG тех же размеров.
- 5Встроить через
Напишите HTML с srcset и media-запросами для адаптивной загрузки.
Как отладить конвертацию: инструменты и проверки
Даже после конвертации изображение может отображаться некорректно. Используйте эти методы:
- DevTools (Chrome/Firefox): во вкладке Network фильтр «Img» — увидите реальный размер загруженного файла. Если грузится оригинал (12 МБ) вместо WebP (350 КБ) — неверно настроен
<picture>. - Check format support: на странице
chrome://gpuпроверьте поддержку WebP и AVIF («Decode image»). - Pixel density test: в DevTools переключитесь на Device Toolbar и выберите iPhone 12 (DPR=3). Проверьте, что ширина загружаемого изображения >= контейнера × 3.
- Lighthouse: отчёт покажет «Serve images in next-gen formats» и «Properly size images». Стремитесь к 100 баллам.
Если после всех проверок изображение всё ещё тормозит — проверьте сервер. Возможно, не включено сжатие Brotli или gzip для самого HTML.
Для анализа цветовой палитры загруженного изображения пригодится Палитра из изображения онлайн.
✅ Чеклист: проверка изображений на сайте
0 из 8
Автоматизация конвертации: скрипты и CI/CD
Вручную конвертировать каждое изображение — долго. Настройте автоматическую обработку при пуше в репозиторий.
Пример на Node.js (sharp):
const sharp = require('sharp');
const fs = require('fs');
async function convert(input, outputBase) {
const image = sharp(input);
await image
.resize(1600)
.webp({ quality: 80 })
.toFile(`${outputBase}-1600.webp`);
await image
.resize(800)
.toFile(`${outputBase}-800.webp`);
await image
.jpeg({ quality: 85 })
.toFile(`${outputBase}-800.jpg`);
}
convert('photo.jpg', 'product');
Для CI (GitHub Actions): установите sharp и запускайте скрипт перед деплоем. Не забудьте добавить cache: sharp для ускорения.
Edge-case: если изображений много (>100), используйте очередь (Bull, RabbitMQ) — иначе сборка упадёт по таймауту.
Когда конвертация не нужна: SVG и векторные изображения
Для логотипов, иконок и иллюстраций с чёткими краями используйте SVG. Преимущества:
- Не зависит от DPR — всегда чётко.
- Меньший размер (часто <1 КБ).
- Можно анимировать и менять цвета через CSS.
Когда SVG плох: для фотографий и сложных растровых изображений — размер SVG будет огромным.
Если у вас уже есть PNG-логотип, конвертируйте его в SVG через трейсер (например, Potrace), но лучше попросите исходник у дизайнера.
Оценка влияния оптимизации на конверсию: бизнес-метрика
Каждая секунда загрузки страницы снижает конверсию в среднем на 7% (данные Akamai на 2026). Оптимизация изображений — самый быстрый способ ускорить сайт.
Чтобы посчитать экономию:
- Измерьте текущее время загрузки (LCP в Lighthouse).
- Примените оптимизацию (конвертация в WebP, сжатие, srcset).
- Замерьте новое время — обычно сокращение на 30–50%.
- Умножьте процент улучшения на коэффициент конверсии.
Пример: сайт зарабатывает 1 000 000 ₽ в месяц, конверсия 2%. Ускорение на 1 сек (улучшение загрузки на 40%) даёт прирост конверсии на ~2,8% (0,4*7%). Итого: + 28 000 ₽/мес.
Посчитать точнее поможет Калькулятор конверсии сайта.
Бонус: рецепт для фоновых изображений (CSS background-image)
Фоновые изображения в CSS тоже должны быть адаптивными. Используйте image-set():
.hero {
background-image: url('hero-800.jpg');
background-image: image-set(
'hero-800.webp' 1x,
'hero-1600.webp' 2x,
'hero-2400.webp' 3x
);
}
Внимание:image-set()пока не поддерживает все браузеры, поэтому обязательно указывайте fallback через обычныйbackground-image.
Для сложных проектов лучше всё же использовать <picture> внутри <div> с position: absolute.
🧮 Посчитайте сами — инструменты по теме
🧭 Разделы по теме
Частые вопросы
Какие форматы изображений лучше всего подходят для сайта в 2026 году?
Основные форматы: WebP (компрессия на 25–35% лучше JPEG, поддержка 98%) и AVIF (ещё на 20% лучше, но медленнее кодируется). Для фотографий используйте WebP с потерями, для логотипов — SVG или PNG без потерь. JPEG оставьте как fallback для старых браузеров.
Как правильно задать размеры изображения для Retina?
Используйте формулу: ширина изображения = ширина контейнера (в CSS-пикселях) × DPR. Например, для контейнера 400px и DPR 2 нужно изображение шириной 800px. В srcset укажите несколько вариантов: 400w, 800w, 1200w, а в sizes — условия вроде (max-width: 600px) 100vw.
Что делать, если изображение на сайте грузится слишком долго?
Сначала проверьте формат: переконвертируйте в WebP. Затем убедитесь, что размеры не превышают необходимые (используйте srcset). Удалите метаданные, сожмите с качеством 80-85%. Если всё равно тормозит — настройте lazy loading и проверьте серверное сжатие (Brotli/gzip).
Как автоматически конвертировать изображения при загрузке на сервер?
Напишите скрипт на Node.js с библиотекой sharp или используйте плагины для сборщиков (webpack, vite). Для CI/CD добавьте шаг с конвертацией перед деплоем. Популярные решения: Imagemin, Sharp, или облачные сервисы (Cloudinary, imgix).
Нужно ли удалять метаданные (EXIF) из изображений для сайта?
Да, за редкими исключениями. EXIF-данные (GPS, дата, модель камеры) увеличивают вес файла и не нужны пользователям. Удаляйте их при конвертации через cwebp с флагом -metadata none или через инструменты типа ExifTool. Исключение: если на сайте есть функция показа даты съёмки.
Почему мой тег не показывает WebP в Chrome?
Проверьте порядок источников: AVIF должен быть первым, WebP вторым, JPEG последним. Также убедитесь, что MIME-тип указан верно: type="image/webp". Если Chrome всё равно грузит JPEG — откройте DevTools и посмотрите, поддерживается ли WebP (вкладка Network покажет, какой файл загружен).
Как влияет оптимизация изображений на SEO?
Положительно: Google Core Web Vitals включают LCP (загрузка крупнейшего элемента), и оптимизированные изображения улучшают этот показатель. Кроме того, быстрый сайт получает более высокий рейтинг. Не забывайте про alt-тексты и описания.
Какие инструменты использовать для конвертации изображений онлайн?
Для перевода в разные форматы используйте наш Конвертер изображения для сайта. Для сжатия без потери качества — инструмент Сжать изображение онлайн. Для анализа палитры — Палитра из изображения онлайн.
Источники и нормативные документы
- MDN Web Docs: Responsive images
- WebP: Google Developers
- AVIF: AOMedia
- Can I Use: WebP & AVIF