Migracja strony WWW bez utraty SEO — kompletny przewodnik 2026
Migracja strony to jeden z najbardziej ryzykownych projektów SEO — źle zrobiona kosztuje 50-80% ruchu organic na miesiące. Dobrze zaplanowana traci 5-15% na 2-4 tygodnie, po czym wraca do stanu pierwotnego lub LEPSZEGO (lepszy stack = lepsze CWV = wyższe pozycje). Poniżej 40-punktowy checklist, framework 301 redirects i case study oparte na 10+ lat migracji dla klientów.
⚠️ Statystyki — dlaczego migracje często idą źle
- • 40% migracji powoduje spadki ruchu > 30% w pierwszych 4 tygodniach
- • 60% spadków wynika z błędnej lub niekompletnej mapy 301 redirects
- • 25% spadków z powodu zmian w strukturze URL bez strategy SEO
- • 15% spadków z braku pre-migration audit i post-migration monitoring
Źródło: analiza 150+ migracji klientów GMWEB 2022-2026.
Kiedy warto migrować, a kiedy nie?
✓ Warto migrować gdy:
- • Technologia ogranicza rozwój (stary CMS bez wsparcia)
- • Core Web Vitals w czerwonej strefie i naprawa za droga
- • Strona nie jest responsywna (pre-2018 design)
- • Struktura URL niezgodna z SEO best practices
- • Potrzeba nowych funkcji (e-commerce, wielojęzyczność)
- • Kwestie bezpieczeństwa (hacki, wtyczki z podatnościami)
- • Koszty utrzymania niewspółmierne do wartości biznesowej
✗ NIE migruj gdy:
- • „Chcę ładniejszy design" (wymień theme/szablon, nie całą stronę)
- • Konkretny problem, który można rozwiązać w obecnym stacku
- • Na siłę „bo konkurent ma Next.js" (technologia ≠ sprzedaż)
- • Przed dużą kampanią marketingową (timing!)
- • Bez budżetu na SEO audit przed + monitoring po
- • Bez kompletnej mapy URL starych → nowych
- • W sezonie szczytu sprzedaży (e-commerce: listopad-grudzień)
3 fazy migracji — framework
Faza pre-migration (1-2 tygodnie)
Zanim tkniesz kod nowej strony — zbierz baseline. Bez tego nie wiesz czy migracja powiodła się. Niezbędne dane:
- Kompletny export listy wszystkich URL strony (Screaming Frog / Sitebulb)
- Snapshot pozycji top 100 fraz w Google (Ahrefs / Senuto / GSC)
- Export Google Search Console > Performance (ostatnie 12 miesięcy)
- Backup bazy danych + plików (lokalny + cloud)
- Export Google Analytics za ostatnie 12 miesięcy
- Lista backlinków (Ahrefs Site Explorer) — kluczowe
- Lista top pages wg ruchu (niech przeżyją migrację z priorytetem)
- Audyt Schema.org (jakie typy są obecnie)
- Export canonical tags dla każdego URL
- Lista redirect chains (stare redirects które trzeba „spłaszczyć")
Faza migration (2-8 tygodni)
Budowa nowej strony na staging + pełne mapowanie redirectów. Nigdy nie migruj „na żywo" bez stagingu.
- Setup staging environment (subdomena, np. staging.firma.pl, zablokowana robots.txt)
- Budowa nowej strony na staging — 100% funkcjonalności
- Mapowanie URL: stary → nowy, w arkuszu Google Sheets
- Implementacja 301 redirects (web.config / .htaccess / middleware Next.js)
- Testy 301 — Screaming Frog crawl staging, sprawdzenie każdego URL
- Zachowanie struktury URL gdzie możliwe (przyjazne URL, short, hierarchiczne)
- Schema.org migration — przepisanie wszystkich JSON-LD do nowej struktury
- Internal linking audit — nowe linki wewnętrzne prowadzą do nowych URL
- Canonical tags w nowej strukturze (zawsze self-canonical dla każdego URL)
- Meta title + description migration — zachowanie optymalizowanych tekstów
- Images — alt tags + optymalizacja (WebP, lazy loading) w nowej wersji
- Core Web Vitals — testy LCP/CLS/INP przed launchem
- Mobile-first check — każda podstrona responsive
- RODO + cookie banner na nowej wersji
- Google Analytics 4 + Google Tag Manager setup na nowej
- Google Search Console — weryfikacja nowej wersji (jeśli nowa domena)
- Sitemap.xml wygenerowany z nowymi URL
- Robots.txt pozwala crawlować + wskazuje sitemap
Faza post-migration (4+ tygodnie)
Tu rzeczywiście sprawdza się czy migracja była dobra. Monitor aktywnie przez 2-4 tygodnie, pasywnie przez 2-3 miesiące.
- Submit nowego sitemap w Google Search Console
- Request indexing dla top 20 URL (Search Console > URL Inspection)
- Monitoring Coverage — dzień 1, 3, 7, 14, 30 po migracji
- 301 test: Screaming Frog crawl live, wszystkie 301 działają (10 losowych + top 20)
- Monitoring pozycji — daily dla top 50 fraz przez pierwsze 2 tygodnie
- Analytics: compare ruch przed/po (GA4 comparison)
- Search Console > Performance — sprawdź czy impressions spadają
- Sprawdź zewnętrzne linki — czy prowadzą do działających URL (lub 301)
- Reach out do top linkujących — poinformuj o nowych URL (update link)
- Monitoring błędów 404 — Search Console + custom tracking
- PageSpeed Insights — compare CWV przed/po
- Backlinks audit — czy DR nie spadł (Ahrefs)
- Po 4 tygodniach — pełny audit SEO porównawczy
301 redirects — jak zrobić poprawnie
Mapa 301 to NAJWAŻNIEJSZY element migracji. Każdy stary URL musi mieć przekierowanie na nowy równoważnik. Przykłady implementacji:
Apache (.htaccess)
# Stary URL → nowy URL
Redirect 301 /stara-strona /nowa-strona
Redirect 301 /uslugi/seo /oferta/pozycjonowanie
# Wildcard dla kategorii
RedirectMatch 301 ^/blog/kategoria/(.*)$ /artykuly/$1
# Cała domena (zmiana nazwy firmy)
RewriteCond %{HTTP_HOST} ^stara-nazwa.pl$
RewriteRule (.*) https://nowa-nazwa.pl/$1 [R=301,L]Nginx
# W server block
location = /stara-strona {
return 301 /nowa-strona;
}
location /blog/kategoria/ {
rewrite ^/blog/kategoria/(.*)$ /artykuly/$1 permanent;
}Next.js (middleware.ts)
import { NextResponse } from 'next/server'
import type { NextRequest } from 'next/server'
const redirects: Record<string, string> = {
'/stara-strona': '/nowa-strona',
'/uslugi/seo': '/oferta/pozycjonowanie',
}
export function middleware(req: NextRequest) {
const target = redirects[req.nextUrl.pathname]
if (target) {
return NextResponse.redirect(new URL(target, req.url), 301)
}
}Najczęstsze błędy migracji
Brak kompletnej mapy redirect
Team migruje 80% URL, zapomina o starym blogu z 300 postami. Rezultat: 300 404, stracona authority. Rozwiązanie: Screaming Frog crawl obecnej strony + audit ręczny WSZYSTKICH URL ze starych sitemap i GSC > Performance.
Użycie 302 zamiast 301
302 (temporary redirect) nie przenosi wartości SEO między URL. Google traktuje stary URL jako nadal aktywny. Zawsze używaj 301 (permanent) dla migracji.
Redirect chains (A → B → C)
Po latach różnych redirectów stare URL przechodzą przez 3-4 hopy. Każdy hop zmniejsza authority o 5-10%. Rozwiązanie: spłaszcz redirect chains do max 1 hopu (A → C bezpośrednio).
Migracja bez snapshotu pozycji
Nie wiesz od czego wychodzisz — nie zmierzysz czy migracja jest lepsza czy gorsza. ZAWSZE przed migracją: eksport top 100 fraz z Ahrefs/Senuto + GSC performance 12 mies.
Migracja w sezonie szczytu
E-commerce migrujące w listopad = marketing suicide. Jeśli coś pójdzie źle, stracisz Black Friday. Timing migracji: e-commerce w styczniu-lutym, B2B latem, hotele poza sezonem.
Brak staging environment
„Migrujemy na żywo, będzie szybciej" — klasyczny disaster. 12h downtime + błędy na produkcji = 50%+ ruchu stracone. Zawsze staging, zawsze testy, zawsze backup.
Case study: migracja sklepu WooCommerce → Shopify
Kontekst:
- • Sklep z produktami regionalnymi (miód, przetwory)
- • Z WooCommerce (~500 produktów, 3 lata operacyjny)
- • Cel: ambicja skalowania na rynek DE, Shopify bardziej pasuje
- • Baseline: ~8 500 wizyt/mies organic, DR 26, 1 200 backlinks
Przebieg migracji (10 tygodni):
- • Tyd 1-2: audit, snapshot, mapowanie URL (470 produktów + 85 contentowych)
- • Tyd 3-7: budowa nowej strony Shopify na staging, import produktów, design
- • Tyd 8: testy 301 (Screaming Frog), CWV, Schema Product, integracje płatności
- • Tyd 9: migracja live (czwartek wieczór, 4h downtime maintenance)
- • Tyd 10+: monitoring Search Console + analityka daily
Wyniki po 90 dniach:
Kluczowe czynniki sukcesu: (1) 100% 301 coverage przed migracją, (2) staging environment + 2-tygodniowe testy, (3) migracja w lutym (poza szczytem handlu), (4) codzienny monitoring Search Console pierwsze 30 dni z szybkim reagowaniem na 404.
Najczęstsze pytania
Czy przy migracji strony zawsze traci się pozycje w Google?
Nie — przy profesjonalnie przeprowadzonej migracji utrata pozycji jest minimalna (5-15% na 2-4 tygodnie, potem powrót do stanu pierwotnego lub lepszego). Przy źle zrobionej migracji spadki sięgają 50-80% ruchu organic i trwają miesiącami. Kluczowe czynniki sukcesu: (1) kompletna mapa 301 redirects starych URL → nowych, (2) zachowanie architektury informacji (breadcrumbs, linki wewnętrzne), (3) przed migracją — pełny audit SEO + snapshot pozycji, (4) po migracji — monitoring Search Console + szybkie reakcje na błędy.
Kiedy warto migrować stronę?
Migracja opłaca się gdy: (1) przestarzała technologia ogranicza rozwój (stary WordPress bez aktualizacji, Joomla, niestandardowy CMS bez wsparcia), (2) problemy z wydajnością niemożliwe do naprawy (Core Web Vitals czerwone), (3) design nie spełnia standardów konwersji 2026 (stara grafika, brak responsywności), (4) struktura URL niezgodna z SEO best practices, (5) potrzeba nowych funkcji (e-commerce, wielojęzyczność, rezerwacje) niedostępnych w obecnej platformie. Nie migruj dla samego marketingu — migracja to 4-12 tygodni pracy + 2-4 tygodnie risk SEO.
Ile trwa migracja strony?
Zależy od skali: strona wizytówkowa (do 10 podstron) — 2-3 tygodnie całkowitej pracy, strona firmowa (do 50 podstron + blog) — 4-6 tygodni, sklep internetowy (500+ produktów) — 8-12 tygodni, duże portale (1000+ URL) — 3-6 miesięcy. Główne etapy: audit obecnej strony (1 tydzień), mapowanie URL (3-5 dni), development nowej strony (największy blok czasu), testy na staging (tydzień), migracja live (1-2 dni), monitoring post-migration (2-4 tygodnie aktywnie, 2-3 miesiące pasywnie).
Co to jest 301 redirect i dlaczego jest kluczowy?
301 redirect to typ przekierowania HTTP oznaczający „stała zmiana adresu". Gdy Google (lub użytkownik) trafia na stary URL z 301 — jest automatycznie przekierowany na nowy adres. Google po 301 przenosi 90-95% wartości SEO starego URL na nowy (pozycje, linki przychodzące, autorytet). Bez 301 = stare URL pozostają w indexie Google, dostają 404, stracone pozycje. Dla każdego starego URL MUSI być 301 → nowy równoważnik. Nigdy nie używaj 302 (temporary redirect) do migracji — Google nie przenosi wartości.
Ile kosztuje profesjonalna migracja strony?
Ceny zależą od skali + stopnia komplikacji: Strona wizytówkowa → nowa wizytówka (ta sama platforma): 1500-3500 zł. Strona wizytówkowa → nowy stack (np. Wix → WordPress): 3000-6000 zł. Strona firmowa z blogiem: 5000-12000 zł. WordPress → headless (Next.js + Sanity): 12000-25000 zł. Sklep WooCommerce → Shopify (lub odwrotnie): 8000-20000 zł. Duży sklep z ERP integracjami: 25000+ zł. Koszty SEO part (mapa 301, audit) zwykle 15-25% total.
Co zrobić jeśli ruch spadł po migracji?
Nie panikuj — spadek 5-15% w pierwszych 2-4 tygodniach jest normalny (Google potrzebuje czasu na re-crawl i przetworzenie 301). Ale: (1) natychmiast sprawdź Search Console > Coverage — czy nowe URL są indexed, (2) Search Console > URL Inspection — sprawdź kilka URL ręcznie, (3) weryfikuj 301 redirects — użyj Screaming Frog lub httpstatus.io, (4) sprawdź robots.txt i sitemap.xml — czy nie blokujesz nowych URL, (5) sprawdź canonical tags — czy nie wskazują starych URL. Jeśli spadek >30% po 4 tygodniach — na pewno masz błąd techniczny, audit wymagany natychmiast.
Planujesz migrację? Zrób ją z profesjonalnym SEO
Umów bezpłatny audyt pre-migration. Oceimy stan obecnej strony, zaproponujemy mapę 301 redirects, wskażemy pułapki w Twoim przypadku, oszacujemy koszt migracji. 90% naszych klientów zyskuje pozycje po migracji, nie traci.
Umów audyt migracji