Comprimir imagem para um tamanho-alvo

Defina uma meta em kilobytes e a ferramenta busca a maior qualidade JPEG que caiba — e, se você permitir, reduz as dimensões — até a imagem caber.

A compressão acontece localmente no seu navegador. Sua imagem nunca sai do dispositivo.

Escolha a meta e baixe

Solte uma imagem aqui

Entrada PNG, JPEG, WebP ou GIF — saída JPEG. Clique para escolher.

A saída é JPEG: o codificador WebP do navegador costuma ser melhor para metas pequenas, mas o suporte varia entre navegadores, então JPEG é a escolha confiável.

Como funciona

O tamanho do JPEG depende de um único controle que o navegador expõe: o parâmetro toBlob(type, quality). A ferramenta trata isso como problema de busca — encontrar a maior qualidade cujo resultado ainda caiba na sua meta em bytes.

Busca binária na qualidade
A qualidade fica entre 0,05 e 0,95 e é dividida ao meio por umas sete rodadas, codificando um blob descartável do canvas em cada tentativa. O tamanho cresce de forma monótona com a qualidade, então uma busca binária simples acha o melhor valor em fração de segundo para fotos normais.
A escada de redução
Se até a qualidade 0,05 estoura a meta na resolução completa, é preciso eliminar pixels — não só precisão. A imagem redesenhada a 90 %, depois 80 %… das dimensões, com a busca de qualidade repetida a cada degrau, até caber ou o lado curto chegar a 64 px e a ferramenta admitir a derrota com honestidade. A caixa de seleção mantém isso opcional.
Por que saída JPEG, não WebP
WebP na mesma qualidade visual costuma ficar 25–35 % menor e atingiria metas agressivas com menos dano. Mas canvas.toBlob("image/webp") cai em silêncio para PNG em navegadores sem codificador WebP, o que quebraria a promessa de tamanho — JPEG é suportado em todo lugar, então é o contrato confiável aqui.

Perguntas frequentes

É compressão com ou sem perdas?

Com perdas — e de propósito. Chegar a uma meta em kilobytes como 200 KB a partir de um JPEG típico de câmera (3–8 MB) é impossível sem perdas, então a ferramenta ajusta as tabelas de quantização JPEG pelo parâmetro de qualidade e, se preciso, descarta pixels reduzindo as dimensões. Seu arquivo original nunca é tocado; cada tentativa é uma codificação nova a partir do canvas.

Posso comprimir uma pasta inteira?

Não — uma imagem por vez, por decisão. Uma meta de tamanho é julgada arquivo por arquivo, e a qualidade se comporta diferente num gráfico plano e numa paisagem cheia de detalhes, então o processo serial mantém você honesto sobre cada saída. Para trabalho em lote sem meta de tamanho, o compressor de imagens comum deste site suporta lotes.

Por que 200 KB? Esse número aparece muito.

Portais de passaporte e visto e formulários de candidatura costumam limitar o envio a mais ou menos 100–300 KB, e 200 KB é o meio-termo frequente que mantém rostos nítidos com 600–900 px de largura. O padrão daqui acompanha esse caso, mas qualquer meta positiva funciona: 20 KB para avatares, 500 KB para provas de impressão. Esses portais mudam as regras com frequência — confira sempre os requisitos do site.

O resultado terá exatamente o tamanho pedido?

Ficarão nele ou abaixo, nunca acima. A busca acha a maior qualidade que cabe — e como o tamanho do JPEG salta em degraus, o resultado normalmente fica um pouco abaixo da meta. Se vier bem menor, sua imagem era muito lisa e comprimiu sem esforço.

Algo é enviado para um servidor?

Não. Decodificar, o laço de codificação e as conferências de tamanho são trabalho puro da API Canvas na sua aba — nenhuma requisição de rede carrega sua imagem. A ferramenta continua funcionando com a rede desligada.