Você deve fazer preconnect em redes de anúncios?

Fazer preconnect em redes de anúncios pode parecer uma ótima ideia para veicular anúncios rapidamente, mas geralmente isso apenas deixará a exibição de anúncios mais lenta, junto com outras métricas importantes.

Arjen Karel Core Web Vitals Consultant
Arjen Karel - linkedin
Last update: 2024-07-29

Você deve fazer preconnect em redes de anúncios?

Sempre que audito um site, sempre observo as estratégias de resource hints. Às vezes, os clientes fazem preconnect em redes de anúncios e essa é uma escolha interessante. A ideia é bem óbvia: ao fazer preconnect em redes de anúncios, eles esperam acelerar os anúncios e, consequentemente, aumentar a receita.

Há uma desvantagem nessa estratégia. Tudo o que você faz no início do carregamento da página leva tempo (na forma de uso de ciclos de CPU e uso da rede). Esse é um tempo precioso que, se usado incorretamente, pode tornar mais lentos outros recursos mais importantes.

Neste artigo, analiso mais detalhadamente o uso de preconnect em redes de anúncios.

Contexto: o que é preconnect

Um preconnect é uma dica para os navegadores de que o usuário provavelmente precisará de recursos da origem do recurso de destino e, portanto, o navegador pode melhorar a experiência do usuário iniciando preemptivamente uma conexão com essa origem

Contexto: Como funcionam as redes de anúncios?

As redes de anúncios são plataformas que conectam anunciantes e editores, facilitando o processo de exibição de anúncios em vários sites, aplicativos ou outras plataformas digitais. Elas funcionam reunindo dois participantes principais: anunciantes que desejam promover seus produtos ou serviços e editores que têm espaço publicitário disponível em suas plataformas.

Fazer preconnect em redes de anúncios é mais rápido?

Resposta curta: Não, em todos os testes para todos os clientes (de 5 mil a 15 milhões de visualizações de página diárias) com os quais trabalhei, o Real User Metrics mostrou que fazer preconnect em servidores de anúncios apenas torna o Largest Contentful Paint mais lento. Na maioria dos casos, liberar recursos até levou a exibições de anúncios mais rápidas.

Basta dar uma olhada neste exemplo da vida real. O cliente passou de 1,8 milhão de páginas boas para 6,24 milhões de páginas boas em apenas 3 meses depois que removi os preconnects de anúncios!

Resposta longa, provavelmente não. As redes de anúncios geralmente funcionam carregando um único script. Este script pode acionar o download de mais alguns scripts (hospedados em hosts diferentes!). Depois as coisas ficam complicadas, mas basicamente a rede de anúncios tenta preencher seus espaços de anúncios. Para cada espaço de anúncio, ela precisará baixar novos recursos (html, imagens, css, fontes, novos scripts, etc) de servidores diferentes.

Então vamos detalhar isso

O problema com o preconnect em geral

O preconnect abrirá uma conexão com um servidor externo logo no início do processo de renderização. O objetivo do preconnect é ter uma conexão já aberta com esse servidor assim que os arquivos forem necessários. Isso pode economizar um tempo valioso, mas tem um custo.

Em primeiro lugar, as conexões de rede iniciais competirão por outros recursos de rede muito cedo no processo de renderização. Neste momento, os recursos mais importantes, como a imagem do LCP, folhas de estilo e fontes não foram baixados ainda. Portanto, não é um bom momento para competir por recursos!

Em segundo lugar, não temos como saber se realmente precisaremos dessa conexão de rede. Talvez o script já esteja no cache do navegador e a conexão aberta não será usada por esse motivo. Nesse caso, mesmo que o preconnect fosse mais rápido, por causa do cache no lado do cliente, estamos apenas adicionando uma nova conexão inútil para cada visita repetida!

Como regra geral, geralmente é melhor fazer preconnect apenas para os domínios de recursos mais importantes (como o seu CDN principal)

Você deve fazer preconnect no script de anúncio principal?

Fazer preconnect no script de anúncio principal apenas acelerará os anúncios se o script do anúncio, por algum motivo, não for detectável pelo preload scanner

Se você deseja priorizar seus anúncios e, por algum motivo, não está usando uma tag de script externo normal <script async src="https://adnetwork.ext/script.js"> e o script de anúncio não pode ser armazenado em cache pelo navegador, então (e somente então!) fazer preconnect pode ser uma boa ideia! Em todos os outros casos, é melhor não fazer preconnect.

Você deve fazer preconnect em domínios que as redes de anúncios usarão mais tarde

Fazer preconnect em domínios que as redes de anúncios usarão posteriormente nos lances e no posicionamento apenas criará um grande congestionamento de tráfego de rede logo no início do carregamento da página. Testes ao vivo mostraram repetidas vezes que isso é muito menos eficiente do que abrir a conexão da rede de anúncios em tempo real. Então não! Você provavelmente estará muito melhor deixando o navegador lidar com as conexões com as redes de anúncios no seu próprio tempo

Quais redes de anúncios eu testei??

Interessado em saber se este artigo se aplica à sua rede de anúncios? Estes são todos os preconnects que testei no ano passado. Se sua rede de anúncios não estiver na lista, não significa que você deve fazer preconnect. Apenas significa que eu não testei isso para você. Você deve configurar um teste A/B e testar o que funciona melhor para você!


<link rel="preconnect" href="//securepubads.g.doubleclick.net">
<link rel="preconnect" href="//www.google.com">
<link rel="preconnect" href="//adservice.google.com">
<link rel="preconnect" href="//tpc.googlesyndication.com">
<link rel="preconnect" href="//pagead2.googlesyndication.com">
<link rel="preconnect" href="//www.gstatic.com">
<link rel="preconnect" href="https://s0.2mdn.net" />
<link rel="preconnect" href="https://googleads.g.doubleclick.net" />
<link rel="preconnect" href="https://www.googleadservices.com" />
<link rel="preconnect" href="https://dis.criteo.com" />
<link rel="preconnect" href="https://c1.adform.net" />
<link rel="preconnect" href="https://snap.licdn.com" />
<link rel="preconnect" href="https://visitor.omnitagjs.com" />
<link rel="preconnect" href="https://secure.adnxs.com" />
<link rel="preconnect" href="https://cdn.brandmetrics.com" />
<link rel="preconnect" href="https://p.adsymptotic.com" />
<link rel="preconnect" href="https://bidder.criteo.com" />
<link rel="preconnect" href="https://gum.criteo.com" />
<link rel="preconnect" href="https://sslwidget.criteo.com" />
<link rel="preconnect" href="https://static.criteo.net" />

Your Lighthouse score is not the full picture.

Lab tests run on fast hardware with a stable connection. I analyze what your actual visitors experience on real devices and real networks.

Analyze Field Data
Você deve fazer preconnect em redes de anúncios?Core Web Vitals Você deve fazer preconnect em redes de anúncios?