
Materiał porządkuje temat: canonical wskazuje zla wersje adresu po migracji strony.
Po migracji strony canonical może zacząć wskazywać złą wersję adresu, na przykład stary URL, adres testowy, wariant z parametrami, wersję bez ukośnika końcowego albo inną podstronę niż ta, którą chcesz pozycjonować. Efekt jest prosty: Google wybiera inną stronę kanoniczną niż zakładasz, a właściwy adres traci widoczność, nie indeksuje się stabilnie albo konkuruje z duplikatem.
Problem często wychodzi dopiero po kilku dniach lub tygodniach od migracji, gdy w Google Search Console pojawiają się komunikaty typu „Strona alternatywna z prawidłowym tagiem kanonicznym”, „Duplikat, Google wybrał inną stronę kanoniczną niż użytkownik” albo gdy w wynikach wyszukiwania widzisz nieaktualny adres. Poniżej znajdziesz praktyczną procedurę diagnostyczną dla właścicieli firm, marketerów B2B, e-commerce managerów i osób odpowiedzialnych za stronę.
Najważniejsza zasada: canonical nie jest dyrektywą, tylko silną sugestią dla Google. Jeśli sygnały na stronie są sprzeczne, Google może zignorować wskazany canonical i wybrać własną wersję adresu.
Objaw: Google wybiera inną stronę niż chcesz pozycjonować
Typowy scenariusz wygląda tak: po migracji strony ustawiasz nowe adresy URL, przekierowania 301 i mapę witryny, ale w Google Search Console widzisz, że Google jako kanoniczny wybiera inny adres. Może to być stary URL, kopia z poprzedniego CMS, wersja z domeny technicznej, strona z parametrami filtrowania albo adres o bardzo podobnej treści.
W praktyce oznacza to, że canonical wskazuje złą wersję adresu po migracji strony albo Google nie ufa sygnałom, które mu wysyłasz. Najczęściej problem dotyczy jednej z tych sytuacji:
Stary adres pozostaje kanoniczny
Nowa strona ma tag canonical prowadzący do starego URL, który powinien być już przekierowany lub wycofany z indeksu.
Canonical wskazuje środowisko testowe
Po migracji w kodzie zostaje domena stagingowa, subdomena deweloperska albo adres tymczasowy używany przed wdrożeniem.
Google wybiera inną podstronę
Wyszukiwarka uznaje, że dwie lub więcej podstron są duplikatami i wybiera wersję, której nie chcesz pozycjonować.
Indeksuje się wariant techniczny
W wynikach pojawia się wersja http zamiast https, adres z www zamiast bez www, wariant z parametrami albo inna struktura URL.
Dlaczego błędny canonical po migracji jest groźny dla SEO
Migracja strony to moment, w którym Google ponownie interpretuje strukturę serwisu, przekierowania, linkowanie wewnętrzne, mapy XML, treść i sygnały kanoniczne. Jeśli canonical wskazuje złą wersję adresu, wysyłasz sprzeczny komunikat: z jednej strony chcesz, aby Google zaindeksował nowy URL, a z drugiej mówisz mu, że ważniejszy jest inny adres.
Skutki mogą być poważne, szczególnie w serwisach B2B, sklepach internetowych i stronach z rozbudowaną architekturą informacji.
Utrata widoczności po migracji
Adres, który miał przejąć pozycje, nie jest traktowany jako główna wersja. Google może utrzymać w indeksie starszy lub mniej wartościowy wariant.
Rozproszenie sygnałów rankingowych
Linki, treść, przekierowania i canonical mogą wskazywać różne adresy. W efekcie Google ma problem z ustaleniem właściwej wersji.
Problemy z indeksacją ważnych podstron
Strony kategorii, ofert, produktów lub landing page mogą trafiać do raportów wykluczeń zamiast stabilnie budować ruch organiczny.
Trudniejsza analiza wyników SEO
Dane w raportach rozjeżdżają się między starymi i nowymi adresami, co utrudnia ocenę skuteczności migracji oraz działań SEO.
Jeśli problem dotyczy większej części serwisu, warto potraktować go jako krytyczny element SEO technicznego, a nie drobną kosmetykę w kodzie.
Najczęstsze przyczyny błędnego canonical po migracji
Canonical rzadko psuje się przypadkiem. Najczęściej jest efektem niedokończonej migracji, automatycznych ustawień CMS, błędnych szablonów albo niespójności między kilkoma sygnałami SEO.
Skopiowane tagi z poprzedniej wersji strony
Podczas migracji przeniesiono szablony, ale nie zaktualizowano wartości canonical. W kodzie nowych podstron nadal widnieją stare adresy URL.
Nieprawidłowe ustawienia w CMS lub wtyczce SEO
Wtyczka może generować canonical automatycznie, ale bazować na starych ustawieniach domeny, strukturze permalinków albo konfiguracji języków.
Brak spójności między canonical a przekierowaniami
Canonical wskazuje adres A, przekierowanie prowadzi do adresu B, a linkowanie wewnętrzne używa adresu C. To klasyczny problem po migracji.
Adresy testowe dostępne dla Google
Środowisko stagingowe zostało zaindeksowane lub nadal jest dostępne. Po wdrożeniu produkcyjnym canonical może wskazywać nieprawidłową domenę.
Duplikacja treści po zmianie struktury URL
Ten sam content działa pod kilkoma adresami, na przykład przez stare kategorie, filtry, paginację, parametry UTM lub sortowanie produktów.
Błędy w wersjach językowych
Canonical i hreflang mogą wskazywać sprzeczne adresy. Dotyczy to zwłaszcza serwisów po migracji domeny, katalogów językowych lub subdomen.
Niespójne warianty domeny
W kodzie pojawia się mieszanka wersji http, https, www, bez www, ukośnika końcowego i adresów z wielkością liter inną niż docelowa.
Canonical ustawiony globalnie w szablonie
Jeden błędny template może wygenerować ten sam canonical na wielu podstronach, przez co Google uznaje je za kopie jednej strony.
Diagnostyka krok po kroku
Przy problemie „canonical wskazuje zla wersje adresu po migracji strony” nie wystarczy sprawdzić jednego URL w przeglądarce. Trzeba porównać sygnały z kodu, nagłówków HTTP, mapy XML, linkowania wewnętrznego i danych z Google Search Console.
- Sprawdź URL w Google Search ConsoleUżyj narzędzia sprawdzania adresu URL. Porównaj pola „Kanoniczny zadeklarowany przez użytkownika” i „Kanoniczny wybrany przez Google”. Jeśli są różne, masz potwierdzenie konfliktu.
- Zweryfikuj tag canonical w kodzie stronyOtwórz źródło HTML i znajdź rel=”canonical”. Sprawdź, czy adres jest absolutny, aktualny, indeksowalny i zgodny z docelową wersją URL.
- Przetestuj status HTTP adresu kanonicznegoCanonical powinien wskazywać stronę zwracającą 200 OK. Nie powinien prowadzić do 301, 302, 404, 410, adresu z noindex ani strony zablokowanej w robots.txt.
- Porównaj canonical z przekierowaniamiSprawdź, czy stary adres przekierowuje bezpośrednio do nowego odpowiednika. Unikaj łańcuchów przekierowań i sytuacji, w której canonical wskazuje adres pośredni.
- Sprawdź linkowanie wewnętrzneMenu, stopka, breadcrumbs, linki w treści i moduły powiązane powinny prowadzić do wersji, którą chcesz indeksować. Linkowanie jest mocnym sygnałem wyboru kanonicznego URL.
- Porównaj mapę XML z canonicalMapa witryny powinna zawierać tylko indeksowalne adresy docelowe. Jeśli w sitemapie są stare lub alternatywne URL, Google otrzymuje sprzeczny sygnał.
- Wykonaj crawl serwisuPrzeskanuj stronę narzędziem crawlerowym i wyeksportuj listę URL z canonical. Szukaj adresów kanonicznych do innej domeny, starych ścieżek, przekierowań i duplikatów.
- Sprawdź szablony i reguły CMSUstal, czy problem dotyczy pojedynczych podstron, całej grupy typów treści, kategorii, produktów, wpisów blogowych czy wszystkich URL w serwisie.
Ważne: po migracji nie oceniaj canonical wyłącznie na podstawie jednego adresu. Jeśli błąd wynika z szablonu, może dotyczyć setek lub tysięcy podstron, nawet jeśli na pierwszy rzut oka widać go tylko w kilku przykładach.
Tabela diagnostyczna: co sprawdzić i jak interpretować wynik
| Element do sprawdzenia | Co oznacza problem | Rekomendowane działanie |
|---|---|---|
| Canonical w kodzie HTML | Adres wskazuje starą domenę, stary katalog, staging lub inny wariant URL. | Zaktualizuj generowanie canonical w CMS, szablonie lub wtyczce SEO. |
| Status adresu kanonicznego | Canonical prowadzi do 301, 404, noindex albo strony zablokowanej. | Ustaw canonical na finalny adres 200 OK, który ma być indeksowany. |
| Google Search Console | Google wybrał inną stronę kanoniczną niż użytkownik. | Porównaj canonical, redirecty, linkowanie wewnętrzne, sitemapę i podobieństwo treści. |
| Mapa XML | Sitemap zawiera stare URL albo adresy niezgodne z canonical. | Wygeneruj nową mapę XML i zgłoś ją ponownie w Search Console. |
| Przekierowania 301 | Stare adresy przekierowują do niewłaściwych odpowiedników lub przez kilka etapów. | Ustaw bezpośrednie przekierowania 1:1 do docelowych URL. |
| Linkowanie wewnętrzne | Serwis nadal linkuje do starych lub alternatywnych wersji adresów. | Zmień linki w menu, treści, breadcrumbs, stopce i modułach automatycznych. |
| Duplikaty treści | Kilka podstron ma bardzo podobną zawartość i konkuruje o wybór kanoniczny. | Scal treści, zróżnicuj intencje albo ustaw jasne reguły canonical i indeksacji. |
| Wersje językowe | Canonical i hreflang wysyłają sprzeczne sygnały. | Upewnij się, że każda wersja językowa wskazuje samą siebie jako canonical i ma poprawny hreflang. |
Jak naprawić canonical wskazujący złą wersję adresu
Naprawa powinna zacząć się od ustalenia docelowego standardu adresów. Musisz wiedzieć, która wersja jest właściwa: https czy http, www czy bez www, z ukośnikiem końcowym czy bez, z jaką strukturą kategorii, języków i parametrów.
1. Ustal jedną wersję kanoniczną dla każdego typu strony
Dla każdej grupy URL określ, który adres ma być indeksowany. Inaczej podejdziesz do stron usługowych, inaczej do kategorii e-commerce, produktów, artykułów blogowych, paginacji i filtrów. W serwisach po migracji przydaje się mapa starych i nowych adresów, która pokazuje relację 1:1.
2. Popraw generowanie canonical w źródle strony
Canonical powinien być generowany dynamicznie dla właściwego adresu, a nie wpisany na sztywno w szablonie. W praktyce trzeba sprawdzić ustawienia CMS, wtyczki SEO, szablonów, pól niestandardowych oraz ewentualnych reguł po stronie aplikacji.
- używaj pełnych adresów absolutnych, na przykład https://domena.pl/adres/;
- unikaj canonical prowadzących do adresów przekierowanych;
- nie wskazuj jako canonical stron z noindex;
- nie ustawiaj jednej strony jako canonical dla wielu różnych intencji wyszukiwania;
- nie zostawiaj canonical do domeny testowej po wdrożeniu produkcyjnym.
3. Uporządkuj przekierowania po migracji
Przekierowania 301 powinny prowadzić ze starych URL bezpośrednio do nowych odpowiedników. Jeśli stary adres A przekierowuje do B, B przekierowuje do C, a canonical na C wskazuje jeszcze D, Google dostaje serię niespójnych sygnałów. To zwiększa ryzyko, że wybierze inną wersję niż planowana.
Rekomendacja: po migracji zawsze zestaw canonical z mapą przekierowań. Adres docelowy z przekierowania 301 powinien być tym samym adresem, który strona wskazuje jako kanoniczny.
4. Zaktualizuj linkowanie wewnętrzne
Jeśli menu, linki w treści, stopka i breadcrumbs nadal prowadzą do starych adresów, Google może uznać, że to one są ważniejsze. Po migracji warto wykonać crawl i znaleźć wszystkie linki wewnętrzne do URL, które przekierowują, są nieindeksowalne lub mają inny canonical.
To szczególnie istotne, jeśli równolegle prowadzisz pozycjonowanie i chcesz utrzymać autorytet najważniejszych podstron sprzedażowych. Linkowanie wewnętrzne powinno wzmacniać te adresy, które faktycznie mają rankować.
5. Wyczyść mapę XML i zgłoś ją ponownie
Mapa XML nie powinna zawierać starych, przekierowanych, zablokowanych ani alternatywnych wersji adresów. Po poprawkach wygeneruj aktualną sitemapę i zgłoś ją w Google Search Console. Nie wymusi to natychmiastowej zmiany, ale ułatwi Google ponowne przetworzenie struktury serwisu.
6. Rozwiąż problem duplikacji treści
Jeśli Google wybiera inną stronę niż ta, którą chcesz pozycjonować, przyczyną może być nie tylko tag canonical, ale też zbyt podobna treść. Dotyczy to często stron ofertowych dla podobnych usług, kategorii e-commerce, wariantów produktów, parametrów filtrowania oraz artykułów przeniesionych z poprzedniego CMS.
- scal strony, jeśli obsługują tę samą intencję wyszukiwania;
- rozbuduj treść, jeśli różnice między URL są zbyt małe;
- ustaw noindex dla podstron, które nie powinny trafiać do wyników;
- zablokuj indeksację technicznych parametrów tylko wtedy, gdy rozumiesz wpływ na crawl;
- użyj canonical jako elementu strategii, a nie jako obejścia bałaganu w architekturze.
7. Poczekaj na ponowne przetworzenie i monitoruj efekty
Po wdrożeniu zmian Google musi ponownie odwiedzić adresy, przetworzyć przekierowania, zaktualizować sygnały i wybrać wersję kanoniczną. W zależności od wielkości serwisu oraz częstotliwości crawlowania może to potrwać od kilku dni do kilku tygodni.
Jeśli chcesz sprawdzić, czy problem jest częścią szerszych błędów migracyjnych, dobrym krokiem jest techniczny audyt SEO, obejmujący indeksację, crawl budget, przekierowania, canonical, mapy XML, robots.txt i linkowanie wewnętrzne.
Lista kontrolna po wdrożeniu poprawek
Po naprawie nie kończ pracy na zmianie jednego tagu. Sprawdź, czy cały ekosystem sygnałów SEO jest spójny.
- Canonical na każdej ważnej podstronie wskazuje finalny adres 200 OK.
- Adres kanoniczny nie jest zablokowany przez robots.txt.
- Adres kanoniczny nie ma meta robots noindex.
- Stare URL mają bezpośrednie przekierowania 301 do nowych odpowiedników.
- Nie ma łańcuchów i pętli przekierowań.
- Mapa XML zawiera wyłącznie aktualne, indeksowalne adresy.
- Linkowanie wewnętrzne prowadzi do docelowych wersji URL.
- Menu, breadcrumbs, stopka i moduły automatyczne nie używają starych adresów.
- Google Search Console pokazuje zgodność między canonical zadeklarowanym a wybranym przez Google.
- Duplikaty treści zostały scalone, zróżnicowane lub objęte właściwą strategią indeksacji.
- Wersje językowe mają poprawne relacje canonical i hreflang.
- Warianty http, https, www i bez www są konsekwentnie obsłużone.
Praktyczna wskazówka: jeśli po poprawkach Google nadal wybiera inną stronę kanoniczną, problem najczęściej leży nie w samym tagu canonical, lecz w silniejszych sygnałach: linkowaniu, przekierowaniach, duplikacji treści lub historii indeksacji starego adresu.
Kiedy warto skonsultować problem z ekspertem?
Nie każdy błąd canonical wymaga dużego projektu SEO. Jeśli problem dotyczy pojedynczej podstrony i wiesz, skąd wynika, często wystarczy korekta ustawień w CMS. Inaczej wygląda sytuacja po migracji domeny, zmianie struktury adresów, wdrożeniu nowego sklepu lub przeniesieniu serwisu na inny system.
Warto skonsultować problem z ekspertem, gdy:
Spadła widoczność po migracji
Najważniejsze podstrony straciły pozycje, a w Search Console pojawiają się rozbieżności między canonical zadeklarowanym i wybranym przez Google.
Problem dotyczy wielu typów URL
Błędy występują jednocześnie na stronach usług, kategoriach, produktach, blogu, filtrach lub wersjach językowych.
Nie masz pewności, które adresy powinny rankować
Serwis ma duplikaty, podobne landing page, wiele wariantów produktów albo rozbudowane filtrowanie i sortowanie.
Wdrożenia wymagają współpracy z developerami
Trzeba poprawić szablony, reguły canonical, przekierowania, mapy XML, linkowanie wewnętrzne i konfigurację aplikacji.
W RankHero analizujemy canonical w kontekście całej migracji, a nie jako oderwany fragment kodu. Sprawdzamy, dlaczego Google wybiera inną stronę niż ta, którą chcesz pozycjonować, i wskazujemy konkretne poprawki do wdrożenia przez zespół techniczny.
Masz problem z canonical po migracji strony?
Zweryfikujemy, czy Twoje adresy kanoniczne, przekierowania, mapa XML i linkowanie wewnętrzne wysyłają spójne sygnały do Google. Otrzymasz konkretną listę błędów, priorytety i rekomendacje naprawcze.
Warto wiedzieć przed kolejną migracją
Najlepszym sposobem na uniknięcie problemów z canonical jest przygotowanie migracji przed wdrożeniem, a nie gaszenie pożaru po spadkach widoczności. Plan powinien obejmować mapowanie adresów, reguły przekierowań, test canonical na środowisku przedprodukcyjnym, kontrolę robots.txt, aktualizację sitemap i crawl porównawczy starej oraz nowej wersji serwisu.
Jeśli chcesz uporządkować pojęcia związane z indeksacją, kanonicznością, przekierowaniami i architekturą SEO, zajrzyj do naszego słownika pojęć. Przy migracjach technicznych precyzyjne rozumienie tych elementów ułatwia rozmowę między marketingiem, SEO i zespołem developerskim.
FAQ
Czy Google zawsze respektuje tag canonical?
Nie. Canonical jest sugestią, a nie twardą dyrektywą. Google może wybrać inną stronę kanoniczną, jeśli uzna, że wskazany adres jest mniej odpowiedni, ma słabsze sygnały, jest przekierowany, zablokowany, podobny do innej strony lub niespójny z linkowaniem wewnętrznym.
Co oznacza komunikat „Google wybrał inną stronę kanoniczną niż użytkownik”?
Oznacza, że w kodzie strony wskazano jeden adres jako kanoniczny, ale Google uznał inny URL za właściwą wersję do indeksacji. Po migracji najczęściej wynika to z błędnych canonical, przekierowań, duplikacji treści, starej mapy XML lub linkowania do nieaktualnych adresów.
Czy canonical może wskazywać adres z przekierowaniem 301?
Nie powinien. Canonical najlepiej wskazywać bezpośrednio na finalny adres zwracający 200 OK. Jeśli canonical prowadzi do przekierowania, dokładacie Google dodatkowy krok interpretacyjny i zwiększacie ryzyko wyboru innego adresu.
Czy po migracji każda strona powinna mieć canonical do samej siebie?
W większości przypadków tak. Strony, które mają być indeksowane i pozycjonowane, powinny wskazywać same siebie jako canonical. Wyjątki dotyczą świadomie zaplanowanych duplikatów, wariantów filtrów, parametrów i innych stron alternatywnych.
Jak długo Google może utrzymywać starą wersję adresu jako kanoniczną?
To zależy od częstotliwości crawlowania, jakości przekierowań, spójności sygnałów i autorytetu starego adresu. W małych serwisach zmiana może być widoczna po kilku dniach, w dużych sklepach lub portalach czasem potrzeba kilku tygodni.
Czy usunięcie canonical rozwiąże problem?
Zwykle nie. Brak canonical nie uporządkuje duplikacji, przekierowań ani linkowania wewnętrznego. Może wręcz utrudnić Google wybór właściwej wersji. Lepiej poprawić canonical i pozostałe sygnały, zamiast usuwać tag bez planu.
Czy noindex i canonical można stosować razem?
Technicznie można, ale w większości przypadków nie jest to dobre rozwiązanie. Jeśli strona ma noindex, Google może nie przetworzyć sygnału canonical w oczekiwany sposób. Jeżeli chcesz przekazać sygnały do wersji kanonicznej, zwykle lepiej nie blokować strony noindex od razu, tylko zaplanować właściwą strategię indeksacji.
Jak sprawdzić, czy problem dotyczy całego serwisu?
Najlepiej wykonać crawl strony i wyeksportować wszystkie adresy z ich tagami canonical, statusami HTTP, indeksowalnością i linkowaniem wewnętrznym. Następnie trzeba pogrupować błędy według typów podstron, na przykład produkty, kategorie, blog, usługi, filtry i paginacja.
