Kod 410 Gone to odpowiedź HTTP, którą serwer wysyła, gdy zasób pod danym adresem istniał, został usunięty celowo i nie wróci. Od błędu 404 różni się intencją: nie „nie znaleziono”, tylko „usunięte na stałe”. Ustawia się go dla wycofanych produktów, zakończonych promocji i skasowanych kategorii, które nie mają zamiennika. Dla Google to jednoznaczny sygnał, że adres można usunąć z indeksu bez sprawdzania, czy strona wróci.
Co dokładnie oznacza kod 410 Gone?
Kod 410 to odpowiedź klasy 4xx opisana w standardzie HTTP (RFC 9110, sekcja 15.5.9): zasób docelowy nie jest już dostępny na serwerze, a ten stan jest najprawdopodobniej trwały. RFC dodaje przy tym warunek, że jeśli właściciel nie wie, czy brak potrwa na stałe, czy tylko chwilę, powinien użyć kodu 404, nie 410.
Z definicji wynikają trzy cechy praktyczne:
- Odpowiedź 410 jest domyślnie cache’owalna: przeglądarki i serwery pośredniczące mogą zapamiętać, że adresu nie ma, i nie pytać o niego ponownie.
- Klient nie powinien ponawiać żądania: klient to przeglądarka albo inny program, który pyta o adres, a kod mówi mu wprost, że kolejne próby nie mają sensu.
- Linki do adresu z kodem 410 trzeba usunąć albo podmienić: jest to zadanie właściciela strony, nie robota.
Dokumentacja MDN wymienia typowe zastosowania: wygasłe promocje, przestarzałe dokumenty, strony usunięte bez przeniesienia pod inny adres, wycofane wersje API. W przeglądarce użytkownik nie widzi różnicy, bo strona błędu przy 410 wygląda tak samo jak przy 404: jej wygląd zależy od konfiguracji serwera i motywu, nie od kodu. Sam kod widać dopiero w nagłówku odpowiedzi, np. po poleceniu curl -I z adresem strony, gdzie w pierwszej linii pojawia się HTTP/2 410.
Czym różni się kod 410 od błędu 404?
Różnica jest w intencji i trwałości, nie w technice. Błąd 404 mówi „pod tym adresem nic nie ma” i nie przesądza, czy coś tu kiedyś było, ani czy się jeszcze pojawi. Kod 410 stwierdza wprost: „tu była strona, usunąłem ją celowo i nie wróci”.
Serwer zwraca 404 sam, gdy nie znajdzie zasobu: po literówce w linku, po usunięciu wpisu, po zmianie adresu. Kod 410 nigdy nie pojawia się przypadkiem, bo trzeba go ustawić regułą dla konkretnego adresu; jest więc deklaracją właściciela strony, a 404 tylko stanem serwera.
Dla użytkownika i przeglądarki oba kody działają identycznie. Różnicę czytają narzędzia i roboty wyszukiwarek, i to dla nich kod 410 istnieje.
Kiedy użyć kodu 410 zamiast 404?
Kod 410 ustawiasz, gdy sam usunąłeś stronę, nie planujesz jej przywracać i nie masz innego adresu, który odpowiada na tę samą potrzebę. Typowe przypadki:
- Wycofany produkt bez następcy: koniec produkcji, zamknięta linia.
- Zakończona promocja lub wyprzedaż bez powtórzenia pod tym samym adresem.
- Skasowana kategoria lub usługa, z której firma zrezygnowała na stałe.
- Strona usunięta celowo: nieaktualny cennik, stara oferta pracy, treść wycofana z powodów prawnych.
Kod 404 zostaje, gdy adres nigdy nie istniał (literówka, próba ataku), gdy nie wiesz, czy treść wróci, albo gdy błędnych adresów jest kilka i nie mają ruchu ani linków.
Kiedy użyć kodu 410 zamiast przekierowania 301?
Kod 410 usuwa adres, przekierowanie 301 przenosi go. Wybierasz 301, gdy istnieje strona o tej samej tematyce, na którą użytkownik i sygnały rankingowe (linki, pozycje) mogą przejść. Jeśli takiej strony nie ma, zostaje 410, bo ten kod niczego nie przenosi, tylko kończy życie adresu.
Przekierowanie 301 „na siłę” na stronę główną lub kategorię nadrzędną jest gorsze od obu tych rozwiązań: Google klasyfikuje je jako soft 404, bo cel przekierowania nie odpowiada na potrzebę użytkownika z usuniętego adresu.
| Kod | Sygnał dla robota | Co dzieje się z linkami i pozycjami adresu | Przykład w sklepie |
|---|---|---|---|
| 404 Not Found | „Nic tu nie ma”, bez informacji, czy wróci | Przepadają po usunięciu adresu z indeksu | Literówka w linku z newslettera, adres, który nigdy nie istniał |
| 410 Gone | „Usunięte celowo i na stałe” | Przepadają, ale robot nie musi sprawdzać, czy strona wróci | Wycofany produkt bez następcy, zakończona promocja |
| 301 Moved Permanently | „Treść jest pod nowym adresem” | Przechodzą na nowy adres | Nowy model zastępuje stary, kategoria połączona z inną |
Zasada decyzyjna w jednym zdaniu: jeśli jest strona odpowiadająca na tę samą potrzebę, ustaw 301; jeśli jej nie ma, a usunięcie jest ostateczne, ustaw 410; jeśli nie wiesz, zostaw 404.
Jak Google traktuje kod 410?
Oficjalna dokumentacja Google Search Central opisuje wszystkie kody 4xx (poza 429) łącznie: to sygnał, że treści nie ma. Adresy, które były już w indeksie, Google z niego usuwa, a nowo napotkane z kodem 4xx pomija. Dokumentacja nie rozróżnia 404 od 410 pod względem szybkości usuwania ani nie mówi, kiedy wybrać który kod.
Wokół różnicy między nimi narosło uproszczenie „410 usuwa natychmiast, 404 po dobie”. Pochodzi ono ze starszych wypowiedzi Google (Matt Cutts), według których 410 mógł być przetwarzany od razu, a 404 dopiero z opóźnieniem około doby. Późniejsze komentarze (John Mueller, cytowany przez Search Engine Roundtable) są ostrożniejsze: Google czasem chce potwierdzić 404 przed usunięciem adresu z indeksu, a przy 410 robi to zwykle szybciej. Różnica jest jednak niewielka, rzędu dnia lub dwóch, i końcowy efekt obu kodów wychodzi ten sam.
410 to jednoznaczniejszy sygnał, nie gwarancja tempa. Google nie musi go dodatkowo weryfikować, więc adres może zniknąć z wyników nieco szybciej, ale to nie jest narzędzie do pilnego usuwania stron z wyszukiwarki. Kod 410 stawiasz dla porządku i czystego sygnału, nie dla tempa.
Setki adresów wycofanych produktów w sklepie?
Nie wiesz, które przekierować, a które zamknąć kodem 410? Napisz do nas, przejrzymy raport Search Console i przygotujemy listę decyzji w ramach pozycjonowania.
Jak ustawić kod 410 w WordPressie?
WordPress sam z siebie nie zwraca kodu 410, więc ustawiasz go regułą dla konkretnego adresu. Są trzy sposoby:
Rank Math SEO
Redirections → Add New, w polu Redirection Type zamiast „301 Permanent Move” wybierz „410 Content Deleted”. Pole Destination URL zostaje puste, bo nie ma dokąd przekierować.
Wtyczka Redirection
Przy dodawaniu reguły podaj stary adres w polu Source URL, z listy kodów wybierz 410, a pole Target URL zostaw puste.
Plik .htaccess
Dla danego adresu dodajesz regułę z flagą [R=410,L], czyli ten sam mechanizm co przy przekierowaniach 301, tylko z innym kodem.
Po zapisaniu sprawdź wynik poleceniem curl -I z adresem: pierwsza linia odpowiedzi ma brzmieć HTTP/2 410. Pełną instrukcję z ekranami panelu, składnią reguł .htaccess i pobraniem listy adresów z Search Console znajdziesz we wpisie Jak naprawić błąd 404 w WordPressie?

Kiedy stosować kod 410 w sklepie internetowym?
W sklepie kod 410 zostawiasz dla adresów produktów, kategorii i promocji, które zniknęły na stałe i nie mają następcy – gdy następca istnieje, właściwe jest przekierowanie 301, a gdy brak jest chwilowy, adres zostaje z kodem 200 i informacją o dostępności.
Pełne drzewo decyzyjne dla wszystkich przypadków, razem z kategorią sezonową i produktem czekającym na dostawę, opisujemy we wpisie Co zrobić ze stroną wycofanego produktu w sklepie?
Adresy w sklepie z niewłaściwym kodem?
Napisz do nas, sprawdzimy kody odpowiedzi oraz raport Strony w Search Console i podpowiemy, co zmienić.
FAQ
Technicznie tak: usuwasz regułę, adres znów odpowiada kodem 200 z treścią, a Google przetwarza go ponownie przy kolejnej wizycie robota. Odpowiedź 410 jest jednak cache’owalna i mówi programom pytającym o adres, żeby nie ponawiały żądań, więc nie nadaje się do tymczasowego wyłączania stron. Jeśli nie masz pewności, że usunięcie jest ostateczne, standard HTTP wskazuje kod 404.
Sam kod nie zmienia budżetu bardziej niż 404: adres bez treści, do którego prowadzą linki wewnętrzne, robot i tak pobiera, dopóki te linki istnieją. Więcej daje wyczyszczenie linków do takich adresów z menu, list produktów i treści wpisów. Czym jest budżet indeksowania i kiedy ma znaczenie, opisujemy we wpisie Co to jest crawl budget?
Tak. Kod odpowiedzi jest niezależny od wyświetlanej treści, więc serwer może przy 410 pokazać tę samą stronę błędu co przy 404, z menu, wyszukiwarką i kontaktem. Użytkownik dostaje pomoc, a robot kod „usunięte na stałe”.
Nie. Standard HTTP definiuje 410 jako odpowiedź dla zasobu, który był dostępny i został usunięty. Adresy z literówkami i próby ataków nigdy nie miały treści, więc zostają z kodem 404, który serwer zwraca sam, bez żadnej reguły.
Źródła
- RFC 9110 „HTTP Semantics”, sekcja 15.5.9 (410 Gone): rfc-editor.org/rfc/rfc9110
- MDN Web Docs, „410 Gone”: developer.mozilla.org
- Google Search Central, „Kody stanu HTTP oraz błędy sieci i DNS”: developers.google.com
- Search Engine Roundtable, wypowiedź Johna Muellera o różnicach między 410 a 404: seroundtable.com
- Search Engine Journal, wypowiedź Matta Cuttsa o 404 i 410: searchenginejournal.com
