Сайты должны беречь время человека и отвечать мгновенно
Ускоряю сайты интернет-магазинов, доставки и маркетплейсов
Нахожу, что тормозит на первом экране, в каталоге и корзине, и считаю, сколько это стоит бизнесу. Отдаю план фиксов с оценкой эффекта и помогаю команде довести его до результата.
6+ лет во фронтенде, 3 года в Ленте ВКонтакте
- LCP долго грузится первый экран и карточка товара
- INP лагают фильтры, поиск и кнопка «В корзину»
- CLS прыгают баннеры и вёрстка при загрузке
эта страница у вас: LCP … · CLS … · INP кликните · … · запросов … — а как у конкурентов? Перф-индекс рунета
кейсы
Разборы с цифрами
Пока это шаблоны: подача настоящая, цифры придуманы для примера. Настоящие кейсы появятся после первых проектов.
-
Каталог маркетплейса: LCP 4,1 с → 2,2 сшаблон
Мобильный каталог грузился дольше четырёх секунд. Нашли три узких места на первом экране и починили силами команды: LCP упал почти вдвое, конверсия в корзину выросла.
LCP (мобильные, p75)
4,1 с→ 2,2 с -
SaaS-подписка: отклик формы 460 → 120 мсшаблон
Форма подписки отвечала на ввод с задержкой в полсекунды, пользователи кликали по два раза и получали ошибки. Разобрали обработчики по кадрам и разгрузили главный поток.
INP, p75
460 мс→ 120 мс -
Медиа-сайт: контент перестал прыгатьшаблон
Рекламные баннеры и встроенные посты сдвигали текст на пол-экрана, читатели теряли строку, CLS 0,31. Закрыли резервы места и фолбэки шрифтов.
CLS, p75
0,31→ 0,02
Блог
-
Производительность фронтенда: о чём этот блог и кто его пишет
Знакомство с блогом frontendperf.ru: кто автор, почему сайты становятся медленнее, о чём будут статьи — Core Web Vitals, LCP, INP, CLS, измерения и разборы.
-
тема · LCP
LCP: как ускорить загрузку главного контента
Всё про Largest Contentful Paint: пороги, из чего складывается LCP, как найти узкое место и ускорить первый экран интернет-магазина.
-
тема · INP
INP: почему интерфейс тормозит при клике
Interaction to Next Paint без магии: пороги, как найти медленное взаимодействие в трейсе и разгрузить главный поток.
-
тема · CLS
CLS: почему контент прыгает и как это остановить
Cumulative Layout Shift: пороги, частые причины сдвигов (баннеры, шрифты, картинки без размеров) и как их убрать.
-
тема · TTFB
TTFB: время ответа сервера и кэширование
Time to First Byte: почему медленный сервер съедает весь бюджет LCP и как это исправить через кэш, CDN и Early Hints.
-
тема · Измерения
Измерения: RUM, CrUX и как мерить скорость правильно
Лабораторные и полевые данные, CrUX, web-vitals.js и свой RUM: как понять, что сайт действительно стал быстрее.
-
канал
frontendperf в Telegram
Разборы, дайджесты и ответы на вопросы
Как выглядит отчёт
Так выглядит структура настоящего отчёта. Цифры взяты с вымышленного интернет-магазина.
-
LCP-картинка грузится в конце очереди
находкаГлавное изображение весит 1,9 МБ и грузится без приоритета: браузер узнаёт о нём после разбора всего HTML и ставит в конец очереди. Отсюда LCP 4,2 с на мобильных.
рекомендация<link rel="preload"> с fetchpriority="high", современный формат и корректный sizes, чтобы мобильные не качали десктопный размер.
эффектLCP −1,5…2 с, усилие S
-
Сторонний скрипт блокирует рендер
находкаСинхронный скрипт маркетинга в head держит главный поток ~320 мс до первого кадра.
рекомендацияАтрибуты defer/async, перенос ниже по документу, ревизия дублирующихся тегов того же вендора.
эффект−0,4 с до первого рендера, усилие S
-
Баннеры прыгают при загрузке
находкаСлоты рекламы и эмбеды без зарезервированных размеров сдвигают контент: CLS 0,28, читатель теряет строку, на которой остановился.
рекомендацияРезервировать место через aspect-ratio и минимальные высоты контейнеров.
эффектCLS 0,28 → ~0,02, усилие S
-
Шрифты подгружаются поздно
находкаВнешний CSS шрифтов без preload: текст сначала рисуется системным шрифтом, затем перерисовывается.
рекомендацияСамохостинг сабсетов, preload, font-display: swap (как сделано на этой странице).
эффектстабильнее первый кадр, усилие M
- [ ]Приоритет LCP-картинке: preload, fetchpriority, форматы, sizesLCP −1,8 сS
- [ ]Убрать блокирующий скрипт маркетинга−0,4 с FCPS
- [ ]Зарезервировать место под баннеры и эмбедыCLS → 0,02S
- [ ]Разгрузить обработчик поиска: debounce + веб-воркерINP −200 мсM
- [ ]Code splitting главной страницы−1,2 МБ JSM
Прогноз после плана: LCP около 2,1 с, все Core Web Vitals в зелёной зоне.
услуги
Форматы работы
Пилот −40% на аудиты первым 3 клиентам, свободно 3 из 3. Взамен право опубликовать кейс.
Экспресс-аудит
40 000 ₽24 000 ₽ за проектОтвет на вопрос «что тормозит и что чинить первым». Один ключевой сценарий: каталог, карточка товара или корзина.
- Core Web Vitals: LCP, INP, CLS и где вы относительно порогов
- Полевые и лабораторные данные: CrUX/RUM + Lighthouse, трейсы
- Топ проблем, отсортированный по ожидаемому эффекту
- Отчёт с приоритизированным списком фиксов
- Созвон-разбор отчёта на 45 минут
- самый глубокий разбор
Полный аудит
250 000 ₽150 000 ₽ за проектПолная диагностика фронтенда и план работ, который можно отдать команде как бэклог.
- Всё из экспресс-аудита, по всем ключевым шаблонам
- Архитектура загрузки: критический путь, приоритеты ресурсов, бандлинг
- JavaScript: что грузится, что блокирует, что можно выкинуть
- Сеть, медиа, изображения, сторонние скрипты
- Разбор реального кода с конкретными техническими решениями
- План работ с оценкой эффекта и трудозатрат по каждому пункту
- Презентация результатов команде
Сопровождение
от 100 000 ₽ в месяц
или 8 000 ₽/час для разовых задач
Помогаю команде внедрить план и не откатиться назад. Логичное продолжение аудита.
- Еженедельный созвон с командой
- Ревью перф-критичных PR
- Контроль метрик и регрессий: RUM, CrUX, перф-бюджеты в CI
- Ответы на вопросы в чате в рабочие дни
Менторство и воркшопы
по договорённости
Для команд и отдельных разработчиков, которые хотят сами уметь находить и чинить тормоза.
- Как читать Performance-панель и трейсы
- RUM и Web Vitals: что и как мерить
- Разбор ваших реальных задач
НДС не облагается: работаю как самозанятый и выдаю чек. Условия — в оферте.
цифры
Скорость окупается
+8,4%
конверсии в ритейле дало ускорение мобильного сайта всего на 0,1 секунды
Google × Deloitte, Milliseconds Make Millions, 2020
53%
мобильных визитов обрывается, если страница грузится дольше трёх секунд
Google / DoubleClick, The Need for Mobile Speed, 2016
p75
по 75-му перцентилю реальных визитов оцениваются Core Web Vitals: важен не ваш ноутбук, а телефон покупателя в метро
web.dev, Core Web Vitals thresholds
Меньше уходов, больше конверсий, дешевле платный трафик: начнём с аудита.
контакт
Обсудим ваш сайт?
Напишите, что тормозит и какие метрики беспокоят. Отвечу в течение дня. Если задача не по моей части, скажу честно и подскажу, к кому обратиться.
Чтобы сразу перейти к делу, пришлите в первом сообщении: адрес сайта, 1–3 самые важные страницы (например, каталог и карточку товара), есть ли у вас RUM или Метрика и чего хотите добиться.
Написать в Telegram