IndexNow explicado: notifique os mecanismos de pesquisa ao publicar
Atualize as URLs de push nos motores de busca após a implantação.
Sites estáticos e blogs mudam sempre que você faz o deploy. Motores de busca que suportam IndexNow podem aprender sobre essas mudanças sem esperar pelo próximo rastreamento cego.
Esta página aborda por que isso importa, o que o protocolo faz e como integrá-lo em um fluxo de trabalho real, incluindo padrões que você pode reutilizar em sua própria automação ou em um pequeno CLI em Go.

Por que usar IndexNow em um site estático ou Hugo
Se você fazer deploy do Hugo para S3 ou similar, você já entrega HTML e um sitemap.xml. Os rastreadores eventualmente lerão o sitemap, mas o timing não está sob seu controle. Após uma migração ou um lote de novos posts, você se preocupa mais com indexação fresca do que com “algum dia na próxima semana”.
O IndexNow é um canal de empurrão (push). Você faz um POST com uma lista de URLs canônicas das quais você se importa. Motores participantes (incluindo Microsoft Bing e outros listados em indexnow.org) podem priorizar a busca por essas URLs. Isso não substitui redirecionamentos de URLs adequados ou linkagem interna, mas fecha o ciclo entre git push e consciência do motor de busca.
O que o IndexNow faz
Em alto nível, cada submissão é um POST HTTPS com JSON como este conceitualmente:
host- seu hostname do site (por exemplowww.exemplo.com)key- sua string secreta pré-geradakeyLocation(opcional) - URL completa do arquivo de verificação se não estiver no caminho padrãourlList- uma ou mais URLs absolutas naquele host que você deseja sinalizar
Os motores rejeitam chaves inválidas, hosts incorretos ou payloads malformados. O sucesso é geralmente HTTP 200 ou 202, dependendo do endpoint.
Você pode ler todas as regras e a lista de parceiros no site oficial. O modelo mental importante é prova de propriedade do domínio via um arquivo de texto mais lista explícita de URLs, não palavras-chave ou conteúdo da página.
Como preparar seu site
Arquivo de chave e hostname
- Escolha uma chave - uma string aleatória longa (trate como um segredo).
- Publique
https://seu-domínio/<chave>.txtcom apenas a chave como corpo (uma linha). - Use a mesma chave em seu CLI ou automação quando fizer o POST.
- Envie apenas URLs naquele host que você deseja que sejam rerastreadas (novos posts, páginas atualizadas ou alvos de redirecionamento).
Após mover muitas URLs de uma vez, você pode querer notificar em lote os caminhos. O IndexNow aceita múltiplas URLs em uma única solicitação, sujeito aos limites de cada motor.
Formas de enviar URLs
- POST manual - bom para depuração, use
curlcom JSON. - Plugins - alguns CMS e painéis de hospedagem incluem opções de IndexNow.
- Seu script de deploy - após
hugoe upload, chame um pequeno binário com a lista de URLs alteradas ou sua URL do sitemap.
Para um fluxo de trabalho Hugo, os gatilhos naturais são “após build” ou “após sincronização com o bucket”. Passe URLs HTTPS completas que correspondam ao seu site ao vivo, incluindo www vs ápice, se for isso que você serve.
Um pequeno CLI em Go (opcional)
Funcionalidades que você pode implementar
Uma ferramenta de linha de comando Go mínima se encaixa bem no IndexNow porque o payload é um POST JSON pequeno e você pode integrá-lo em scripts de deploy. Um design típico inclui:
- URL única ou múltiplas como argumentos posicionais
--sitemappara buscar umsitemap.xmle submeter cada<loc>(com--limitopcional)- Vários motores em paralelo via
--engines(por exemploindexnowpara o agregador global, ou endpoints por provedor) - Flags ou variáveis de ambiente como
INDEXNOW_KEY,INDEXNOW_WEBSITE_URLeINDEXNOW_ENGINES - Saída verbosa com
-vpara depurar respostas 403 ou 422
Construa com go build ou go install, instale o binário em seu PATH, depois chame-o após a publicação:
indexnow --key SUA_CHAVE --website https://www.exemplo.com https://www.exemplo.com/novo-post/
Para uma atualização completa do site após o deploy, você pode passar --sitemap com sua URL pública do sitemap. Documente códigos de resposta e listas de motores em seu próprio README e mantenha um trecho de shell publicar-depois-indexar junto com o que aciona seu deploy estático.
O post Melhores LLMs para OpenCode - testado localmente usou “implementar um notificador IndexNow em Go” como um benchmark de codificação - útil se você quiser ver como diferentes modelos lidam com a mesma especificação e tarefas estruturadas.
Dicas práticas
- Prefira o alvo de motor
indexnowquando quiser que uma submissão se propague através da infraestrutura compartilhada (veja searchengines.json e espelhe essa lista em seu próprio cliente se suportar múltiplos endpoints). - 429 significa desacelerar. 403 geralmente significa chave ou hostname incompatíveis. Corrija primeiro a localização do arquivo de chave ou o hostname.
- O IndexNow não substitui redirecionamentos 301 quando você renomeia caminhos. Notifique após os redirecionamentos estarem ativos.
Veja também
- Infraestrutura Web - o cluster completo para deploy de sites estáticos e indexação
- Melhores LLMs para OpenCode - testado localmente - inclui um benchmark de codificação do mundo real em torno deste protocolo
- Fazer deploy de site Hugo para AWS S3 - fluxo de deploy onde os ganchos pós-publicação se encaixam
- Protocolo oficial - indexnow.org