204 No Content to kod statusu HTTP, który serwer zwraca klientowi w odpowiedzi na poprawnie wykonane żądanie, gdy nie ma żadnej treści do przesłania w ciele odpowiedzi. Oznacza sukces operacji — akcja została przetworzona, ale serwer celowo nie odsyła żadnych danych. Kod ten należy do grupy 2xx, sygnalizującej pomyślne przetworzenie żądania.
- Kod 204 potwierdza sukces operacji bez zwracania body odpowiedzi.
- Najczęściej pojawia się przy żądaniach PUT, PATCH, DELETE oraz żądaniach preflight CORS.
- Przeglądarka lub klient API po odebraniu 204 pozostaje na bieżącej stronie — nie wykonuje przekierowania.
- Różni się od 200 OK wyłącznie brakiem ciała odpowiedzi (response body).
Jak 204 No Content działa w praktyce
Serwer zwraca status 204, gdy operacja zakończyła się sukcesem, ale przesyłanie dodatkowych danych byłoby zbędne lub niepożądane. Klient (przeglądarka, aplikacja mobilna, skrypt JavaScript) interpretuje tę odpowiedź jako potwierdzenie: “zrobiłem to, o co prosiłeś — nie mam nic więcej do powiedzenia”.
Typowe scenariusze użycia
Kod 204 pojawia się najczęściej w trzech sytuacjach. Pierwsza to usuwanie zasobów — gdy klient wysyła żądanie DELETE /api/post/42, serwer kasuje wpis i odsyła 204 zamiast całego usuniętego obiektu. Druga to aktualizacja danych metodą PUT lub PATCH — klient wie, co wysłał, więc ponowne odesłanie zmodyfikowanego rekordu byłoby redundantne. Trzecia, bardzo techniczna, to żądania preflight CORS: przeglądarka wysyła wstępne żądanie OPTIONS, aby sprawdzić uprawnienia cross-origin, a serwer odpowiada 204 potwierdzając, że request może przejść dalej.
Porównanie kodów z grupy 2xx
| Kod | Nazwa | Body odpowiedzi | Typowe użycie |
|---|---|---|---|
200 | OK | Tak | GET, POST zwracający dane |
201 | Created | Tak (opcjonalnie) | POST tworzący nowy zasób |
204 | No Content | Nie | DELETE, PUT/PATCH, preflight CORS |
206 | Partial Content | Tak (fragment) | Pobieranie plików, streaming |
Co przeglądarka robi po odebraniu 204?
Zachowanie klienta po otrzymaniu kodu 204 jest ściśle zdefiniowane w specyfikacji HTTP (RFC 9110). Przeglądarka nie przeładowuje strony ani nie wykonuje żadnego przekierowania — użytkownik pozostaje w tym samym miejscu. Widok nie zmienia się, co jest celowe i pożądane, na przykład gdy formularz zapisuje dane w tle przez fetch lub XMLHttpRequest i nie powinien powodować żadnej wizualnej reakcji poza potwierdzeniem w JavaScript.
Znaczenie dla SEO i widoczności
Kod 204 nie jest kodem, który Googlebot napotyka podczas standardowego crawlowania stron, ale jego niepoprawne użycie może mieć negatywne konsekwencje dla indeksacji. Jeśli serwer zwróci 204 tam, gdzie powinno pojawić się 200 z treścią (np. dla żądania GET strony), Googlebot nie otrzyma żadnej zawartości do zindeksowania — URL pozostanie pusty w oczach robotów.
W kontekście audytu SEO warto zwrócić uwagę na kilka kwestii. Błędna konfiguracja API lub middleware, które zwraca 204 zamiast 200 na żądania GET stron renderowanych po stronie serwera, potrafi skutecznie wykluczyć całe sekcje witryny z indeksu Google. Dla prawidłowego pozycjonowania stron każdy URL, który ma się pojawić w wynikach wyszukiwania, musi zwracać kod 200 z kompletną treścią HTML.
Przy architekturach headless (Next.js, Nuxt, SvelteKit), gdzie frontend odpytuje własne API, niepoprawne mapowanie kodów odpowiedzi jest jednym z najczęstszych błędów wykrywanych podczas technicznych audytów. Googlebot renderuje JavaScript, ale jeśli żądanie do API zwróci 204 zamiast danych, strona wyrenderuje się jako pusta.
[], a nie 204).FAQ
Czym różni się 204 No Content od 200 OK?
Oba kody oznaczają sukces operacji, ale 200 OK zawiera ciało odpowiedzi z danymi, natomiast 204 No Content nie zawiera żadnych danych w body. Serwer używa 204, gdy odesłanie treści byłoby bezcelowe lub niepotrzebne — na przykład po usunięciu zasobu. W praktyce wybór między nimi powinien być świadomy i podyktowany semantyką operacji, a nie wygodą implementacyjną.
Czy 204 No Content blokuje indeksację przez Google?
Tak, jeśli zostanie zwrócony dla URL-a, który powinien być indeksowany. Googlebot traktuje 204 jako odpowiedź bez treści — nie ma czego zindeksować. URL może zostać wykreślony z indeksu lub nigdy do niego nie trafić. Kody 204 są bezpieczne wyłącznie dla endpointów API, które nie są bezpośrednimi adresami stron przeznaczonych do indeksacji.
Kiedy powinienem używać 204 zamiast innego kodu?
Kodu 204 używaj, gdy żądanie zakończyło się sukcesem i celowo nie chcesz nic odsyłać: przy metodach DELETE, PUT/PATCH bez potrzeby zwrotu zaktualizowanego zasobu, oraz przy obsłudze żądań preflight CORS (OPTIONS). Nie używaj go dla żądań GET, które mają zwracać dane — nawet pustą listę lepiej odesłać jako 200 [].
Jak sprawdzić, czy moja strona zwraca poprawne kody HTTP?
Możesz to zrobić narzędziami takimi jak DevTools w Chrome (zakładka Network), curl w terminalu (curl -I https://twojadomena.pl/url), Screaming Frog SEO Spider lub Google Search Console (raport Pokrycie / Indeksowanie). Systematyczny przegląd kodów odpowiedzi jest elementem rzetelnego audytu technicznego — szczególnie ważnego dla rozbudowanych sklepów i serwisów opartych na nowoczesnych frameworkach JavaScript.
Jeden kod, duże konsekwencje — zadbaj o poprawność HTTP
Status 204 No Content to mały, ale precyzyjny element architektury HTTP. Użyty we właściwym miejscu upraszcza komunikację między klientem a serwerem i nie generuje zbędnych danych. Użyty błędnie — potrafi skutecznie sabotować widoczność witryny w Google. Jeśli chcesz mieć pewność, że kody odpowiedzi na Twojej stronie są skonfigurowane poprawnie i nie hamują indeksacji, skontaktuj się z Webiti — przeprowadzimy pełny audyt techniczny i wskażemy konkretne błędy do naprawy.










