204 Sem Conteúdo

O que significa HTTP 204, por que o Google trata respostas 204 de forma semelhante a soft 404s, quando 204 é usado legitimamente (APIs, beacons) e o que servir no lugar dele para páginas da web.

Publicado pela primeira vez: 27 de jun. de 2026 · Última atualização: 8 de ago. de 2026 · Avançado
Idiomas
1 sinal de evidência nesta página

HTTP 204 No Content é um código de sucesso 2xx que retorna intencionalmente um corpo vazio — não é um erro, não tem relação com a existência de uma URL e não é limitado pela especificação a um conjunto fixo de métodos. É a resposta correta para chamadas DELETE/PUT de APIs REST e beacons de analytics (sendBeacon, Measurement Protocol do GA4), embora designers de API discordem sobre com que frequência usá-la. A questão de SEO é restrita: a documentação do próprio Google diz que um 204 não fornece conteúdo para processar, então uma página que você quer ranquear não será indexada a partir dessa resposta — e, na prática, esses casos costumam aparecer como soft 404s no Search Console, embora o Google não garanta esse rótulo exato nem um prazo de remoção. Portanto, 204 é adequado para endpoints de API e beacon e errado para tudo que deveria ranquear. Se uma página realmente desapareceu, use 404 ou 410; se mudou, use 301; se deveria ter conteúdo, corrija o servidor/CDN que envia 204 em vez de 200 com um corpo real.

TL;DR — 204 é um código de sucesso 2xx compatível com a especificação (RFC 9110 §15.3.5) que retorna um corpo vazio por design — o corpo precisa estar vazio (sem Content-Length também, nem mesmo 0), e os navegadores podem rejeitar um 204 que envia conteúdo. Não é um erro e não diz nada sobre a existência; a RFC não o restringe a uma lista fixa de métodos. Os usos legítimos são quase todos para respostas que não são documentos: DELETE/PUT de APIs REST e beacons de analytics (sendBeacon(), o Measurement Protocol do GA4) — embora profissionais discordem sobre com que frequência as APIs deveriam usá-lo. A consequência de SEO é restrita: a tabela de códigos de status do Google diz claramente que, em um 204, “Google wasn’t able to receive any content and therefore can’t process it” (tradução) «o Google não conseguiu receber nenhum conteúdo e, portanto, não pode processá-lo» — o que significa que uma página que você quer ranquear não será indexada a partir dessa resposta e, na prática, essas páginas costumam ser sinalizadas como soft 404s no Search Console, embora o Google não garanta esse rótulo exato nem um prazo de remoção. Portanto, 204 é adequado para endpoints de API e beacon e errado para tudo que deveria ranquear. Se uma página realmente desapareceu, use 404 ou 410; se mudou, use 301; se deveria ter conteúdo, corrija o servidor/CDN que está enviando 204 em vez de 200 com um corpo real.

O que 204 significa na especificação

A RFC 9110 (HTTP Semantics) é inequívoca: um 204 indica que “o servidor cumpriu a solicitação com sucesso e que não há conteúdo adicional a enviar no corpo do payload da resposta”. É um código de sucesso — da mesma família 2xx que 200 OK — com a diferença deliberada de que não há corpo.

Evidence for this claim RFC 9110 defines 204 No Content as a successful response with no additional content to send and says it is terminated by the header section because it cannot contain content. Scope: HTTP semantics for 204 responses. Confidence: high · Verified: IETF: RFC 9110 §15.3.5 — 204 No Content

Três detalhes operacionais importam. Primeiro, o corpo realmente precisa estar vazio: o MDN observa que um 204 “must not include any content or the Content-Length header (browsers may reject responses that include content).” (tradução) «não deve incluir conteúdo nem o cabeçalho Content-Length (os navegadores podem rejeitar respostas que incluam conteúdo)». Isso é uma proibição real, não uma convenção flexível — a RFC 9110 §8.6 proíbe Content-Length em um 204 sem exceção, então “basta enviar Content-Length: 0” (uma correção que já vi ser recomendada) também não está em conformidade; a resposta termina na seção de cabeçalhos, ponto final. Segundo, quaisquer cabeçalhos que um 204 carregue — um ETag, um Last-Modified — descrevem a representação selecionada depois que sua ação foi concluída, não um corpo que foi enviado. Terceiro, um ETag aparece em alguns 204s (o exemplo do MDN é um PUT que atualiza um recurso no local), mas a RFC não exige que todo 204 inclua um — não conte com ele. Um 204 é armazenável em cache heuristicamente por padrão, salvo se o método ou cabeçalhos explícitos de controle de cache disserem o contrário.

Fundamentalmente, 204 não tem nada a ver com a existência de uma URL. Um endpoint de API que funciona pode retornar 204 para sempre. Essa é a diferença em relação a um 404 (não encontrado) ou 410 (gone) — eles tratam de ausência; 204 trata de uma solicitação bem-sucedida que deliberadamente não carrega payload.

Como o Google trata um 204

Esta é toda a história de SEO, e ela é mais restrita do que o texto genérico de blogs de fornecedores faz parecer. O Google indexa conteúdo. Um 204 não tem conteúdo. A documentação de códigos de status do próprio Google destaca o 204 com uma afirmação específica e limitada: enquanto a regra geral para 2xx é que “Google considers the content for processing,” (tradução) «o Google considera o conteúdo para processamento», a linha dedicada ao 204 diz que “Google wasn’t able to receive any content and therefore can’t process it.” (tradução) «o Google não conseguiu receber nenhum conteúdo e, portanto, não pode processá-lo».

Evidence for this claim Google says it treats a 204 response as though the URL returned a soft 404. Scope: Google Search indexing behavior for URLs returning HTTP 204. Confidence: high · Verified: Google: HTTP status codes and Search

Esse é o limite real, e vale ser preciso sobre o que ele promete e o que não promete. A orientação geral sobre 2xx em outra parte da página diz que conteúdo vazio ou semelhante a erro pode ser reportado como soft 404 — mas a linha do 204 não garante que todo 204 receberá esse rótulo específico no Search Console, e o Google não publica um prazo de remoção. O que é sólido: um 204 em uma URL de conteúdo não fornece nada ao pipeline de indexação do Google, então dizer que a URL não será indexada a partir dessa resposta é uma inferência razoável — não uma afirmação que eu estenderia para “perda garantida de ranking em todo o site” ou “recuperação automática do crawl budget”, porque a documentação do Google não promete nenhuma das duas coisas. Na prática, o Search Console costuma apresentar esses casos como soft 404s — esse é o padrão que já vi e sobre o qual escrevi — mas trate o rótulo específico e o momento como comportamento observado, não como garantia documentada.

Esta é a posição que mantenho nos meus próprios textos. No meu guia Códigos de status HTTP e seu impacto em SEO no blog da Ahrefs, na seção sobre como o Google trata respostas 2xx, escrevi diretamente: “Most 2xxs will allow pages to be indexed. However, 204s will be treated as soft 404s and won’t be indexed.” (tradução) «A maioria dos códigos 2xx permitirá que as páginas sejam indexadas. No entanto, os 204s serão tratados como soft 404s e não serão indexados.» Continuo defendendo essa leitura prática; a formulação mais precisa e atual da documentação do Google é o enquadramento “não consegue receber nem processar conteúdo” acima, e é essa que eu indicaria para o limite oficial exato.

Soft 404s são documentados como continuando a ser rastreados e desperdiçando crawl budget — mas essa é a orientação geral do Google sobre soft 404, não uma promessa específica para 204. Usar 204 não libera nem redireciona automaticamente recursos de rastreamento; a própria ressalva do Google é que a alocação de recursos depende de limites de serviço, qualidade do site e inventário, não do código de status que causou a exclusão.

Evidence for this claim Using 204 does not automatically free crawl budget or redirect crawl resources; the official Google 204 guidance establishes only that no content can be processed. Scope: web crawling and indexing Confidence: high · Verified: How HTTP status codes affect Google's crawlers

204 vs. os códigos com que ele é confundido

CódigoCorpoSignificaUso correto
200 (conteúdo real)PreenchidoSucesso, aqui está a páginaUma página que você quer indexar
200 (cópia vazia / “não encontrado”)Vazio ou texto de erroSucesso declarado, sem conteúdo real — um soft 404Nenhum; isso é um bug para corrigir
204Vazio por designSucesso, intencionalmente sem corpoAPIs, beacons — nunca uma URL de página
404Qualquer umNão encontradoUma página que desapareceu sem substituta
410Qualquer umGone (permanente)Uma página deliberadamente removida de forma permanente
301Movido permanentementeUma página que mudou para uma nova URL

A armadilha é que 204, 200 vazio, 404 e 410 podem acabar como “soft 404” no GSC quando não há conteúdo utilizável — mas eles sinalizam intenções muito diferentes para um cliente compatível com a especificação. 410 é o sinal deliberado de “isso existia e desapareceu permanentemente”; 204 nunca foi projetado para esse significado e não deveria aparecer em URLs de páginas.

Quando 204 é exatamente o certo (não um bug)

Quase todo 204 legítimo é uma resposta que não é um documento:

  • DELETE / PUT de API REST. Quando um cliente exclui um recurso ou o atualiza no local e não há nada significativo para retornar, 204 é a resposta idiomática — é o padrão recomendado pela própria RFC 9110.
  • Beacons de analytics e rastreamento. A especificação Beacon do W3C, construída em torno de navigator.sendBeacon(), espera que os endpoints de beacon respondam com 204. O endpoint do Measurement Protocol do Google Analytics 4 retorna 204 para hits que aceita. Um alerta importante: o GA4 retorna 204 até para payloads malformados ou inválidos, então esse 204 confirma apenas que o endpoint estava acessível e respondeu estruturalmente — não que o hit foi realmente processado. Não interprete o 204 de um beacon como prova de sucesso.
  • UX de “salvar sem sair da página”. Um PUT que salva o estado no local e mantém o usuário na página atual — o próprio enquadramento do MDN é que, com um 204, “the client doesn’t need to navigate away from its current page.” (tradução) «o cliente não precisa sair da página atual».

A linha comum é: essas não são URLs que alguém deveria indexar, então um 204 é correto e esperado. O problema é somente um 204 em uma URL de documento que deveria ranquear.

Uma nuance relacionada merece destaque: a RFC 9110 não restringe 204 especificamente a DELETE/PUT/beacons — esses são apenas os padrões comuns. A definição da especificação é neutra quanto ao método; o que importa é o contrato do próprio método e se seria útil retornar uma representação. Isso funciona nos dois sentidos. Uma requisição GET que retorna 204 é legal segundo o protocolo — profissionais discutem isso no Stack Overflow há anos — e a pergunta real para uma página indexável não é “204 em GET é permitido?”, mas “esta URL precisa entregar uma representação para ser encontrada?”. Para uma página que você quer ranquear, a resposta é sempre sim. Portanto, a regra de SEO não depende do método HTTP usado; depende de a URL ser um documento ou não.

Também vale saber que “204 é sempre certo para respostas de API” não é uma opinião universal nem entre designers de API. O texto do Postman apresenta 204 como opção padrão para ações sem nada a retornar; Brandur Leach defendeu o caso oposto — uma resposta de sucesso vazia pode ser levemente prejudicial para clientes de API que esperam receber uma representação (estado atualizado, um ID gerado, um campo calculado) mesmo depois de uma gravação bem-sucedida. Esse é um trade-off legítimo de design de API sobre ergonomia do desenvolvedor, não uma questão de correção HTTP — 204 continua compatível com a especificação em qualquer caso — e é separado da questão de SEO deste artigo. Um ponto em que textos sobre APIs às vezes são descuidados: enviar Content-Length: 0 em um 204 “por segurança”. Não faça isso — a RFC 9110 §8.6 proíbe Content-Length inteiramente em uma resposta 204, não apenas quando o valor é diferente de zero.

Diagnosticando e corrigindo um 204 acidental no nível da página

Se um rastreador (Screaming Frog, Ahrefs Site Audit) ou seus logs mostrarem 204 em uma página que deveria ter conteúdo:

  1. Confirme o que o Googlebot realmente recebe. Use a Inspeção de URL no Search Console para ver o status e o conteúdo renderizado que o Google recebe — não apenas o que o seu navegador vê. Uma CDN, um worker de borda, um WAF ou uma rota do aplicativo pode retornar 204 para bots ou sob condições específicas enquanto tudo parece normal para você (o mesmo padrão de “parece normal no meu navegador” que ocorre com um 403 perdido).
  2. Depois corrija de acordo com a intenção:
    • A página deve existir com conteúdo → encontre a lógica do servidor/CDN/aplicativo que emite 204 e restaure um 200 adequado com o corpo real.
    • A página desapareceu sem substituta → retorne 404 ou 410.
    • A página mudou → use 301 para a nova URL.
  3. Monitore. Observe o relatório de Indexação de páginas do GSC em busca de entradas de soft 404, acompanhe os códigos de status de rastreamento nos logs e configure seu rastreador para sinalizar 204s, para que um erro acidental em um template não desindexe silenciosamente uma seção inteira.

O modelo mental a manter é: 204 não é “ruim”. É uma ferramenta precisa, correta para endpoints de API e beacon e errada para documentos. O modo de falha é usá-la no lugar errado. Códigos próximos como 403, 404, 410 e soft 404 também têm seu lugar nessa decisão — o lugar do 204 é fora da página.

Try it live

This is a real endpoint on this site — not a simulation. Hit it from the button, open it in a new tab, or curl -i it from your terminal, and the server answers with the actual status code this article is about.

Open in new tab ↗

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.