Pular para o conteúdo

Como medimos

Todo número deste site sai dos passos abaixo. Nada é estimado, e quando uma medição falha o teste avisa em vez de mostrar um valor.

Latência e jitter

O teste envia 12 pedidos pequenos ao servidor e mede o tempo de cada um. Os 2 primeiros são sempre descartados, porque pagam a abertura da conexão (DNS, TCP, TLS) e não dizem nada sobre o atraso em regime.

A latência é a mediana dos pedidos restantes. O jitter é a média da diferença entre cada pedido e o seguinte, na ordem em que as respostas chegaram. A ordem importa: se as amostras fossem ordenadas por valor antes da conta, vizinhos teriam sempre valores próximos e o jitter sairia menor do que é.

Se nenhum pedido tiver resposta, o teste para com uma mensagem de erro. Não existe latência "padrão".

Download e upload

No download, o navegador pede blocos de dados ao servidor e conta os bytes conforme chegam. No upload, envia blocos e usa o evento de progresso do navegador, que informa quantos bytes já saíram enquanto o pedido ainda está em andamento. Assim uma conexão lenta também gera amostras, em vez de aparecer como zero até o bloco terminar.

A cada 200 ms o teste calcula a velocidade daquele intervalo. As amostras do primeiro segundo são descartadas (rampa de subida) e o resultado é a mediana das demais. Não é o pico nem um percentil alto.

Se nenhum byte for transferido, por exemplo porque o servidor recusou os pedidos, o teste informa a falha. Ele não mostra 0 Mbps como se fosse uma medição.

O teste adaptativo

Cada etapa começa com 3 conexões de sondagem. Depois de 200 ms, o teste olha quantos bytes passaram e escolhe o plano da tabela. Redes lentas recebem blocos pequenos e mais tempo; redes rápidas, mais conexões e menos tempo, para não transferir mais do que o necessário. Cada pedido tem teto de 50 MiB no servidor.

Plano de transferência escolhido para cada faixa de velocidade
Velocidade nos primeiros 200 msConexõesBloco por pedidoDuração da etapa
abaixo de 5 Mbps164 KiB8 s
5 a 25 Mbps1512 KiB7 s
25 a 100 Mbps22 MiB5 s
100 a 500 Mbps48 MiB3 s
500 Mbps ou mais416 MiB2 s

O teste leve aplica um teto sobre esse plano: no máximo 3 s por etapa e 2 conexões. Ele é ligado sozinho quando o navegador informa rede móvel ou economia de dados, e pode ser desligado. O total transferido aparece depois de cada teste; o número conta a carga dos pedidos, sem os cabeçalhos HTTP.

Bufferbloat

Enquanto o download roda, o teste repete o pedido de latência a cada 700 ms. A mediana desses pedidos é a latência sob carga. O bufferbloat é essa latência menos a latência em repouso, e a nota segue a escala abaixo.

Escala da nota de bufferbloat
NotaLatência acrescentada sob carga
A+até 5 ms
Aaté 15 ms
Baté 35 ms
Caté 70 ms
Daté 150 ms
Facima de 150 ms

Limites do método

  • A latência é o tempo de um pedido HTTP, não um ping ICMP. Ela inclui algum trabalho do navegador.
  • Perda de pacotes não é medida: exigiria UDP, que uma página web não envia diretamente.
  • O servidor é o ponto da Cloudflare que a sua rede alcança primeiro, e não um servidor dentro da operadora. Testes hospedados na operadora tendem a mostrar números maiores.
  • O Wi-Fi entra na medição. Para avaliar o plano contratado, teste com cabo.
  • Outras abas e aparelhos usando a rede durante o teste reduzem o resultado, e é isso mesmo que o bufferbloat procura mostrar.
  • As frases por uso (jogos, 4K, chamadas) são derivadas dos números por regras fixas no código. São uma leitura do resultado, não uma garantia de desempenho em um serviço específico.

Dados e privacidade

O servidor aceita pedidos de teste só quando vêm das páginas do próprio site e limita a quantidade por endereço IP por minuto; o IP é usado nessa decisão e não aparece em resposta alguma. O provedor, a cidade e o código do servidor mostrados na tela vêm dos metadados de conexão da Cloudflare; quando não existem, a tela mostra um traço. O histórico fica no seu navegador. Detalhes na política de privacidade.

Perguntas sobre o método

Por que mediana, e não média ou pico?

O pico mostra os melhores 200 ms do teste, que a conexão pode alcançar uma vez e nunca sustentar. A média é puxada para baixo por uma única travada. A mediana das amostras depois do aquecimento é a velocidade que a conexão manteve ou superou em metade do teste: o número que mais se aproxima do que uma transferência longa experimenta.

Por que a latência é medida com pedidos HTTP?

Uma página web não consegue enviar pacotes ICMP nem UDP puro. Um pedido HTTP pequeno a um endereço que responde sem conteúdo é a sonda mais próxima disponível. Ele inclui um pouco de trabalho do navegador e do TLS; por isso descartamos os dois primeiros pedidos, que também pagam a abertura da conexão, e chamamos o resultado de latência, e não de ping.

Qual servidor o teste usa?

Os endereços do teste rodam em um Worker da Cloudflare, então os pedidos são respondidos no ponto da Cloudflare que a sua rede alcança primeiro. O código dele, no estilo de aeroporto, aparece em "Servidor do teste". Não escolhemos um servidor dentro da rede da sua operadora, e por isso o resultado pode ser menor que o de testes que fazem isso.

O que o teste não mede?

Perda de pacotes, que exige UDP; latência até um jogo ou serviço específico; e velocidades além do que o navegador e o aparelho conseguem processar, o que pesa acima de cerca de 1 Gbps. A qualidade do Wi-Fi entra em todos os números, porque o teste não consegue separá-la da conexão.