Gerar favicon para site
Gere o favicon do seu site a partir de uma única imagem: a API devolve o conjunto completo, nos tamanhos que navegadores, Android e iPhone esperam. Chega de exportar dezenas de arquivos na mão — envie o logo uma vez e receba o pacote pronto para subir na raiz do site.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Um favicon só não basta mais
O ícone do site aparece em lugares muito diferentes: na aba do navegador, nos favoritos, no atalho da tela inicial do celular, em resultados de busca. Cada contexto pede um tamanho e, às vezes, um formato próprio — e quando falta o adequado, o sistema improvisa com uma versão esticada ou genérica. O resultado é aquele ícone borrado que denuncia site montado às pressas. O conjunto completo existe para o seu logo aparecer nítido em todos esses lugares.
O que vem no pacote
A partir da sua imagem, a tarefa gera o arquivo clássico ICO e as variações PNG nos tamanhos que os navegadores e sistemas móveis solicitam, incluindo o ícone de tela inicial para celular. Tudo derivado do mesmo original, com redimensionamento cuidadoso para os tamanhos pequenos — que é onde um logo detalhado costuma virar mancha. Você recebe o conjunto e sobe os arquivos com as referências no HTML do site.
A imagem certa para começar
O melhor original é quadrado, simples e legível em miniatura: um símbolo forte funciona melhor que o logotipo completo com nome por extenso, que ninguém consegue ler em 16 pixels. Fundo transparente em PNG dá flexibilidade; cores com bom contraste sobrevivem à aba escura e à clara. Se a sua marca tem símbolo e assinatura, use só o símbolo aqui — a assinatura vive bem no cabeçalho do site.
Preço por conjunto gerado
US$ 0,002 pela chamada mais US$ 0,005 por conjunto completo — menos de um centavo de dólar pelo pacote inteiro. Para quem entrega sites em série, o custo é irrisório e o ganho é padronização: todo projeto sai com os ícones corretos, gerados no deploy, sem etapa manual esquecível. Pagamento por uso, preço publicado, sem assinatura.
Casos de uso
Agência que entrega site toda semana
A TecnoSul Soluções Digitais incluiu a geração de favicon na esteira de publicação: o cliente aprova o logo, o deploy gera o conjunto e nenhum site sai com o ícone padrão do template — aquele detalhe que o cliente sempre nota.
Loja própria com cara profissional
A Padaria Pão Dourado montou o site do delivery sozinha. Com o símbolo do pão no favicon em todos os tamanhos, o atalho na tela do celular dos clientes fica com a marca da padaria, não com um ícone genérico.
Migração de marca em dezenas de domínios
Depois do rebranding, a equipe precisa trocar o ícone em 30 sites do grupo. Um script chama a API com o logo novo e distribui os pacotes — a troca inteira acontece numa manhã.
Perguntas frequentes
Que arquivo eu envio para gerar o conjunto?
Uma imagem quadrada do seu símbolo, de preferência PNG com fundo transparente e em boa resolução — a tarefa deriva todos os tamanhos a partir dela.
O pacote serve para Android e iPhone também?
Sim: o conjunto inclui os tamanhos usados como ícone de tela inicial nos sistemas móveis, além dos tradicionais de navegador.
Quanto custa gerar o favicon completo?
US$ 0,005 por conjunto, mais US$ 0,002 pela chamada — tudo somado, menos de um centavo de dólar por site.
Preciso saber programar para usar?
A geração é via API, então o caminho natural é dentro de um fluxo técnico. Se você cuida do próprio site, uma única chamada resolve e o pacote vem pronto para subir.
Meu logo fica armazenado depois da geração?
Ele é usado para gerar o seu conjunto e entregar o resultado — esse é o ciclo completo; não há reaproveitamento.
E se meu logo for retangular?
Vale recortar antes para a versão quadrada do símbolo: favicon retangular espremido fica ilegível. Um corte centrado no elemento principal costuma resolver.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/image/favicon \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/image/favicon", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/favicon",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/favicon", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/favicon", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"input": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.favicon",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_mb | 15 |
max_megapixels | 12 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |