Pular para o conteúdo
AppFoyer
Começar

Guias app-ads.txt

Por que o AdMob diz que o seu app-ads.txt não foi encontrado

Como os rastreadores das redes de anúncios encontram o arquivo, as seis coisas que costumam impedi-los e como distinguir um problema real de um rastreamento que ainda não aconteceu.

Um resultado “not found” quase sempre é mecânico: nenhum site do desenvolvedor na página da loja, uma URL apontando para onde o arquivo não está, um redirecionamento, o tipo de conteúdo errado, uma linha malformada ou um rastreamento que ainda não aconteceu — o AdMob se dá 24 horas. Os arquivos em subdomínios do AppFoyer são verificados pelo AdMob.

1:09
Vídeo de 1:09 · abre no YouTube

Resolva isso em poucos minutos

A AppFoyer hospeda as páginas de que este guia trata — política de privacidade, termos, suporte, exclusão de conta e app-ads.txt — em um subdomínio próprio, sem que você precise de domínio ou servidor. Um app é grátis, e nada que uma loja exige jamais fica atrás de um paywall.

Verificado em 12 de outubro de 2026. As políticas das lojas mudam, às vezes sem aviso. Tudo abaixo tem link para a documentação oficial, e é aquela página — não esta — que tem a palavra final. Se as duas divergirem, vale o que a loja diz. Este guia foi traduzido do inglês; as citações da documentação das lojas são mantidas no inglês original.

Quando uma rede informa que o app-ads.txt não foi encontrado, quase sempre é uma de seis causas mecânicas: nenhum site do desenvolvedor na página da loja, uma URL do site que aponta para um lugar onde o arquivo não está, um redirecionamento na frente do arquivo, o tipo de conteúdo errado, uma linha malformada ou um rastreamento que simplesmente ainda não aconteceu. Nenhuma delas tem a ver com o seu app, a sua conta ou os seus blocos de anúncios.

O app-ads.txt é um padrão do IAB que permite a uma rede de anúncios confirmar que quem vende o inventário do seu app está autorizado a fazer isso. A rede o encontra pela URL do site exibida na página da loja — por isso todas as causas acima dizem respeito a essa URL, e não ao app.

Como o rastreador encontra o arquivo

A cadeia tem três elos, e uma quebra em qualquer um deles produz a mesma mensagem:

  1. A rede lê a URL do site do desenvolvedor na página da loja.
  2. Ela busca /app-ads.txt na raiz desse domínio.
  3. Ela procura uma linha com o nome da rede e o seu ID de editor.

Ou seja, o arquivo não é encontrado pelo seu app, pelo nome do pacote ou pela sua conta do AdMob. Ele é encontrado pela URL do site exibida na página da loja. Se ela estiver errada, nada mais importa.

As seis causas mais comuns

Nenhuma URL de site na página da loja. A mais comum. Se a página da loja não tem site do desenvolvedor, o rastreador não tem por onde começar. Na App Store, esse campo é a Marketing URL, que é opcional, e não a Support URL, que é obrigatória — veja app-ads.txt para apps iOS.

A URL aponta para um lugar sem o arquivo. A página da loja diz example.com, mas o arquivo está em www.example.com, ou em um caminho de página em vez da raiz do domínio.

Um redirecionamento. A especificação espera que o arquivo seja servido diretamente. Uma cadeia de redirecionamentos — até mesmo http → https, ou do domínio raiz para www — é uma causa frequente de falha. Sirva o arquivo com 200, no endereço que a página da loja informa.

O tipo de conteúdo errado. Ele precisa ser servido como texto simples. Um arquivo servido como text/html, ou uma plataforma de hospedagem que o envolve em uma página, não será interpretado.

Um erro de digitação na própria linha. O formato é rígido — domain, publisher id, relationship, certification id — e uma vírgula faltando ou um espaço a mais quebra a linha.

O rastreamento simplesmente ainda não aconteceu. As redes rastreiam de novo no próprio ritmo, normalmente medido em dias, não em minutos. Um arquivo enviado há uma hora que aparece como ausente geralmente só está cedo demais.

Como verificar você mesmo em dez segundos

curl -i https://your-domain.example/app-ads.txt

Você quer 200 OK, Content-Type: text/plain, nenhum cabeçalho Location: e as suas linhas no corpo. Se o curl está satisfeito e a rede ainda não, o problema está antes: a URL na página da loja ou o calendário de rastreamento.

Uma observação sobre subdomínios

A especificação se refere à raiz do domínio declarado na página da loja, e um subdomínio tem a sua própria raiz. Servir o arquivo em yourapp.example.page/app-ads.txt é, portanto, válido pela especificação quando esse endereço exato é o que a página da loja declara.

O AdMob documenta a regra em que isso se apoia: o rastreador dele “probe[s] up to one subdomain level from the developer website” (verifica até um nível de subdomínio a partir do site do desenvolvedor), e ele cita hospedagem em plataformas como o Firebase Hosting como um lugar aceitável para o arquivo.

O AdMob verifica arquivos em subdomínios do AppFoyer. Em outubro de 2026, o AdMob informou “app-ads.txt file found and verified” (arquivo app-ads.txt encontrado e verificado) para apps das duas lojas cujo site do desenvolvedor é um endereço do AppFoyer. Um rastreamento anterior, em 23 de setembro de 2026, havia informado um desses mesmos apps como não encontrado; agora ele passa sem nenhuma mudança da nossa parte. Se o AdMob disser “not found” para o seu endereço do AppFoyer, revise as causas acima e dê ao rastreamento as suas 24 horas. Ainda não temos resultado de rastreamento próprio de outras redes de anúncios.

O que o AppFoyer faz aqui

Servimos o arquivo como texto simples, sem redirecionamento e com os cabeçalhos que a especificação pede, oferecemos predefinições para as redes mais comuns e validamos cada linha enquanto você digita. Não prometemos que uma determinada rede vai aceitá-lo — veja o parágrafo acima.

As fontes oficiais