devs-code.site In English

Прискорення сайтів · WooCommerce

Той самий магазин. Той самий сервер. 71 → 100 у PageSpeed.

Дві живі збірки одного магазину. Однакові товари, ціни, фотографії та верстка. Ліва — звичайний сайт на WooCommerce: конструктор сторінок, шістнадцять плагінів, фото просто з камери. Права — той самий магазин, зібраний наново.

На 10 000 візитів на місяць ця різниця у швидкості коштує приблизно 40 замовлень — це близько $2,480.

Це модель, а не обіцянка. Коефіцієнт і джерела — нижче.

Потягнути повзунок Відкрити обидва магазини

Потягніть. Обидві половини живі.

Це не скріншоти. Два справжні сайти вантажаться у вашому браузері, просто зараз, вашим каналом.

До чекаємо
чекаємо Після

Час угорі виміряний у вашому браузері, а не взятий із нашої бази. Перезавантажте сторінку — цифри будуть іншими. Саме так виглядає справжній трафік.

Цифри, які перевимірюються кожні шість годин

Lighthouse, мобільний пресет: повільний 4G, гальмування процесора ×4. Три прогони, медіана. Останній замір: 4 серпня 2026 р. о 09:50 UTC.

Показник До Після Зміна
…

INP тут немає навмисно: це польова метрика, їй потрібен реальний трафік, а в демо-магазину його немає. Лабораторний замінник — TBT, він у таблиці.

Не вірте нам на слово. Запустіть PageSpeed Insights від Google на обох:

Перевірити повільний ↗ Перевірити швидкий ↗

Скільки коштує повільна версія

Швидкість — це не показник заради показника, а замовлення. Підставте свої числа.

Втрачених замовлень за місяць —
Втрачених грошей за місяць —
За рік —
Звідки коефіцієнт

Ми беремо залежність, яку Google опублікував за своїми даними з роздрібу: кожна зайва секунда завантаження коштує близько 7% конверсій, а мобільні сайти з завантаженням за 1 секунду конвертують приблизно у 2,5 раза краще за ті, що вантажаться 5 секунд. Наші дві збірки різняться на 3.1 с за LCP, що лінійно дало б значно більше, ніж ми готові стверджувати. Ту залежність міряли на різницях у десяті частки секунди, а не в секунди, тож ми обмежуємо модель 22%, а все, що вище, вважаємо невідомим. Навіть з обмеженням це оцінка для одного магазину, а не закон природи: ваш каталог, склад трафіку та оформлення замовлення важать більше за будь-який коефіцієнт.

Джерела: Google/SOASTA «The State of Online Retail Performance» (2017); Google «Milliseconds make millions» (Deloitte, 2020); кейси Core Web Vitals на web.dev.

Кожен крок — із замірами

Ми не оптимізували наосліп, щоб потім вгадувати, що допомогло. Швидка збірка вміє вимикати кожну оптимізацію окремо, тому кожен рядок нижче — справжній замір цієї самої сторінки з нею і без неї.

Крок Що зроблено Бал Приріст
…

Кроки накопичувальні: кожен рядок зберігає все, що вище. Приріст — різниця з попереднім рядком, у балах Lighthouse, мобільний.

Як це зроблено

Одним реченням

Ми лишили магазин і викинули риштування: конструктор, який віддавав 46 файлів стилів, щоб намалювати дев'ять карток товару, замінили на ручну верстку, а сервер тепер віддає готову сторінку замість того, щоб збирати її заново для кожного відвідувача.

Стара сторінка — це шафа з IKEA, привезена деталями, з інструкцією в останній коробці. Нова приїжджає зібраною.

Для технічного читача

    Чого ми НЕ робили

    Обидва стенди стоять на одному сервері: та сама PHP 8.3, ті самі налаштування пулу FPM, той самий TLS і HTTP/2, той самий OPcache. Ми не переносили швидкий на кращий хостинг — інакше порівняння нічого не варте. Аналітику та рекламні пікселі ми не ставили на жодну зі збірок: відвідувачів демо ми не відстежуємо. На справжньому клієнтському сайті вони зазвичай коштують ще 5–10 балів, тож розрив, який ви бачите, — обережна оцінка.

    Повільна збірка — це не саботаж. Це WordPress 7.0.2 із WooCommerce, конструктором сторінок і шістнадцятьма плагінами, які справжній магазин накопичує за пару років, на сервері, швидшому за більшість шаредів. На звичайному шаред-хостингу та сама збірка набрала б ще менше.

    Та сама сторінка — перевірено, а не обіцяно

    Увесь кейс тримається на тому, що це та сама сторінка. Тому ми перевіряємо це машиною: обидва стенди знімаються на ширинах 360, 768, 1024 і 1440 px і порівнюються попіксельно.

    Подивитися поруч ↗