Вес страницы после Tilda: три поправки к замеру
В описании переезда салона с Tilda стояло «−51…−60% веса страниц». Цифра пришла из презентации, а не из замера, и проверить её было нечем: старого сайта больше нет. Сохранился экспорт предшественника — и по нему получилось посчитать честно.
Вес страницы и вес кода — разные числа
Сначала я считал всё, что лежит в сохранённой странице. Так делать нельзя: половина файлов до браузера не доезжает. После трёх поправок «до» перестало быть завышенным вдвое, а «после» — впятеро.
Полифилл не считается. Tilda отдаёт 181 КБ совместимости с атрибутом nomodule.
Браузер, который понимает модули, этот файл не запрашивает вовсе. В сохранённой папке
он лежит и весит, в сети его нет.
Иконка сайта не считается. У старого сайта ей был SVG на 2,3 МБ. Он качается один раз за визит и кешируется, а не приходит с каждой страницей. В вес одной страницы он попадать не должен — иначе первый же экран выглядит вчетверо тяжелее, чем он есть.
Из srcset берётся один файл. Браузер выбирает одну картинку из набора, а не весь набор.
Я считал ту, что стоит в src, то есть самую крупную из возможных — так «после» заведомо
не льстит себе.
Как посчитать
Проще всего не по папке, а по HAR: в нём записано ровно то, что ушло по сети.
# Вес по типам ресурсов из HAR — так, как их качает браузер
jq -r '
.log.entries
| map(select(.response.status == 200))
| map({ type: .response.content.mimeType, bytes: .response.content.size })
| group_by(.type)
| map({ type: .[0].type, kb: (map(.bytes) | add / 1024 | floor) })
| sort_by(-.kb)[]
| "\(.kb) КБ \(.type)"
' page.har
Что получилось
Медиана по девятнадцати одинаковым страницам: код страницы — разметка, стили и скрипты — стал легче на 70% в сыром виде и на 75% по сети. Скриптов было одиннадцать файлов на 189 КБ, стало четыре на 6 КБ. Запросов на страницу — 14 вместо 20.
Оговорка, без которой цифра врёт
Легче стал код. Страница целиком у части разделов стала тяжелее прежней: на новых страницах появились фотографии, которых на Tilda не было вовсе — старые сервисные страницы состояли из одного текста. Сравнивать «страницу с фото» и «страницу без фото» по мегабайтам бессмысленно, поэтому в кейс вынесены только медианы по коду.
Замер 22.08.2026 по сохранённому экспорту doctor.cosmetolog.pro. Внешние адреса —
шрифты Google, GTM, CDN — не считались ни у одной из сторон: их размер недоступен,
и есть они только у старого сайта.