Дизайн

PNG в вебе и дизайне: где использовать, а где лучше SVG или WebP

PNG — формат, который многие выбирают по привычке: «нужна прозрачность — значит PNG». Иногда это правильное решение, а иногда так на сайт попадает картинка весом в мегабайт, которую можно было сделать в двадцать раз легче. Разбираемся без воды: где PNG реально незаменим, а где он молча тормозит вашу страницу.

Сайт-портфолио на экране — типичная сцена, где сходятся PNG, SVG и WebP
На одной странице сайта обычно встречаются сразу несколько форматов — и для каждого есть своя правильная роль. Фото: Pexels

Где PNG по-настоящему силён

Чтобы понять, когда брать PNG, достаточно запомнить две его суперспособности: сжатие без потерь и честный альфа-канал (полупрозрачность по каждому пикселю). «Без потерь» означает, что после сохранения картинка остаётся пиксель в пиксель такой же, как в редакторе — никаких артефактов вокруг резких краёв, которыми грешит JPG.

Из этих двух свойств вытекают сценарии, где PNG почти вне конкуренции:

  • Скриншоты интерфейсов. Резкие линии, мелкий текст, контрастные кнопки — всё это PNG сохраняет идеально. JPG на том же скриншоте размывает буквы и оставляет «грязь» вокруг границ.
  • Графика с текстом и чёткими краями. Инфографика, схемы, баннеры с надписями, мемы — везде, где важна резкость контуров.
  • Изображения со сложной прозрачностью. Мягкие тени, свечения, размытые края, полупрозрачные градиенты — PNG-32 хранит 256 уровней прозрачности на пиксель, и это его коронный номер.
  • Растровые логотипы и иконки — когда векторного исходника нет, а картинку нужно положить на любой фон.

Главное правило в одну строку

PNG берут, когда важнее точность, чем лёгкость: резкий текст, чёткие края, сложная прозрачность. Если же на картинке плавные фотографические переходы, PNG почти всегда проигрывает по весу.

А вот для чего PNG подходит плохо — это обычные фотографии. Сжатие без потерь не умеет выбрасывать мелкие, незаметные глазу детали, поэтому фото в PNG весит в разы больше, чем то же фото в JPG или WebP при том же визуальном качестве. Для фотоконтента почти всегда есть формат лучше.

PNG против SVG: растр против вектора

Это первая развилка, на которой ошибаются чаще всего. Разница принципиальная: PNG — растр (сетка пикселей фиксированного размера), SVG — вектор (математическое описание линий и фигур). Вектор можно растянуть от размера марки до фасада здания без единого размытого пикселя.

Что это значит на практике для логотипов, иконок и элементов интерфейса:

КритерийPNG (растр)SVG (вектор)
МасштабированиеРазмывается при увеличенииЧёткий в любом размере
Вес простой иконки/логоКилобайты—десятки КБЧасто меньше, чем PNG
Ретина-готовностьНужен экспорт @2x/@3xИз коробки
Анимация и стили через CSSНетДа
Фотографии, сложные текстурыПодходитНе подходит

Вывод простой: для логотипов, иконок, пиктограмм и UI-элементов в вебе по умолчанию выбирайте SVG. Он легче, всегда резкий, его можно перекрашивать и анимировать прямо в CSS. PNG в этой роли оправдан только как запасной вариант (fallback) для совсем старых систем — или когда у логотипа есть растровый эффект (фотофактура, сложный градиентный шум), который вектором не повторить.

Дизайнер рисует каркас интерфейса на доске — этап, где решают, что станет SVG, а что PNG
Решение «PNG или вектор» принимается ещё на этапе макета, а не при экспорте. Фото: Pexels
SVG спрашивает «какой формы объект?», PNG спрашивает «какого цвета каждый пиксель?». Для логотипа первый вопрос почти всегда правильнее.

PNG против WebP и AVIF в вебе

Допустим, картинка точно должна быть растровой — например, скриншот или иллюстрация с прозрачностью. Значит ли это, что нужен PNG? В современном вебе — уже не обязательно. У PNG появились прямые наследники, которые делают то же самое, но легче.

  • WebP поддерживает и сжатие без потерь, и прозрачность — ровно как PNG, но файл получается заметно меньше. Браузерная поддержка — около 95% пользователей.
  • AVIF сжимает ещё сильнее (примерно на 50% меньше JPG и на 20–30% меньше WebP при сопоставимом качестве), тоже умеет прозрачность и более глубокий цвет. Поддержка — около 94%.

Совет на каждый день

Картинка с прозрачностью для веба? Сначала попробуйте WebP: та же прозрачность, та же резкость, но меньше вес. PNG оставьте как fallback через <picture> для редких браузеров, которые WebP не понимают.

Когда же PNG по-прежнему лучше WebP или AVIF? В трёх случаях:

  • Нужна 100% совместимость без возни с fallback — например, картинка для письма-рассылки, где почтовые клиенты капризны.
  • Файл и так крошечный — иконка в 1–2 КБ, где экономия в полкилобайта не стоит усложнения.
  • Инструмент или платформа не принимает WebP — старая CMS, конкретный загрузчик, требование заказчика.

Во всех остальных случаях для веба связка «современный формат + PNG/JPG как запасной» выигрывает. Хорошая новость: переводить ничего не нужно вручную — есть конвертер PNG в WebP, который сделает это за секунды.

Ретина и экспорт @2x: чтобы не было «мыла»

Главная ловушка любого растра, включая PNG, — экраны с высокой плотностью пикселей (Retina и аналоги). На таком дисплее один «логический» CSS-пиксель состоит из двух, а то и трёх физических. Если вы положите иконку ровно в её отображаемом размере, браузер растянет её, и она поплывёт — появится то самое «мыло».

Решение для растра — экспортировать в увеличенном размере:

@1x
обычные экраны (1 физический пиксель на CSS-пиксель)
@2x
×2 — большинство Retina и смартфонов
@3x
×3 — топовые телефоны (3 физических пикселя)
srcset
атрибут, который подставит нужный вариант
Иконка 24px
экспорт 48px (@2x) и 72px (@3x)
Альтернатива
SVG — резкий без @2x вообще

На практике это значит: иконку, которая на сайте видна как 24×24, для PNG нужно отдать ещё и в 48×48, и в 72×72, а потом перечислить варианты в srcset — браузер сам выберет под экран. Звучит как лишняя работа, и она лишняя — поэтому для иконок и логотипов так удобен SVG: ему ретина не страшна в принципе, один файл годится для всех экранов сразу.

Частая ошибка

Не путайте «экспортировать @2x» с «вставить огромную картинку и ужать её через CSS». Во втором случае пользователь скачает гигантский файл, который ему не нужен на обычном экране, — это бьёт по скорости. Размер файла должен соответствовать плотности экрана, а не быть «с запасом на всякий случай».

Влияние на скорость загрузки и оптимизация

Здесь начинается то, ради чего стоит всё это знать. Картинки — самая тяжёлая часть типичной страницы: по данным Web Almanac за 2025 год, на изображения приходится около 48% всего веса медианной страницы. И именно картинка чаще всего оказывается тем самым крупным элементом, который определяет момент «страница загрузилась» в глазах Google: на мобильных это так примерно для 76% страниц, на десктопе — для 85%.

≈48%веса страницы — это картинки
50–70%можно срезать оптимизацией PNG
76%мобильных страниц: LCP — это картинка

Вывод: тяжёлый PNG — это не «просто файл побольше», это медленный сайт и просадка в поиске. Хорошая новость в том, что PNG почти всегда можно облегчить без видимой потери качества. Вот рабочий порядок действий, от простого к радикальному:

1

Сократите палитру

Если на картинке мало цветов (иконка, лого, простая графика), сохраните её как PNG-8 — индексированная палитра до 256 цветов. Часто 64 или даже 32 цвета неотличимы от полной палитры, а файл легче в разы.

2

Прогоните через оптимизатор

Инструменты вроде TinyPNG, pngquant, OptiPNG или ImageOptim умно урезают палитру и выкидывают лишние метаданные. Минус 50–70% веса без заметной разницы — обычное дело.

3

Отдайте современный формат

Если после оптимизации PNG всё ещё тяжёлый (особенно если в нём фотографические участки) — конвертируйте в WebP или AVIF. Тот же кадр, та же прозрачность, в полтора-два раза легче.

Дизайнер рисует иконки приложения от руки — иконки в вебе почти всегда выгоднее держать векторными
Набор иконок — классический кандидат на SVG-спрайт или оптимизированный PNG-8 вместо тяжёлых PNG-24. Фото: Pexels

Практические советы дизайнеру

Соберём разрозненные правила в короткий рабочий чек-лист — то, что стоит держать в голове прямо в момент экспорта из Figma, Photoshop или Illustrator:

  • Логотип, иконка, простая пиктограмма? → SVG. PNG — только как fallback.
  • Скриншот или графика с текстом? → PNG (или WebP без потерь для веба).
  • Фотография без прозрачности? → JPG/WebP/AVIF, но не PNG.
  • Фотография с прозрачностью или мягкие тени? → WebP/AVIF, PNG-32 как запасной.
  • Делаете растр под веб? → не забудьте про @2x для ретины и про srcset.
  • Любой PNG перед заливкой → прогнать через оптимизатор. Всегда. Это бесплатные килобайты скорости.
  • Указывайте width и height в разметке — это убирает «прыжки» вёрстки при загрузке и улучшает метрики стабильности.

Мини-приём для UI

Если у вас десятки мелких иконок в PNG — соберите их в один спрайт (одна картинка + позиционирование через CSS) или, что ещё лучше, в SVG-спрайт. Это превращает десятки запросов к серверу в один и заметно ускоряет загрузку интерфейса.

Как конвертировать PNG (и обратно)

Самый частый практический шаг — перевести готовый PNG в более лёгкий веб-формат. Это делается в браузере за пару секунд, без установки программ:

Облегчите свой PNG прямо сейчас

Конвертер FormatZ переведёт PNG в WebP с сохранением прозрачности — та же картинка, но заметно меньше вес. Бесплатно, прямо в браузере, без регистрации.

Конвертировать PNG в WebP

Другие полезные направления под конкретные задачи:

  • PNG → JPG — для фотографий без прозрачности, где нужен минимальный вес.
  • PNG → SVG — трассировка простой графики и логотипов в вектор.
  • WebP → PNG — обратно в PNG, если инструмент не принимает WebP.

Полный список преобразований всегда есть на странице всех форматов. А если хочется глубже разобраться в самом PNG — загляните в материалы «Что такое PNG» и «Прозрачность в PNG».

Если логотип векторный (а почти все современные логотипы такие), используйте SVG: он весит копейки, остаётся идеально чётким на любом экране и в любом размере. PNG для логотипа берут только как запасной вариант для старых систем или когда нужен растровый файл с фотографическим эффектом, который вектором не повторить.
Когда нужна стопроцентная совместимость без запасных форматов, когда изображение крошечное (иконка в пару килобайт, где разница в весе незаметна) или когда инструмент или платформа просто не умеет работать с WebP. Во всех остальных случаях для веба WebP или AVIF дадут такую же картинку при меньшем весе и тоже поддержат прозрачность.
На экранах с высокой плотностью пикселей (Retina и подобных) один CSS-пиксель состоит из двух или трёх физических. Чтобы растровая картинка не выглядела размытой, её экспортируют в увеличенном размере: @2x — вдвое больше, @3x — втрое. Затем нужный вариант подставляют через атрибут srcset.
PNG сжимает без потерь, поэтому фотографии и сложные изображения в нём весят в разы больше, чем в JPG или WebP. Лечится это тремя способами: уменьшить палитру (PNG-8 вместо PNG-24, если цветов мало), прогнать файл через оптимизатор вроде TinyPNG или pngquant (часто минус 50–70% веса) или вовсе отдать картинку в WebP/AVIF.
Да, PNG — почти идеальный формат для скриншотов: он сохраняет резкие края, мелкий текст и линии без артефактов, потому что сжатие без потерь. JPG на тех же скриншотах размазывает буквы и оставляет грязь вокруг контрастных границ. Если скриншот тяжёлый, оптимизируйте его или конвертируйте в WebP — он тоже без потерь и легче.