Przez 13 lat robilem setki migracji - domen, redesignow, zmian struktury URL. Kazda z nich zaczyna sie tak samo: klient mowi "chcemy nowa strone" i nie wspomina ani slowem o SEO. A potem, 3 tygodnie po starcie, przychodzi panika, bo ruch z Google spada o 40%.

Migracja strony bez utraty pozycji to nie czary. To plan, arkusz Excela i lista rzeczy do sprawdzenia zanim nacisniesz "go live". W tym artykule pokazuje, jak to robie krok po kroku.

Dlaczego migracja niszczy SEO - i kiedy nie musi

Google indeksuje Twoje URL-e, a nie "strone jako calalosc". Jesli przez lata budowales widocznosc podstrony /oferta/serwis-laptopow/, a po redesignie ten adres po prostu znika (albo odpowiada kodem 404), Google traci kotwice. Moc rankingowa, ktora tam byla, nie przenosi sie automatycznie na /uslugi/naprawa-laptopow/. Dla Googlebota stary i nowy adres to dwie rozne strony.

Przekierowanie 301 jest tym mostem. Mowi przegladarce i robotowi Google: "ta strona przeniosla sie na stale pod inny adres". Przenosi niemal cala wartosc SEO - badania Moza i Semrush wskazuja transfer bliski 99%. Warunek jest jeden: przekierowanie musi byc bezposrednie, bez lancuchow i petli.

Rozrozniamy tez typy migracji pod katem trudnosci SEO. Najprostszy to redesign na tej samej domenie bez zmiany URL-i - ryzyko minimalne, zwykle zero spadan. Trudniejszy to zmiana struktury URL-i na tej samej domenie - wymaga pelnej mapy przekierowan. Najtrudniejszy to zmiana domeny - tu dolacza sie jeszcze przeniesienie sygnalu z zewnetrznych linkow i koniecznosc aktywowania narzedzia w Search Console.

Etap 1: Audyt starej strony przed jakakolwiek zmiana

Zanim nowy projekt ruszy, robia pelny crawl starej strony. Do tego celu uzywam Screaming Frog SEO Spider (licencja ok. 250 USD/rok, darmowa wersja dziala do 500 URL-i). Eksportuje liste wszystkich URL-i zwracajacych kod 200 i zapisuje ja jako urls-stara-strona.csv.

Rownoczesnie z Google Search Console pobieram:

  • raport "Pokrycie" (ktore URL-e ma zaindeksowane Google),
  • raport "Linki" (ktore podstrony maja najwiecej linkow zewnetrznych).

Podstrony z linkami zewnetrznymi to priorytet. Jezeli po migracji wpadna w 404, stracisz nie tylko pozycje, ale tez moc przekazywana przez zewnetrzne serwisy.

Nie zaczynaj prac deweloperskich zanim nie masz listy wszystkich aktywnych URL-i. To podstawa mapy przekierowan. Bez niej programista nie wie, czego nie wolno mu kasowac.

Etap 2: Mapa URL - rdzen calej migracji

Mapa URL to arkusz z dwiema kolumnami: stary adres i nowy adres. Kazdy wiersz to jedna para. Wyglada banalnie, a jest najtrudniejsza czescia projektu.

Co musi byc w mapie URL

  • Wszystkie URL-e ze statusem 200 ze starej strony
  • Strony z linkami zewnetrznymi (priorytet 1)
  • Strony generujace ruch organiczny wg GSC (priorytet 2)
  • URL-e z wbudowanymi linkami wewnetrznymi do innych czesci serwisu
  • Stare adresy do plikow PDF, obrazkow, zasobow pobieranych bezposrednio
  • Ewentualne warianty URL (z ukosnikiem i bez, http i https)

Przy typowej stronie firmowej z 50-200 podstronami mape przygotowuje razem z klientem w Google Sheets. Przy sklepach WooCommerce z tysiącami produktow uzywam skryptow - eksportuje produkty przez WP-CLI, dopasowuje stare i nowe slug-i automatycznie. Mapa powinna byc gotowa i zatwierdzona przez klienta ZANIM programista zacznie prace - zmiana struktury URL w trakcie developmentu to prosta droga do chaosu i luk w przekierowaniach.

Jeden praktyczny trik: kiedy mapa jest gotowa, sprawdzam czy kazdy stary URL ma przypisany JEDEN cel. Podstrony, dla ktorych nie ma sensownego nowego odpowiednika, przekierowuje na najblizszego tematycznie rodzica lub na glowna kategorie - nigdy na strone glowna (to tak zwane "soft 404" i Google tego nie lubi).

2-4 tygodnietypowy czas powrotu pozycji po poprawnej migracji
180 dniminimalny czas utrzymania aktywnych przekierowan wg Google
99%transfer mocy SEO przez przekierowanie 301 (zrodlo: Moz, Semrush)
500darmowy limit URL-i w Screaming Frog (wersja free)

Etap 3: Wdrozenie przekierowan w WordPress

Na WordPressie uzywam wtyczki Redirection (darmowa, autor John Godley, ponad 2 mln instalacji). Pozwala importowac caly arkusz CSV jednym kliknieciem. Alternatywnie mozna wpisac reguly bezposrednio do .htaccess (serwery Apache) lub nginx.conf (nginx).

Najwazniejsza zasada: jeden hop, nie lancuch. Jesli przekierowujesz /stare-url/ na /srednie-url/, a /srednie-url/ na /nowe-url/, tracisz moc SEO na kazdym ogniwie. Wtyczka Redirection automatycznie wykrywa lancuchy i ostrzega - warto to sprawdzic przed startem.

Przy wiekszych projektach (sklepy e-commerce, portale) robie przekierowania po stronie serwera - reguly w .htaccess sa szybsze niz przekierowania PHP w WordPressie i mniej obciazaja baze danych.

Metody wdrozenia przekierowan 301 w WordPress

MetodaSzybkoscLatwos wdrozeniaKiedy uzywac
Wtyczka RedirectionSredniaBardzo latwaStrony do 500 URL-i, klient bez technicznego doswiadczenia
.htaccess (Apache)Bardzo szybkaSredniaSerwery Apache, duze sklepy, migracje z tysiącami URL-i
nginx.confNajszybszaTrudnaNginx, servery VPS, projekty enterprise
WP-CLI + skrypt PHPBardzo szybkaSredniaAutomatyczna migracja produktow WooCommerce

Etap 4: Aktualizacja linkowania wewnetrznego i sitemapy

Po wdrozeniu przekierowan idzie aktualizacja wszystkich linkow wewnetrznych w tresciach. Uzywam do tego:

  • Better Search Replace (wtyczka WP) - podmienia stare URL-e w calej bazie danych jednym zapytaniem,
  • lub WP-CLI: wp search-replace "stara-domena.pl" "nowa-domena.pl" --all-tables.

Potem odswiezam siteme XML. W Rank Math wystarczy jedno klikniecie, zeby wygenerowac nowa mape i wyslac ja do Search Console.

Sprawdz canonical na nowych URL-ach. Zdarzalo mi sie, ze po migracji nowa strona miala canonical wskazujacy na stary adres - bo deweloper skopiowal szablon bez aktualizacji tagu. Google wtedy ignoruje nowy URL jako duplikat.

Warto tez wspomniec o tematyce zwiazanej - jesli planujesz jednoczesnie przebudowac architekture informacji, warto przeczytac o tym jak redesign strony wiaze sie z utrzymaniem pozycji oraz jak wdrozyc schema.org po migracji, zeby nie stracic rozszerzen w wynikach wyszukiwania.

Etap 5: Google Search Console - narzedzie zmiany adresu

Przy zmianie domeny (nie przy redesignie na tej samej domenie) aktywuje narzedzie "Zmiana adresu" w Google Search Console. Znajdziesz je w ustawieniach wlasnosci > Zmiana adresu.

Wazne: narzedzie dziala tylko przy zmianie domeny glownej. Przy samej zmianie struktury URL na tej samej domenie nie ma takiego narzedzia - Google sam odkrywa zmiany przez crawl. Dlatego po redesignie wysylam zaktualizowana sitmape i recznie prosze o indeksowanie kluczowych stron przez opcje "Sprawdz URL" w GSC.

Narzedzie "Zmiana adresu" aktywuje sie PO wdrozeniu przekierowan, nie przed. Jesli wlaczysz je zanim serwer zacznie odpowiadac przekierowaniami 301, Google dostanie sprzeczne sygnaly.

Plusy

  • Przyspiesza crawl nowej domeny przez Google
  • Przenosi sygnal rankingowy szybciej niz tylko przekierowania
  • Bezplatne narzedzie wbudowane w GSC
  • Latwe w obsludze (3 klikniecia)

Minusy

  • Dziala tylko przy zmianie domeny, nie przy redesignie
  • Wymaga wcześniejszego wdrozenia przekierowan
  • Efekt widoczny po 180 dniach (tyle trwa pelne przetworzenie przez Google)
  • Nie zastepuje przekierowan 301 - to tylko uzupelnienie

Etap 6: Monitoring po starcie

Pierwsze 2 tygodnie po migracji to najwazniejszy okres. Codziennie sprawdzam:

  • GSC > Pokrycie - czy pojawily sie nowe bledy 404 albo URL-e zablokowane przez robots.txt,
  • GSC > Skutecznosc - czy klikniecia i wyswietlenia nie spada drastycznie,
  • Screaming Frog - szybki crawl po tygodniu, by wychwycic ewentualne lancuchy przekierowan.

Jesli ruch spada o wiecej niz 20% w ciagu pierwszego tygodnia, natychmiast szukam brakujacych przekierowan. Raz mialem klienta, u ktorego okazalo sie, ze hosting zmienil konfiguracje serwera i przekierowania z .htaccess przestaly dzialac po 48 godzinach od startu. Szybka reakcja uratowala sytuacje.

Warto miec tez pod reka narzedzie httpstatus.io lub podobne - pozwala sprawdzic pojedynczy URL, ile skokow robi przekierowanie i jakie statusy HTTP zwraca kazdy z nich. Przy lancuchu dluzszym niz 2 skoki tracisz moc SEO i spowalniasz ladowanie strony dla uzytkownikow. Dlatego po wdrozeniu robie przykladowy test 20-30 losowych URL-i ze starej strony i upewniam sie, ze kazdy odpowiada kodem 301 i laduje finalna strone w jednym skoku.

Checklista monitoringu po migracji (pierwsze 30 dni)

  • Codziennie: raport Pokrycie w GSC (bledy 404)
  • Codziennie: raport Skutecznosc w GSC (klikniecia, wyswietlenia)
  • Po 7 dniach: pelny crawl Screaming Frog nowej strony
  • Po 14 dniach: sprawdzenie najwazniejszych pozycji w Senuto, Semrush lub Ahrefs
  • Po 30 dniach: porownanie ruchu organicznego rok do roku lub miesiac do miesiaca
  • Przez 180 dni: nie usuwaj przekierowan 301

Kiedy migracja nie powoduje spadkow - i co na to wplywa

Mialem kilka migracji, ktore przeszly bez zadnych spadan. Wspolny mianownik:

  • Struktura URL pozostala niezmieniona (tylko nowa szata graficzna),
  • Lub tam gdzie sie zmienila, kazdy stary URL mial dokladne przekierowanie 1:1,
  • Tresc na kluczowych podstronach nie zostala skrocona ani przepisana,
  • Szybkosc strony (Core Web Vitals) nie pogorszyla sie po migracji.

Najgorsze przypadki, ktore widzialem u klientow, mieli jedno wspolne: zmiana domeny PLUS nowa struktura URL PLUS przepisanie tresci PLUS nowy hosting - wszystko naraz. Takie triple-play zawsze konczy sie 2-3 miesiacami walki o powrot do poprzednich pozycji.

Jesli planujesz duze zmiany, rozloz je w czasie. Zmiana domeny w lutym, nowa struktura URL w kwietniu, optymalizacja tresci w czerwcu. Kazdy etap osobno, z monitowaniem po kazdym.

Wiecej o calosciowym podejsciu do SEO technicznego znajdziesz w moich materialach na temat pozycjonowania SEO.

Najczęstsze pytania

Ile czasu zajmuje odzyskanie pozycji po migracji strony?

Przy poprawnie wdrozonych przekierowaniach 301 i zgloszonej zmianie w Search Console wiekszosc stron odzyskuje pozycje w ciagu 2-4 tygodni. Jesli jednak pominales przekierowania lub zmieniles rownoczesnie structure tresci, czas moze sie wydluzyc do 3-4 miesiecy. Duze sklepy e-commerce odczuwaja te wahania bardziej niz strony wizytowkowe.

Czy przekierowanie 301 przenosi caly PageRank na nowy adres?

Praktycznie tak - Google przekazuje przez 301 niemal cala moc rankingowa. Wieloletnie testy SEO wskazuja na transfer rzadu 99%. Tracisz minimalne ulamki procentu, ale nie ma to istotnego wplywu na pozycje jesli lancuch przekierowan jest krotki (1 skok, nie 3-4).

Czy moge zrobic migracje strony bez narzedzia Screaming Frog?

Tak, ale przy stronach powyzej 200 URL-i to ryzykowne. Darmowa wersja Screaming Frog skanuje do 500 URL-i, wiec przy mniejszych stronach mozesz sie zatrzymac na planie bezplatnym. Alternatywnie uzyj Ahrefs Site Audit lub Google Search Console - raport 'Pokrycie' pokaZe strony 404 po migracji.

Co zrobic gdy zmieniam jednoczesnie domene i przebudowuje strukture URL?

To najtrudniejszy scenariusz - Google musi przyswoic dwie zmiany naraz. Zalecam robic to etapami: najpierw zmien domene z identyczna struktura URL i poczekaj az Googlebot oswoi sie z nowa domena (ok. 4-6 tygodni). Dopiero potem reorganizuj strukture. Jesli musisz to zrobic jednoczesnie, przygotuj map URL z absolutna dokladnoscia i monitoruj GSC codziennie przez pierwsze 2 tygodnie.

Jak sprawdzic po migracji czy przekierowania dzialaja poprawnie?

Uzywam trzech narzedzi rownolegle: Screaming Frog (pelny crawl nowej strony z opcja 'Always Follow Redirects'), raport 404 w Google Search Console oraz wtyczki Redirection w WordPress. Wazne jest tez sprawdzenie lancuchow - narzedzie httpstatus.io pozwala szybko zobaczyc ile skokow ma dane przekierowanie.

Czy narzedzie 'Zmiana adresu' w Google Search Console wystarczy przy migracji domeny?

To narzedzie to przyspieszacz, nie zamiennik przekierowan 301. Bez przekierowan na serwerze narzedzie GSC nic nie da. Z kolei jesli masz przekierowania, ale nie uzyjesz narzedzia GSC, i tak w koncu odbudujesz pozycje - tylko zajmie to dluzej. Narzedzie 'Zmiana adresu' warto aktywowac po pelnym wdrozeniu przekierowan, nie przed.