Artykuł / SEO i migracje
Przebudowa strony bez utraty pozycji w Google
Michał Czajka ·
Nowa strona potrafi stracić połowę ruchu z Google w tydzień, choć wygląda lepiej od starej. Prawie zawsze z tego samego powodu: stare adresy przestają działać, a nikt nie powiedział wyszukiwarce, gdzie jest ich nowa wersja. Ten tekst to lista rzeczy, które robię przy każdej przebudowie, żeby do tego nie dopuścić.
Dlaczego po przebudowie spada ruch
Google pamięta adresy, a nie wygląd. Jeśli strona /oferta/strony-www/ przez trzy lata zbierała linki i wizyty, to po zmianie na /uslugi/projektowanie/ dla wyszukiwarki jest to zupełnie nowa, nieznana strona. Stara zwraca błąd 404, a jej historia przepada.
Do tego dochodzą rzeczy mniej oczywiste: nowe tytuły bez fraz, które przynosiły ruch, treść skrócona „bo lepiej wygląda”, przypadkowo zostawiony znacznik noindex z wersji testowej albo plik robots.txt, który blokował roboty na serwerze deweloperskim i trafił na produkcję.
Krok 1. Zrób spis tego, co działa dziś
Zanim ktokolwiek dotknie projektu, zapisz, które adresy faktycznie przynoszą ruch i zapytania:
- Google Search Console → Skuteczność → Strony: lista adresów z kliknięciami z ostatnich 16 miesięcy,
- GA4 → strony docelowe z ruchu organicznego i z konwersjami,
- sitemap.xml starej strony i pełna lista adresów (dla małej strony wystarczy ręczny spis, dla większej crawler, np. Screaming Frog),
- linki z innych stron (Search Console → Linki), żeby wiedzieć, które podstrony mają wartość z zewnątrz.
Z tego powstaje tabela: stary adres, liczba kliknięć, czy ma linki, nowy odpowiednik.
Krok 2. Mapa przekierowań 301
Każdy stary adres, który miał ruch albo linki, dostaje przekierowanie 301 na najbliższy tematycznie nowy adres. Nie na stronę główną. Przekierowanie wszystkiego na stronę główną Google i tak traktuje jak błąd (tzw. soft 404).
| Stary adres | Nowy adres | Uwagi |
|---|---|---|
| /oferta/strony-www/ | /uslugi/projektowanie-stron/ | ten sam temat |
| /blog/ile-kosztuje-strona-2023/ | /blog/ile-kosztuje-strona-internetowa/ | treść zaktualizowana |
| /promocja-lato/ | — (410) | strona celowo usunięta |
Jeśli treść zniknęła na zawsze i nie ma odpowiednika, lepszy jest kod 410 Gone niż 404. Mówi Google wprost: usunięte celowo, nie wracaj.
Na serwerze Apache (większość polskich hostingów) robi się to w pliku .htaccess, na nginx w konfiguracji serwera, a w WordPressie można użyć wtyczki do przekierowań. Ważne, żeby przekierowania nie tworzyły łańcuchów (A → B → C). Każdy stary adres powinien prowadzić od razu do ostatecznego celu.
Krok 3. Sprawdź wersję testową, zanim ją opublikujesz
Na kopii roboczej sprawdzam zawsze te same rzeczy:
- czy każda strona ma unikalny tytuł i opis, a tytuły ważnych stron zachowały frazy, które przynosiły ruch,
- czy znacznik
<link rel="canonical">wskazuje na adres produkcyjny, a nie testowy, - czy w kodzie nie został
noindexi czy robots.txt nie blokuje całej strony, - czy dane strukturalne (schema.org) przeszły przez Rich Results Test,
- czy strona jest szybka na telefonie (PageSpeed, Core Web Vitals).
Krok 4. Dzień publikacji
Publikacja to nie jest moment na odpoczynek. Tego samego dnia:
- Testuję przekierowania z tabeli: każdy stary adres musi zwracać 301 i lądować na właściwej stronie.
- Wysyłam nową sitemapę w Search Console i usuwam z panelu stare sitemapy, jeśli adresy się zmieniły. Stare pliki potrafią latami kierować Google na nieistniejące strony.
- Proszę o zindeksowanie kilku najważniejszych podstron przez „Sprawdzenie adresu URL”.
- Wysyłam zmienione adresy przez IndexNow (to protokół, z którego korzysta m.in. Bing).
Krok 5. Pierwsze tygodnie po zmianie
Przez cztery do sześciu tygodni zaglądam do Search Console co kilka dni. Interesują mnie raport stron (rosnąca liczba błędów 404 to znak, że coś pominęliśmy), pozycje dla najważniejszych fraz i ruch na stronach, które wcześniej przynosiły zapytania. Niewielkie wahania w pierwszych dniach są normalne. Spadek, który nie wraca po dwóch tygodniach, trzeba zbadać.
Pułapka: stara strona, o której wszyscy zapomnieli
Przy porządkowaniu własnej domeny trafiłem na typowy przypadek. Google wciąż pamiętał adresy strony fotograficznej sprzed kilku lat i spamowe adresy, które nigdy nie były częścią strony, a w panelu Search Console wisiało dziewięć nieaktualnych sitemap. Część czasu, który robot Google poświęca domenie, szła na sprawdzanie tych śmieci zamiast nowych podstron. Pomogły przekierowania 301 dla starych treści, kod 410 dla spamu i usunięcie starych sitemap z panelu.
Jeśli Twoja domena ma za sobą kilka wersji strony, warto zrobić taki przegląd, nawet jeśli nie planujesz przebudowy.
Ile to kosztuje
W moich projektach plan migracji jest częścią każdego pakietu, bo bez niego nowa strona często zaczyna gorzej niż stara. Przy dużych serwisach z tysiącami adresów wyceniam go osobno, bo sama mapa przekierowań bywa wtedy kilkudniową pracą. Zakresy znajdziesz w cenniku, a przykład przebudowy z wieloma wersjami językowymi w case study GoWork's.