Przejdź do treści
Wydajność 6 min czytania

Audyt wydajności sklepu B2B - checklista i proces

Audyt wydajności sklepu to nie „odpalenie Lighthouse'a". Lighthouse jest narzędziem, nie audytem. Pełny audyt obejmuje: lab data (synthetic), field data (real users), server-side profiling (PHP + DB + integracje), analizę architektoniczną, priorytetyzację działań po ROI. Niżej - proces, którego używam u klientów. Trwa 1-3 tygodnie, output to konkretna lista zadań z impact/effort matrix.

Jakub Owsianka Autor
Zaktualizowano:
Okladka artykulu: Audyt wydajności sklepu B2B - checklista i proces (kategoria: Wydajność)
Okladka artykulu: Audyt wydajności sklepu B2B - checklista i proces (kategoria: Wydajność)
Spis treści (8)

Etap 1 - Lab data

Synthetic testing - kontrolowane środowisko, powtarzalne.

Narzędzia:

  • Google PageSpeed Insights - najprostsze, Lighthouse + CrUX, mobile + desktop
  • Lighthouse DevTools - szczegółowo, możliwość zmiany throttling
  • WebPageTest.org - najwięcej szczegółów (waterfall, comparison, multi-location)

Test set:

  • Homepage
  • Top 3 kategorie (z PLP)
  • Top 5 PDP (mix popularnych)
  • Checkout (jeśli można symulować bez zamówienia)
  • Strona logowania
  • Search results page

Każdy URL × mobile + desktop × throttled (Slow 4G) + bez throttle = ~40-60 testów.

Co zbierać:

  • Core Web Vitals (LCP, INP, CLS)
  • Total Blocking Time (TBT)
  • Speed Index
  • Lista issues z Lighthouse (audits failed)
  • WebPageTest waterfall (co konkretnie się ładuje wolno)

Etap 2 - Field data

Real user data z Chrome User Experience Report (CrUX) i Real User Monitoring.

Google Search Console:

  • Core Web Vitals report
  • Segmenty by URL pattern (PLP vs. PDP vs. Other)
  • Mobile vs. desktop
  • 28-dniowe okno

PageSpeed Insights - CrUX section. Real user metrics dla konkretnego URL. Lepsze niż Lighthouse (real users na real urządzeniach).

Real User Monitoring (RUM):

  • Cloudflare Browser Insights (jeśli używasz CF)
  • Datadog RUM
  • Sentry Performance
  • Custom: web-vitals.js (5 KB lib od Google)

Co sprawdzić:

  • LCP / INP / CLS distribution (median, p75, p95, p99)
  • Per device type (mobile / desktop / tablet)
  • Per network (4G, 3G, slow)
  • Per geographic region
  • Per logged-in status (jeśli mierzysz)
  • Per page type

Klucz: porównaj lab vs. field. Lighthouse 90/100, ale CrUX czerwony = problem dla real users (starsze urządzenia, słabsze sieci).

Etap 3 - Server-side profiling

Frontend nie jest jedynym źródłem latencji. Backend zazwyczaj największym.

Narzędzia APM:

  • New Relic APM - kompleksowe, drogie
  • Datadog APM - średnio droższe
  • Tideways - dedykowane dla PHP, używane głównie w Magento/Shopware
  • Blackfire - profiler PHP, gdy potrzebujesz wejść głębiej w wąskie gardło
  • Sentry Performance - tańszy, integruje z error tracking

Co mierzyć:

  • Average response time per route
  • p95 / p99 response time
  • Slowest endpoints
  • DB query time per request
  • External calls (ERP, cache, search)
  • Memory usage
  • CPU usage

MySQL slow query log:

SET GLOBAL slow_query_log = ON;
SET GLOBAL long_query_time = 1;
SET GLOBAL log_queries_not_using_indexes = ON;

Analiza po godzinie / dniu (mysqldumpslow, pt-query-digest):

  • Top 10 najwolniejszych queries
  • Top 10 najczęstszych queries
  • Queries bez indeksów
  • Queries z full table scan

Cache hit ratios:

  • Redis: INFO memory, własne metryki per klucz
  • Varnish: varnishstat (cache_hit, cache_miss)
  • CDN: dashboard providera

Integracje:

  • Czas wywołań do ERP (per endpoint)
  • Hit ratio cache (Redis)
  • Latency per integration call
  • Error rate per integration

Etap 4 - Architektura

Audyt architektoniczny - co da się poprawić strukturalnie.

Checklist:

Hosting:

  • Specyfikacja serwera (CPU, RAM, disk)
  • Czy disk to NVMe (krytyczne dla DB)
  • Czy hosting bare-metal / VPS / cloud
  • Czy są wąskie gardła (CPU/IO/network bound)

Cache layers:

  • Czy jest Varnish (lub odpowiednik)
  • Czy jest Redis i osobne instance per użycie
  • Czy używany CDN
  • Hit ratio per warstwa

Search:

  • Magento: Elasticsearch / OpenSearch wersja, konfiguracja
  • Czy używany dla wszystkich PLP
  • Reindex strategy

Database:

  • MySQL config (innodb_buffer_pool_size, max_connections)
  • Czy są read replicas
  • Indeksy na często queryowanych kolumnach

Code quality:

  • Czy są deweloperzy code review
  • Czy CI/CD ma performance gates
  • Liczba third-party modułów (im więcej, tym więcej ryzyk)

Etap 5 - Synteza i priorytetyzacja

Z czterech etapów masz listę 50-100 znalezisk. Priorytetyzacja:

Impact/Effort matrix:

Niski effort Średni effort Wysoki effort
Wysoki impact DO NATYCHMIAST DO TEGO KWARTAŁU ROADMAP
Średni impact QUICK WIN DO TEGO KWARTAŁU RAPORT
Niski impact NICE TO HAVE RAPORT NIE ROBIMY

Przykład działań po macierzy:

Wysoki impact / niski effort (zrób od razu):

  • Włącz Varnish (już jest infrastruktura)
  • Dodaj fetchpriority="high" na LCP images
  • Skróć TTL nie-krytycznych statyków

Wysoki impact / średni effort:

  • Migracja MySQL search → Elasticsearch
  • Hyvä Theme zamiast klasycznego frontend Magento
  • Image optimization on CDN

Wysoki impact / wysoki effort:

Niski impact / niski effort:

  • Drobne tweaki CSS, minor optimization
  • Cleanup nieużywanych modułów

Niski impact / wysoki effort:

  • Robisz tylko jeśli jest specyficzne uzasadnienie

Deliverable - raport audytu

Co dajesz klientowi po audycie:

1. Executive summary (1-2 strony).

  • Aktualny stan (CWV, response times, główne problemy)
  • Top 5 najmocniejszych działań
  • Oczekiwany ROI

2. Detail findings (10-30 stron).

  • Per area: lab data, field data, server-side, screenshoty
  • Per finding: opis, impact, rekomendacja, effort estimate

3. Action plan (1-2 strony).

  • Lista akcji z priorytetami
  • Timeline (Q1, Q2, Q3...)
  • Owners (kto za co)
  • Monitoring po wdrożeniu

4. Performance budget.

  • Targety LCP / INP / CLS per page type
  • JS / CSS bundle size limits
  • Total page weight

5. Monitoring plan.

  • Co mierzyć (które tools, jakie metryki)
  • Cadence (codziennie / tygodniowo / kwartalnie)
  • Alerts (kto dostaje, na co reaguje)

Pułapki audytu

1. Tylko Lighthouse. Nie wystarczy. Lab vs. field divergence częsta.

2. Audyt tylko homepage. 5% ruchu vs. PLP/PDP (90% ruchu).

3. Audyt tylko dla niezalogowanych. B2B 80% czasu zalogowany.

4. Brak server-side analysis. Frontend audit pokazuje połowę obrazu.

5. Brak priorytetyzacji. Lista 50 rzeczy bez priorytetów = klient nic nie zrobi.

6. Brak follow-up. Audyt → raport → nic. Bez follow-up i monitorowania regresji wyniki znikną.

7. Audyt bez baseline. Bez „pomiar przed" nie wiesz „o ile poprawione".

Kto powinien robić audyt

Sklep własny:

  • Dział IT / DevOps może zrobić audyt techniczny
  • Brakuje często perspektywy „best practice z innych sklepów"
  • Często audyt wewnętrzny jest emocjonalny („nasz kod jest dobry")

Konsultant zewnętrzny:

  • Większa obiektywność
  • Doświadczenie z innych projektów
  • Koszt: 30-80 tys. zł za pełny audyt średniego sklepu
  • Czas: 2-4 tygodnie

Hybryda:

  • Konsultant prowadzi proces, robi analizę
  • Zespół klienta dostarcza dane (logi, dostępy, konteksty)
  • Najlepszy mix

FAQ

Ile kosztuje audyt wydajności sklepu B2B? 30-100 tys. zł zależnie od scope. Mniejszy sklep + tylko frontend audit: 20-40 tys. Pełny (front + back + arch): 50-100 tys. Czas: 2-4 tygodnie.

Czy audyt opłaca się dla małego sklepu? Dla małego (do 1 M zł obrotu) - często DIY z Lighthouse + community knowledge wystarcza. Dla średniego (5+ M zł) - audyt zewnętrzny opłaca się typowo (znalezienie nawet jednej zmiany dającej 10% conversion = ROI ×10).

Jak często powtarzać audyt? Pełny audyt: raz w roku. Mini-audyt (Lighthouse na 10 stron + Search Console): kwartalnie. Continuous monitoring: codziennie.

Czy audyt Lighthouse jest darmowy? Tak, PageSpeed Insights i Lighthouse DevTools darmowe. Ale nie zastąpią pełnego audytu.

Czy audyt obejmuje sugestie biznesowe? Powinien. Wydajność to nie tylko technika - czasem decyzja to „odpuszczamy moduł X bo dorzuca 800 ms, marketing nie ma ROI".

Co dalej

O autorze

Jakub Owsianka

Architekt rozwiązania w WiseB2B - silniku platform B2B. Zaczynał po stronie biznesu (własne sklepy), potem deweloper, dziś projektuje wdrożenia dla sklepów z katalogami w dziesiątkach tysięcy SKU. W ostatnich latach wdrożył AI-development w zespole i funkcjonalności oparte o AI bezpośrednio w silniku sklepu.

Masz pytanie do tego artykułu?

Dodatkowy kontekst, problem z własnym wdrożeniem, druga opinia - napisz wprost. Odpowiadam osobiście w 1-2 dni robocze.