Objetivos de aprendizado
Depois de ler este artigo, você vai conseguir:
- Entender o que compõe a conta de uma CDN: tráfego, requisições e origem
- Estimar o custo mensal do seu site com a tabela atual de cada provedor
- Identificar os custos escondidos: região, cache miss, extras e câmbio
A pergunta "quanto custa uma CDN" tem duas respostas verdadeiras ao mesmo tempo: nada e muito. Um blog com algumas centenas de visitas por dia cabe na faixa sem mensalidade de vários provedores. Um site de vídeos com público no Brasil inteiro pode gerar uma conta de centenas de dólares por mês. O que separa os dois casos não é a marca da CDN, e sim o volume e a região do tráfego.
Para estimar a sua conta, você precisa saber do que ela é feita, aplicar os preços atuais de cada provedor (as tabelas mudam, então consulte sempre a página oficial) e procurar os custos que ninguém lista na primeira página de preços. Se ainda não decidiu se precisa de uma, leia antes seu site precisa de CDN?.
O que compõe o custo de uma CDN?#
Uma CDN guarda cópias dos seus arquivos em servidores espalhados pelo mundo e entrega ao visitante a partir do ponto mais próximo. A cobrança acompanha esse trabalho:
- Tráfego entregue (egress para a internet). O item principal: cada GB enviado aos visitantes, com preço diferente por região.
- Requisições. Alguns provedores cobram por lote de 10.000 requisições HTTP ou HTTPS. Sites com muitos arquivos pequenos sentem esse item.
- Preenchimento de cache (cache fill). O tráfego da sua origem até a CDN quando o arquivo ainda não está em cache. Alguns cobram, outros não.
- Saída da origem. Quem cobra aqui é a sua hospedagem ou o seu storage, não a CDN. Veja taxas de egress.
- Extras. WAF, otimização de imagens, logs em tempo real, invalidação de cache, certificados personalizados.
Há dois modelos de preço. Na cobrança por uso, você paga cada GB e cada requisição. No plano fixo, você paga uma mensalidade com uma franquia de tráfego e requisições.
Quanto custam as principais CDNs?#
Os modelos de cobrança das CDNs mais conhecidas estão abaixo. Os valores mudam com frequência, então confira na página de preços de cada provedor (listadas nas fontes deste guia):
| Provedor | Modelo | Como cobra |
|---|---|---|
| Cloudflare | Plano fixo por domínio | Plano Free sem mensalidade e planos pagos (Pro, Business) com mensalidade fixa e desconto no anual. A página de planos não lista preço por GB transferido |
| Amazon CloudFront | Plano fixo | Planos mensais (do Free ao Premium) com franquia de GB e de requisições, sem cobrança de excedente |
| Amazon CloudFront | Por uso | Uma franquia mensal sem custo; depois, preço por GB que varia por região e cai por faixa de volume, mais um valor por 10.000 requisições HTTPS |
| Google Cloud CDN | Por uso | Preço por GiB por região e faixa de volume, mais cache fill e consultas de cache cobradas por 10.000 |
Nos planos fixos do CloudFront, é a franquia que define qual plano serve para você.
Como estimar o custo do seu site?#
A fórmula da cobrança por uso é:
custo = GB entregues × preço/GB da região
+ (requisições ÷ 10.000) × preço por 10.000
+ GB buscados na origem × (cache fill + egress da origem)O último termo depende da taxa de acerto do cache (cache hit ratio): se 90% das respostas saem do cache, só 10% do tráfego volta à origem. Para testar cenários, use este script em Node.js:
// Estimativa mensal de uma CDN cobrada por uso (valores em US$)
const uso = {
gbEntregues: 3000, // tráfego total servido aos visitantes
requisicoes: 30_000_000,
taxaDeAcerto: 0.9, // fração servida do cache (cache hit ratio)
};
const preco = {
porGB: 0.05, // preço por GB da região dos visitantes (valor hipotético)
por10kRequisicoes: 0, // alguns provedores não cobram requisições
egressDaOrigemPorGB: 0, // quanto a sua origem cobra para enviar dados à CDN
};
const entrega = uso.gbEntregues * preco.porGB;
const requisicoes = (uso.requisicoes / 10_000) * preco.por10kRequisicoes;
const origem = uso.gbEntregues * (1 - uso.taxaDeAcerto) * preco.egressDaOrigemPorGB;
console.log({ entrega, requisicoes, origem, total: entrega + requisicoes + origem });Salve como cdn.mjs, rode com node cdn.mjs e troque os números pelos do seu site. O volume real aparece nos logs ou no painel de analytics da hospedagem.
Quanto custa na prática, por tamanho de site?#
Os números desta seção e do script acima são hipotéticos, escolhidos para facilitar a conta. Não são preços de nenhum provedor; os valores reais ficam nas páginas oficiais de preços, listadas nas fontes. Troque-os pelos da tabela atual do provedor que você está avaliando.
Exemplo hipotético, site pequeno: 50 GB e 1 milhão de requisições por mês, público no Brasil. Num plano sem mensalidade ou dentro da franquia gratuita de uma cobrança por uso, essa carga costuma sair a zero. Num provedor por uso sem franquia, supondo US$ 0,05 por GB na América do Sul, seriam 50 × US$ 0,05 = US$ 2,50. A CDN quase não pesa.
Exemplo hipotético, site médio: 3 TB (cerca de 3.000 GB) e 30 milhões de requisições, público no Brasil.
- Por uso, com cobrança de requisições: supondo US$ 0,10 por GB e US$ 0,01 por 10.000 requisições, são 3.000 × US$ 0,10 = US$ 300 de tráfego mais 3.000 × US$ 0,01 = US$ 30 de requisições. Perto de US$ 330, antes de descontar uma eventual franquia gratuita.
- Por uso, sem cobrança de requisições: supondo US$ 0,05 por GB, 3.000 × US$ 0,05 = US$ 150. Se o mesmo provedor cobrasse US$ 0,02 por GB na Europa, o mesmo público lá custaria US$ 60.
- Com cache fill: com 90% de acerto, só 300 GB voltam à origem. Supondo US$ 0,01 por GB de cache fill, são mais US$ 3 na conta.
- Plano fixo: a mensalidade do plano, desde que 3 TB e 30 milhões de requisições caibam na franquia e nas condições de uso dele.
A mesma carga pode custar de dezenas a centenas de dólares. A região dos visitantes pesa na conta tanto quanto a escolha do provedor.
Quais são os custos escondidos?#
- Região dos visitantes. América do Sul, África e Oriente Médio costumam custar mais por GB que Europa e América do Norte, e a diferença vai de algumas dezenas por cento a várias vezes o preço, conforme o provedor. Um site brasileiro não deve usar a primeira linha da tabela como referência.
- Cache miss. Cada falha de cache busca o arquivo na origem e pode gerar cache fill na CDN e egress na hospedagem. No Google Cloud CDN, nas falhas entram ainda cobranças de processamento do load balancer. Um Cache-Control mal configurado multiplica esse custo.
- Requisições de arquivos pequenos. Um site com milhões de ícones e chamadas de API pode gastar mais em requisições do que em GB.
- Invalidação. Alguns provedores, como o CloudFront, incluem uma cota mensal de caminhos invalidados e cobram por caminho acima dela. Deploys que limpam o cache inteiro várias vezes ao dia acumulam esse custo.
- Extras. Logs em tempo real, WAF e otimização de imagens costumam ser cobrados à parte.
- Câmbio e impostos. Quase todas as CDNs cobram em dólar. No cartão internacional, a conta em reais muda com o câmbio e com o IOF.
- Mínimos e franquias. Uma cobrança mínima mensal ou uma franquia que vence no meio do mês mudam o custo real de quem tem pouco tráfego.
Como reduzir a conta da CDN?#
- Aumente a taxa de acerto. Use nomes de arquivo com hash e
Cache-Control: public, max-age=31536000, immutablepara assets que não mudam. - Comprima e otimize. Imagens em WebP ou AVIF e texto com Brotli ou gzip reduzem os GB entregues, que é o item mais caro.
- Invalide só o que mudou. Com nomes versionados, quase não é preciso invalidar.
- Escolha pela região do seu público. Compare o preço por GB da região onde estão os seus visitantes, não o preço de vitrine.
- Considere o que já vem incluso. Muitas hospedagens já colocam uma CDN na frente da aplicação. Pagar outra por cima só compensa se faltar um recurso específico.
Como fazer isso na Square Cloud#
Na Square Cloud, a CDN não aparece como uma linha separada na conta. Todo plano inclui CDN global, tráfego ilimitado sem cobrança por banda ou por requisição (sujeito à política de uso justo), WAF, proteção DDoS L3/L4/L7 e TLS automático. A rede é uma CDN Anycast baseada na Cloudflare, com mais de 200 pontos de presença, HTTP/3 e WebSockets.
Os planos começam no Hobby, a partir de R$ 12,49 por mês, cobrados em reais por Pix ou cartão, então não há conta em dólar para converter. Toda aplicação web ganha um subdomínio *.squareweb.app com HTTPS; domínio personalizado e load balancing, que também não cobra por requisição, começam no Standard, a partir de R$ 44,99 por mês.
A CDN faz cache das respostas e respeita o Cache-Control da sua aplicação, então definir esses cabeçalhos continua sendo tarefa sua: são eles que dizem aos navegadores e à CDN por quanto tempo guardar cada resposta. Veja os detalhes na página de rede e CDN.
Rede
Domínio próprio, TLS automático e CDN global para o seu app
Perguntas frequentes
Existe CDN sem custo?
Existe. O plano Free da Cloudflare não tem mensalidade, e o Amazon CloudFront tem um plano Free de preço fixo com uma franquia mensal de transferência e requisições. Confira os limites e as condições de uso atuais de cada um.
Por que a CDN cobra mais caro para a América do Sul?
O custo de banda e de trânsito de rede varia por região, e os provedores repassam isso na tabela. Em vários deles, o GB entregue na América do Sul custa bem mais que na Europa e na América do Norte, às vezes várias vezes mais.
A CDN cobra pelo que vem da minha origem também?
Algumas cobram o preenchimento de cache (cache fill), e a sua hospedagem pode cobrar a saída de dados da origem para a CDN. Quanto maior a taxa de acerto do cache, menor essa parte da conta.
Plano fixo ou cobrança por GB: qual sai mais barato?
Para tráfego pequeno, cobrança por uso costuma ficar perto de zero. Para tráfego grande ou imprevisível, um plano fixo dá previsibilidade. Faça a conta com o seu volume real dos últimos meses.
Mais em Rede e domínios
Ver todos os 27 artigos- O que é load balancer (balanceamento de carga)Load balancer é o componente que distribui requisições entre vários servidores. Veja como funciona, os algoritmos, as camadas 4 e 7 e um exemplo com nginx.
- Registros DNS: A, CNAME, MX e TXT explicadosRegistros DNS são as instruções de uma zona que dizem para onde um nome aponta. Entenda A, AAAA, CNAME, MX, TXT, NS e CAA com exemplos e comandos dig.
- Como apontar um domínio para sua hospedagemPara apontar um domínio para sua hospedagem, crie um registro CNAME (ou A) no DNS do seu registrador. Veja o passo a passo, como testar e os erros comuns.
- Cabeçalho Cache-Control: quanto tempo o navegador e a CDN guardam um arquivoCache-Control é o cabeçalho HTTP que define quanto tempo navegador e CDN guardam uma resposta. Veja max-age, no-cache, immutable e receitas por tipo de arquivo.