Calculadora de dias até o Natal
A calculadora de dias até o Natal fornece a contagem exata de qualquer data válida do calendário gregoriano até o próximo 25 de dezembro.
Executar grátis
Informe uma data no formato claro YYYY-MM-DD e receba um único número, fácil de exibir, armazenar ou usar em outro cálculo. O próprio dia de Natal fica a zero dias, os anos bissextos são tratados corretamente e, quando a data informada é posterior ao Natal, o destino passa a ser 25 de dezembro do ano seguinte.
Informe uma data de calendário precisa
Forneça a data inicial no formato YYYY-MM-DD, com quatro algarismos para o ano e dois para o mês e o dia. Por exemplo, 2026-12-01 é uma entrada válida. A calculadora verifica a data completa, não apenas sua aparência, e rejeita valores impossíveis como 31 de abril, mês 13 ou 29 de fevereiro em um ano não bissexto. Essa validação rigorosa impede contagens plausíveis, porém incorretas, em sites, campanhas e processos automatizados. São aplicadas as regras gregorianas, inclusive as exceções de séculos. Como a entrada é uma data, e não um instante, você não precisa configurar horário, fuso ou horário de verão. A mesma entrada gera o mesmo resultado no navegador, na API e em fluxos agendados.
Entenda qual Natal é escolhido
O destino é 25 de dezembro do ano informado quando a data inicial ocorre nesse dia ou antes. Se você informar o próprio dia 25, o resultado será zero, pois nenhum dia civil completo resta. Para 26 de dezembro ou uma data posterior, o destino passa a ser 25 de dezembro do ano seguinte. Assim, a expressão próximo Natal continua útil o ano inteiro sem exigir outro campo. A contagem mede as mudanças de data entre o início e o Natal: 24 de dezembro retorna um e 25 retorna zero. Dias bissextos são incluídos quando estiverem no intervalo. O algoritmo usa números inteiros, não consulta o relógio nem presume a data de hoje; por isso, relatórios, testes e integrações permanecem reproduzíveis.
Aplique o resultado em produtos e processos
A resposta contém o campo days_until_christmas com um número inteiro não negativo. Esse formato compacto funciona em banners de lojas, atividades escolares, calendários editoriais, campanhas sazonais, painéis e aplicativos móveis. Você pode inserir o número em seu próprio texto, compará-lo com limites ou salvá-lo com outros marcos. O navegador é prático para consultas individuais, enquanto a API permite automação por US$ 0,002 por solicitação. Sem rede, aleatoriedade ou dependência da data atual, entradas idênticas sempre produzem saídas idênticas. Para uma contagem diária ao vivo, envie a data local atual de seu público. Deixe a apresentação fora do cálculo: escolha singular ou plural, quando mostrar o aviso e como adaptar a mensagem, usando esta capacidade para obter o valor validado.
Casos de uso
Banner sazonal de loja
Calcule o número diário exibido em uma contagem regressiva acima dos produtos natalinos.
Planejamento editorial
Meça os dias civis restantes ao programar artigos, promoções ou prazos de produção.
Contagem regressiva escolar
Gere um número confiável para uma aula, exercício de calendário ou painel de Natal.
Perguntas frequentes
O que acontece em 25 de dezembro?
O resultado é zero, pois nenhum dia civil resta até o Natal.
O que acontece depois de 25 de dezembro?
A calculadora conta até 25 de dezembro do ano seguinte.
Os anos bissextos são considerados?
Sim. As regras gregorianas são aplicadas e qualquer 29 de fevereiro no intervalo é incluído corretamente.
O cálculo depende do meu fuso horário?
Não. A entrada é uma data sem horário ou fuso, então o mesmo valor sempre produz o mesmo resultado.
Quanto custa uma solicitação de API?
Cada solicitação de API custa US$ 0,002. A calculadora no navegador atende a cálculos individuais.
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/date/days-until-christmas \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2026-12-01"}'const res = await fetch("https://api.kit.forhosting.com/date/days-until-christmas", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2026-12-01"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/days-until-christmas",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2026-12-01"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/days-until-christmas", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2026-12-01"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2026-12-01"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/days-until-christmas", 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
{
"date": "2026-12-01"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.days_until_christmas",
"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.
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. |