Primeiro atraso de entrada (FID)

O que o First Input Delay media, seu limite de ≤100 ms, por que o INP o substituiu em março de 2024 e como interpretar dados antigos de FID hoje — uma referência de métrica legada de SEO técnico.

Publicado pela primeira vez: 3 de jul. de 2026 · Última atualização: 3 de ago. de 2026 · Avançado
Idiomas

First Input Delay (FID) é um Core Web Vital aposentado. Ele media apenas o atraso de entrada — a espera antes de o navegador poder começar a processar a primeira interação da página — não quanto tempo o manipulador executava nem quanto a página levava para repintar. Bom era ≤100 ms; ruim, >300 ms, medido em campo no percentil 75 (nunca no laboratório — o Total Blocking Time era o proxy). O INP substituiu o FID como Core Web Vital em 12 de março de 2024 — no mesmo dia em que o Search Console removeu o FID do relatório. As ferramentas do Chrome, o PageSpeed Insights e a API CrUX ao vivo continuaram informando a métrica por um pouco mais de tempo e pararam em 9 de setembro de 2024. Os dados históricos de FID ainda vivem no conjunto de dados CrUX BigQuery (até a versão 202409). Não confunda os limites 100/300 ms do FID com os 200/500 ms do INP e não tente converter o número de uma métrica no da outra. Não há mais nada para otimizar diretamente — mas as correções para tarefas longas de JavaScript que ajudavam o FID são as mesmas que ajudam o INP agora.

Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital Evidence for this claim FID measured only the delay before processing the first qualifying user interaction and was a field-only metric. Scope: Historical FID definition; use INP for current responsiveness assessment. Confidence: high · Verified: web.dev: First Input Delay

TL;DR — O FID foi o Core Web Vital de responsividade até ser substituído pelo INP em 12 de março de 2024 — a mesma data em que o Search Console também o removeu do relatório. As ferramentas do Chrome, o PageSpeed Insights e a API CrUX ao vivo mantiveram a métrica por mais algum tempo e a encerraram em 9 de setembro de 2024, cada um em seu próprio cronograma. Ela media somente o atraso de entrada da primeira interação — não o tempo de execução do manipulador nem a repintura — deliberadamente, para evitar incentivos perversos. Limites: bom ≤100 ms, ruim >300 ms no p75, somente em campo (Total Blocking Time era o proxy de laboratório — um diagnóstico correlacionado, não uma fórmula de conversão). Não confunda esses limites com os 200/500 ms do INP e não tente converter o número de uma métrica no da outra. FID ruim vinha da contenção da thread principal — tarefas longas de JavaScript — que é exatamente o que causa INP e TBT ruins, então as correções antigas ainda valem a pena. Os dados históricos de FID sobrevivem no conjunto de dados CrUX BigQuery (até a versão 202409); a métrica desapareceu de todas as ferramentas ao vivo.

Evidence for this claim TBT was a lab diagnostic for main-thread blocking associated with FID, but there is no universal TBT-to-FID, FID-to-INP or TBT-to-INP conversion. Scope: historical field metric Confidence: high · Verified: First Input Delay (FID)

O que o FID realmente media

A definição do Google era precisa. Segundo o web.dev: “FID measures the time from when a user first interacts with a page (that is, when they click a link, tap on a button, or use a custom, JavaScript-powered control) to the time when the browser is actually able to begin processing event handlers in response to that interaction.” Tradução: “O FID mede o tempo desde a primeira interação do usuário com uma página (isto é, quando ele clica em um link, toca em um botão ou usa um controle personalizado baseado em JavaScript) até o momento em que o navegador consegue realmente começar a processar os manipuladores de eventos em resposta a essa interação.”

Leia isso com atenção, porque o escopo conta toda a história. O FID capturava o atraso antes de o processamento começar — e nada depois. Não media quanto tempo o manipulador de eventos executava. Não media quanto tempo a página levava para pintar o resultado. Apenas a espera.

Por que o navegador alguma vez ficava “incapaz de começar”? O web.dev é direto sobre a causa: “In general, input delay (a.k.a. input latency) happens because the browser’s main thread is busy doing something else, so it can’t (yet) respond to the user.” Tradução: “Em geral, o atraso de entrada (também chamado de latência de entrada) acontece porque a thread principal do navegador está ocupada fazendo outra coisa e ainda não consegue responder ao usuário.” Há uma única thread principal e, se ela estiver no meio da análise ou execução de JavaScript quando o usuário agir, a interação ficará na fila até essa tarefa terminar. Eu defendo o mesmo ponto no meu guia de FID da Ahrefs: existe uma única thread principal, o JavaScript compete para executar tarefas nela e, enquanto uma tarefa está em execução, a página não consegue responder à entrada — essa parada é o atraso que o usuário realmente sente.

Por que o FID media apenas o atraso (não a interação inteira)

Isso parece uma falha de projeto até você entender o raciocínio. O Google media somente o atraso de entrada de propósito. Incorporar o tempo de execução do manipulador e a repintura à métrica poderia, como explica o web.dev, incentivar os desenvolvedores a manipulá-la — eles poderiam envolver a lógica do manipulador de eventos em um callback assíncrono para separá-la da tarefa da interação e fazer o número parecer melhor enquanto a experiência real ficava pior. Por isso, o FID permaneceu restrito.

Essa restrição também é a limitação fatal do FID. Uma página poderia apresentar um FID ótimo e ainda parecer lenta, porque toda interação depois da primeira ficava sem medição, e a parte lenta de uma interação muitas vezes é o processamento e a repintura que o FID ignorava. É justamente essa lacuna que o INP foi criado para fechar.

Os limites — e aquele que você verá as pessoas confundirem

AvaliaçãoFID
Bom≤ 100 ms
Precisa melhorar> 100 ms e ≤ 300 ms
Ruim> 300 ms

Medido no percentil 75 dos carregamentos de página, segmentado entre dispositivos móveis e desktop. A orientação do web.dev era simplesmente que os sites deveriam buscar um First Input Delay de 100 milissegundos ou menos. Meu próprio artigo sobre FID usa os mesmos números — bom ≤100 ms, precisa melhorar >100 ms e ≤300 ms, ruim >300 ms.

O erro comum: confundir os limites do FID com os do INP. São números diferentes para métricas diferentes. FID = 100 ms bom / 300 ms ruim. INP = 200 ms bom / 500 ms ruim. Vários resumos de terceiros — e até passagens de conteúdo automatizadas — misturam os dois; portanto, se você vir “200 ms” citado como o limite bom do FID, está errado.

O FID era uma métrica exclusivamente de campo

Você nunca conseguiria obter FID no Lighthouse ou em qualquer ferramenta de laboratório, porque ele exigia a primeira interação real de um usuário real — o web.dev afirma claramente que o FID só pode ser medido em campo, pois requer que um usuário real interaja com a página. As ferramentas de laboratório não clicam, então não havia nada para o FID cronometrar.

Evidence for this claim FID required a real user interaction and was field-only; Lighthouse did not directly measure FID. Scope: historical field metric Confidence: high · Verified: First Input Delay (FID)

O substituto de laboratório sempre foi o Total Blocking Time (TBT). Como explico no meu guia do PageSpeed Insights, você não encontrará FID nem INP nos dados de laboratório — eles exigem cliques na página que os testes de laboratório não reproduzem — então usa o Total Blocking Time como métrica proxy para trabalhar na melhoria. Essa relação sobreviveu ao FID: hoje o TBT é o proxy de laboratório do INP.

Vale deixar uma ressalva clara: o TBT é um diagnóstico correlacionado, não uma fórmula de conversão. Nunca existiu uma equação que transformasse um número de TBT em um número exato de FID, e também não existe uma para INP — uma pontuação ruim de TBT indica que o trabalho na thread principal é um provável culpado, não qual teria sido o seu FID ou INP em campo.

Por que o FID foi aposentado: a transição para o INP

A substituição do FID foi anunciada com bastante antecedência. Segundo o web.dev, o INP tornou-se oficialmente um Core Web Vital e substituiu o FID em 12 de março de 2024, quando o FID foi descontinuado e removido do programa. O motivo declarado pelo Google: com o tempo, ficou claro que era necessária uma nova métrica para capturar aspectos da interatividade que o FID não capturava.

Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital

A linha do tempo teve dois marcos distintos — vale mantê-los separados, porque é fácil (e comum, até em conteúdo automatizado) reduzi-los a uma única data:

  1. 12 de março de 2024 — aposentado como Core Web Vital. O INP assumiu o lugar; o FID deixou de fazer parte do conjunto principal relevante para ranking. O Search Console removeu o FID do relatório de Core Web Vitals no mesmo dia.
  2. 9 de setembro de 2024 — removido das ferramentas, em cronogramas específicos de cada produto. Segundo o web.dev, a partir dessa data o FID deixou de ser compatível com as ferramentas do Chrome. O PageSpeed Insights parou de exibir dados de FID de usuários reais e a API do CrUX deixou de fornecer a métrica; o conjunto de dados CrUX BigQuery deixou de adicionar novos campos de FID a partir da versão 202409, embora os meses anteriores continuassem consultáveis.
Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital

Não é correto dizer que toda superfície do Google abandonou o FID em 9 de setembro — o corte do Search Console ocorreu seis meses antes, ligado à substituição pelo INP, não à limpeza posterior das ferramentas.

O próprio artigo do web.dev sobre FID agora começa com o aviso de aposentadoria: First Input Delay não é mais um Core Web Vital e foi substituído pela métrica Interaction to Next Paint (INP). A documentação atual do Google Search Central sobre Core Web Vitals também não menciona o FID — cobre apenas LCP, INP e CLS. Quando o documento oficial de ranking deixa de nomear uma métrica, ela está tão aposentada quanto possível.

Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital

FID versus INP: o que mudou

As duas métricas medem coisas genuinamente diferentes, por isso você não pode simplesmente mapear uma na outra:

FID (aposentado)INP (atual)
Quais interaçõesApenas a primeiraTodas as interações da visita
O que é cronometradoApenas o atraso de entradaLatência completa: atraso de entrada + processamento + apresentação
Limite bom≤ 100 ms≤ 200 ms
Limite ruim> 300 ms> 500 ms
Fonte de dadosSomente campo (p75)Somente campo (p75, um valor extremo descartado a cada 50 interações)
Proxy de laboratórioTotal Blocking TimeTotal Blocking Time
StatusAposentado em março de 2024Core Web Vital
Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital

A linha central é esta: o FID cronometrava a porta de entrada de uma interação; o INP cronometra a jornada inteira de todas as interações. Não há fórmula que converta um número antigo de FID em um INP equivalente, e o FID de uma página em relação a outras não prevê sua posição no ranking de INP em relação às mesmas páginas — eles medem conjuntos de interações diferentes contra limites diferentes, então qualquer semelhança entre os dois números em uma página é coincidência, não regra. Consulte Interaction to Next Paint para o tratamento completo da métrica que o substituiu.

Onde os dados antigos de FID ainda vivem

A aposentadoria não vaporizou o registro histórico. O que desapareceu e o que permaneceu:

  • Desapareceu (ao vivo e voltado ao presente): o relatório de Core Web Vitals do Search Console deixou de exibir o FID em 12 de março de 2024, quando o INP assumiu. A interface do PageSpeed Insights e a API CrUX ao vivo continuaram informando a métrica por um pouco mais de tempo e pararam em 9 de setembro de 2024.
  • Ainda existe (histórico): dados de FID anteriores ao corte continuam consultáveis no conjunto de dados público CrUX BigQuery — mas somente até o conjunto de dados 202409; o BigQuery deixou de adicionar novos campos de FID a partir dessa versão, embora os meses anteriores permaneçam disponíveis. Se você precisar reconstruir o histórico de responsividade de um site, é ali que deve procurar — não nas ferramentas ao vivo. Fixe o mês do conjunto de dados ao citar um número, rotule-o como histórico e não trate uma cifra antiga de FID como numericamente comparável a uma cifra atual de INP — não há conversão entre elas (consulte a tabela de comparação acima).
Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital

O FID ainda importa hoje?

Diretamente, não — não há mais nada a medir ou relatar, portanto não há nada para “corrigir”. Mas as causas de um FID ruim e as causas de um INP ruim são quase idênticas: tarefas longas de JavaScript ocupando a thread principal. Assim, qualquer trabalho que você já tenha feito para melhorar o FID não foi desperdiçado. Como observo no meu guia de FID, embora o FID tenha sido substituído pelo INP em março de 2024, ainda vale trabalhar nos mesmos problemas subjacentes — muitas coisas que melhoram o TBT e o FID também melhoram o INP.

As correções que reduziam o FID são as mesmas que ajudam o INP e o TBT agora:

  • Reduza a quantidade de JavaScript que você envia.
  • Carregue o JavaScript mais tarde quando possível (async/defer).
  • Divida tarefas longas com divisão de código para que nenhuma tarefa monopolize a thread principal.
  • Mova o trabalho para fora da thread principal usando web workers.
  • Use renderização no servidor ou prerenderização para reduzir o trabalho no cliente.

O FID chegou a ser um grande fator de ranking?

Mesmo quando estava ativo, o FID — como parte dos Core Web Vitals — nunca foi um sinal de ranking forte. Representantes do Google caracterizaram repetidamente os Core Web Vitals como algo mais próximo de um desempate do que de um sinal primário, aplicado apenas quando os demais fatores são aproximadamente iguais. Minha própria leitura, no meu guia de Core Web Vitals, é a mesma: “I don’t think Core Web Vitals have much impact on SEO and, unless you are extremely slow, I generally won’t prioritize fixing them.” Tradução: “Não acho que os Core Web Vitals tenham muito impacto no SEO e, a menos que você seja extremamente lento, em geral não vou priorizar corrigi-los.” O FID raramente era destacado sozinho nos comentários de representantes — quase sempre era discutido como parte do conjunto de Core Web Vitals, não como uma alavanca de ranking independente.

Bing e FID

Não há efetivamente um ângulo específico do Bing aqui. O Bing nunca adotou os Core Web Vitals como um sinal de ranking nomeado da forma como o Google fez e nunca publicou limites próprios de FID (ou INP). O Bing se importa com páginas rápidas e responsivas em termos gerais, mas o FID foi uma métrica do ecossistema do Google do início ao fim.

Para onde ir agora

O FID fica sob a iniciativa Web Vitals, no cluster de Web Performance. As métricas mais relevantes para o FID são:

  • Interaction to Next Paint — o Core Web Vital que o substituiu e aquele que você deve realmente otimizar agora.
  • Total Blocking Time — o proxy de laboratório que representava o FID (e agora representa o INP) quando não era possível medir interações reais.
  • Core Web Vitals — o trio relevante para ranking (LCP, INP, CLS) ao qual o FID costumava pertencer.
Evidence for this claim INP replaced FID as a Core Web Vital on March 12, 2024. Scope: Core Web Vitals metric set. Confidence: high · Verified: web.dev: INP is now a Core Web Vital

Add an expert note

Pin an expert quote

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