Calculadora de datas
Encontre a diferença entre duas datas ou adicione/subtraia dias.
Como é calculada a diferença de datas ?
A diferença é calculada usando o número exato de dias de calendário entre as duas datas. O resultado também exibe o equivalente em semanas, meses e anos para conveniência. Os anos bissextos são considerados automaticamente.
Os anos bissextos são considerados ?
Sim. Todos os cálculos usam o objeto Date nativo do JavaScript, que lida corretamente com anos bissextos, tamanhos de mês e transições de horário de verão.
Como funciona
- Escolha um modo de cálculo : calcule a diferença entre duas datas, ou adicione/subtraia uma duração a uma data de partida.
- Insira suas datas : use os seletores ou digite as datas no formato AAAA-MM-DD. A hora pode ser incluída para precisão até o segundo.
- Obtenha o resultado : visualize a diferença em anos, meses, semanas, dias, horas, minutos e segundos, tudo de uma vez.
Por que usar a calculadora de datas ?
Contar os dias entre duas datas à mão é lento e sujeito a erros, especialmente ao passar de um mês a outro, com os anos bissextos e as mudanças de horário. Esta calculadora trata corretamente todos os casos-limite do calendário. Usos comuns : durações de contratos, verificação de idade, cronogramas de projeto, dias restantes até um prazo, tempo decorrido desde um evento, datas de vencimento de pagamento e períodos de renovação de assinatura. O modo adicionar/subtrair é útil para calcular datas futuras adicionando um número de dias úteis, semanas ou meses a uma data de partida.
O que você pode calcular
- Diferença de datas: dias, semanas, meses e anos exatos entre duas datas
- Adicionar uma duração: encontre a data a N dias/semanas/meses a partir de uma data de partida
- Subtrair uma duração: encontre a data a N períodos antes de uma data de referência
- Cálculo de idade: anos, meses e dias completos desde uma data de nascimento
- Dias úteis: conte apenas os dias úteis, excluindo os fins de semana
O que é uma calculadora de datas?
Uma calculadora de datas responde as tres perguntas de calendário mais comuns: quantos dias separam duas datas, qual data está a N dias de uma data de referencia e o que o calendário diz sobre uma data específica (dia da semana, dia do ano, número da semana, status de ano bissexto). Cada pergunta leva alguns segundos na ferramenta e levaria dez minutos de contagem propensa a erros se voce tentasse fazer à mão com um calendário de parede.
A aritmética calendárica é cheia de casos limite. Fevereiro tem 28 ou 29 dias dependendo da regra do ano bissexto. O calendário gregoriano (introduzido em 1582) tem uma lacuna de 12 dias do calendário juliano em alguns países. O horário de verão adiciona e remove horas duas vezes por ano. Diferentes países definem 'dias úteis' de forma diferente por causa de feriados regionais. Uma calculadora de datas bem construída lida com isso corretamente para que voce não tenha que pensar nisso.
Esta ferramenta usa o objeto Date JavaScript nativo do seu navegador, que implementa o calendário gregoriano proléptico até aproximadamente o ano 1 e até o ano 275760. A ferramenta roda em seu navegador, entao suas datas e datas de nascimento nunca tocam nossos servidores. As tres abas (Diferença de Datas, Adicionar/Subtrair Dias, Info de Data) cobrem aproximadamente 95 por cento das perguntas de matemática de data que um usuário típico faz.
O que há dentro da calculadora
A ferramenta expõe tres abas no topo: Diferença de Datas (entre duas datas), Adicionar/Subtrair Dias (matemática de data com um deslocamento) e Info de Data (fatos sobre uma única data). Clique em uma aba para mudar de painel. As abas são mutuamente exclusivas; mudar não apaga os valores nos outros painéis até que voce recarregue.
O painel Diferença de Datas pega duas entradas de data HTML5 (Data de Início e Data Final), cada uma renderizada com o seletor de data nativo do navegador na maioria das plataformas. O painel de resultado mostra os dias totais, mais o equivalente em semanas, meses e anos para contexto. Anos bissextos e comprimentos de mes são tratados automaticamente pelo objeto Date subjacente.
O painel Adicionar/Subtrair Dias pega uma data de início, uma operação (Adicionar ou Subtrair) e um número de dias. O resultado é a data calculada com o dia da semana mostrado. O painel Info de Data pega uma única data e mostra o dia da semana, dia do ano (1 a 365 ou 366), número da semana ISO, sinalizador de ano bissexto e a data em linguagem simples. Toda a saída se atualiza no momento em que voce clica no botão de ação.
História e contexto
Calendário juliano (45 a.C.)
A reforma do calendário romano de Júlio César em 45 a.C., projetada pelo astronomo Sosígenes de Alexandria, introduziu o ano de 365 dias com um dia bissexto a cada quatro anos. O ano juliano teve em média 365,25 dias, ligeiramente mais longo que o verdadeiro ano trópico de cerca de 365,2422 dias. O desvio acumulou cerca de 10 dias até o século XVI, o que preparou o cenário para a reforma gregoriana.
Calendário gregoriano (1582)
A reforma do Papa Gregório XIII em 1582 corrigiu o desvio removendo 10 dias (4 de outubro de 1582 foi seguido por 15 de outubro de 1582 em países católicos) e refinou a regra do ano bissexto: anos divisíveis por 100 não são anos bissextos a menos que também sejam divisíveis por 400. Entao 1900 não foi um ano bissexto mas 2000 foi. A reforma foi implementada de forma desigual: Grã-Bretanha e suas colônias americanas a adotaram em 1752 (descartando 11 dias), Rússia em 1918, Grécia em 1923.
Epoch Unix (1970)
Bell Labs Unix no final dos anos 1960 escolheu 1 de janeiro de 1970 às 00:00 UTC como o ponto de origem para sua representação de tempo. Cada timestamp Unix conta segundos desde esta epoch, é por isso que a data está em toda parte na computação. O objeto Date do JavaScript armazena internamente milissegundos desde a epoch Unix e a usa como base de cálculo para cada operação de data, incluindo as desta ferramenta.
ISO 8601 padroniza a representação de data (1988)
ISO 8601:1988 definiu o formato universal de data YYYY-MM-DD, o formato de tempo 24 horas HH:MM:SS e o esquema de numeração de semana ISO (semana 1 contém a primeira quinta-feira do ano, semanas começam na segunda-feira). O padrão é o que faz 2026-05-19 significar a mesma coisa em qualquer país, eliminando a ambiguidade de 05/19/2026 (EUA) versus 19/05/2026 (Reino Unido). Esta calculadora usa ISO 8601 internamente e oferece números de semana ISO na aba Info de Data.
Objeto Date do JavaScript (1995)
JavaScript 1.0 de Brendan Eich em 1995 incluiu um objeto Date modelado no java.util.Date do Java (que ele próprio se inspirou no Unix). Era notoriamente sub-especificado e peculiar: analisar 2 versus 02 dava resultados diferentes entre navegadores, índices de mes iam de 0 a 11 em vez de 1 a 12, e o tratamento de fuso horário era inconsistente. As esquisitices estao parcialmente corrigidas hoje, mas a maioria permanece para compatibilidade retroativa.
API Temporal (a partir de 2024)
TC39 (o corpo de padrões JavaScript) aprovou a API Temporal em 2024, o substituto há muito esperado para o objeto Date legado. Temporal separa de forma limpa os conceitos de data, hora, datetime, duração e fuso horário, corrigindo 25 anos de peculiaridades acumuladas. A partir de 2026, Temporal está sendo enviado em navegadores modernos atrás de uma flag e via polyfill. Versões futuras desta calculadora usarão Temporal uma vez que o suporte de navegador seja universal.
Fluxos de trabalho práticos
Contagem regressiva de prazo de projeto
Insira a data de hoje como Início, o prazo do projeto como Fim, clique em Calcular. A ferramenta mostra os dias exatos restantes, mais semanas e meses para fraseado de resumo executivo. Útil para planos de projeto, check-ins de OKR, planejamento de sprint e qualquer cenário onde 'dois meses e 12 dias' se le melhor do que '73 dias'.
Cálculo de idade
Insira a data de nascimento como Início, a data de hoje como Fim. O resultado mostra anos, meses e dias. Esta é a exibição padrão de idade para formulários de saúde, inscrição escolar, documentos de imigração e qualquer cenário onde '27 anos 3 meses 14 dias' é mais preciso do que apenas '27'.
Verificação de duração de contrato
Para um trabalho freelance, contrato de trabalho ou aluguel de imóvel, insira as datas de início e fim para confirmar os dias totais. Compare com a duração declarada do contrato para pegar erros de off-by-one (se a data final é inclusiva ou exclusiva importa para faturamento). O cálculo de 'dias de calendário exatos' da ferramenta corresponde à convenção usada pela maioria do software de contabilidade.
Planejamento de renovação de assinatura
Para assinaturas anuais (SaaS, academia, revista), insira a data de renovação como Início no painel Adicionar, adicione 365 dias (ou qualquer que seja o termo), e voce tem a próxima data de renovação. A ferramenta lida automaticamente com casos limite de fim de mes (começar em 28 de fevereiro, adicionar 365, obter 1 de março do próximo ano; começar em 29 de fevereiro de um ano bissexto, adicionar 365, obter 28 de fevereiro do próximo ano).
Planejamento de aniversário
Para um aniversário de casamento, dia do fundador ou qualquer marco, use o painel Adicionar com a data original como Início e 365 (um ano) ou 3650 (dez anos) como dias. O resultado diz a voce em que data e dia da semana o aniversário cai, para que voce possa reservar um restaurante ou agendar uma celebração. Os marcos de 25 anos e 50 anos são fáceis de calcular dessa maneira.
Agendamento pré-natal
A data estimada de parto da gravidez é convencionalmente 280 dias a partir do último período menstrual. Insira a DUM como Início, adicione 280, obtenha a DPP. O painel Info de Data para a DPP mostra o dia da semana para que voce possa planejar uma visita ao hospital. Esta é uma estimativa aproximada; um profissional de saúde deve confirmar com um ultrassom.
Armadilhas comuns
Fusos horários (UTC vs local)
Objetos Date do JavaScript representam momentos no tempo, não datas de calendário. Quando voce seleciona 2026-05-19 no seletor de data, o navegador o interpreta como meia-noite hora local. Se voce está calculando através de múltiplos fusos horários (logística internacional, horários de voo), o resultado pode estar desviado em um dia. Esta ferramenta usa hora local consistentemente, que é a escolha certa para a maioria das perguntas de calendário pessoal, mas tome cuidado com contextos internacionais.
Transições de horário de verão
Em países que observam o horário de verão (EUA, UE, maior parte da Austrália), um dia em março tem 23 horas e um dia em novembro tem 25 horas. Contar horas entre duas datas que cruzam uma transição de horário de verão dá um resultado que difere da contagem de dias por uma hora. A ferramenta conta dias de calendário, não horas, entao o horário de verão não afeta o resultado da contagem de dias; importaria se voce estivesse medindo o tempo decorrido em horas.
Casos limite de anos bissextos
Um ano é bissexto se divisível por 4, exceto séculos (anos terminando em 00) que devem ser divisíveis por 400. Entao 2000 foi um ano bissexto, 1900 não foi, 2100 não será, 2400 será. A maioria dos bugs de calculadora assume 'divisível por 4' sem a exceção do século. A ferramenta acerta isso porque Date do JavaScript lida com isso nativamente.
Ambiguidade de fim de mes em matemática de data
Se voce adicionar um mes a 31 de janeiro, que data voce obtém? 28 de fevereiro (ou 29) é a resposta mais comum (Excel faz isso), mas 3 de março (ou 2) também é defensável (31 dias depois). Diferentes produtos de software e jurisdições legais lidam com isso de forma diferente. O painel Adicionar/Subtrair usa contagens exatas de dias para contornar a ambiguidade. Se voce precisa de adição de meses de calendário, adicione 30 ou 31 dias explicitamente.
A lacuna do calendário de 1582
Entre 4 e 15 de outubro de 1582, a reforma gregoriana deletou 10 dias em países católicos (mais em países que adotaram mais tarde: 11 dias para a Grã-Bretanha em 1752, 13 dias para a Rússia em 1918). Calcular datas que abrangem a reforma requer escolher se deve usar o gregoriano proléptico (assumir que o novo calendário sempre se aplicou) ou a data histórica. Esta ferramenta usa gregoriano proléptico, que é a convenção Date do JavaScript. Para pesquisa genealógica ou histórica antes de 1582, use uma ferramenta especializada.
Dias úteis variam por país
Nos EUA, dias úteis excluem sábado, domingo e cerca de 11 feriados federais. No Reino Unido, a contagem é similar mas com diferentes feriados (datas de Páscoa, Boxing Day, late summer bank holiday). Na Arábia Saudita, o fim de semana é sexta-sábado. Esta ferramenta não computa dias úteis; conta dias de calendário. Para matemática de dias úteis, use uma ferramenta de folha de pagamento ou RH que conheça o calendário de feriados do seu país.
Privacidade e tratamento de dados
Todos os cálculos acontecem em seu navegador usando o objeto Date nativo do JavaScript. Não enviamos suas datas para nenhum servidor, não registramos entradas, não colocamos cookies vinculados aos cálculos. Datas de nascimento, datas de contrato e quaisquer outros dados sensíveis de calendário ficam estritamente em seu dispositivo. Recarregue a página e as entradas anteriores se foram.
Uma vez carregada a página, a ferramenta funciona offline. Nenhuma biblioteca CDN é necessária para a matemática básica de data. Voce pode desconectar da rede e executar cálculos de idade ou matemática de prazo sem que nada saia do seu dispositivo.
Quando não usar esta calculadora
Datas astronômicas ou históricas antes de 1582
Para pesquisa histórica que precisa de datas expressas no calendário em uso na época (juliano para a Europa cristã primitiva, calendários lunares para a história islamica e chinesa), use um conversor de calendário especializado (Steel Calendar, NASA JPL Horizons). Esta ferramenta usa gregoriano proléptico e dará uma resposta diferente para eventos antes de 1582.
Cálculos de dias úteis com feriados
Ao calcular duração de contrato, prazos de pagamento ou relógios de acordo de nível de serviço em dias úteis (excluindo fins de semana e feriados específicos do país), use uma ferramenta consciente do país como a calculadora de dias úteis do TimeAndDate.com, ou o sistema de RH ou folha de pagamento da sua empresa. Esta ferramenta conta apenas dias de calendário.
Agendadores de eventos recorrentes (toda terça, mensal)
Para configurar recorrencia de calendário ('toda segunda terça do mes', 'primeiro dia útil de cada trimestre'), use Google Calendar, Apple Calendar ou Outlook. Eles lidam com o padrão RRULE de RFC 5545 (iCalendar) que tem dezenas de casos limite. Esta ferramenta é para matemática de data pontual, não para gerenciar agendas repetidas.
Conversao de fuso horário entre muitas cidades
Para reuniões entre múltiplos fusos horários (NYC, Londres, Tóquio, Sydney) em um momento no tempo, use uma ferramenta dedicada como World Clock Meeting Planner. Esta calculadora funciona em hora local e não faz conversao multi-zona. A ferramenta world-clock da Absolutool cobre esse caso de uso.
Mais perguntas
Como o dia da semana é calculado?
Date.getDay() do JavaScript retorna um número de 0 a 6 (domingo a sábado). Internamente, o motor usa congruencia de Zeller ou um algoritmo similar de tabela de consulta. Cálculo manual do dia da semana também existe, o algoritmo Doomsday de John Conway permite que voce calcule dias da semana mentalmente em segundos. Para uso computacional, apenas confie na API Date.
Como os meses são contados ao calcular diferenças?
Várias convenções existem. (1) 'Meses inteiros' conta meses completos entre datas: 15 de fevereiro a 14 de abril é 1 mes (ainda não 2). (2) Diferença em números de mes ignorando o dia: 15 de fevereiro a 14 de abril é 2 meses. (3) Total de dias dividido pelo comprimento médio do mes (30,44): 15 de fevereiro a 14 de abril é 58 / 30,44 = 1,91 meses. Esta ferramenta usa a convenção (1), que combina com como a maioria das pessoas fala sobre idades e durações.
O que é número de semana ISO?
ISO 8601 define a semana 1 de um ano como a semana contendo a primeira quinta-feira. As semanas começam na segunda-feira. Entao 1 de janeiro de 2024 (uma segunda-feira) estava na semana 1 de 2024, mas 1 de janeiro de 2023 (um domingo) estava na semana 52 de 2022. A convenção importa para calendários empresariais, especialmente na Europa onde números de semana ISO aparecem na folha de pagamento, no planejamento de varejo e em horários acadêmicos. A aba Info de Data mostra o número de semana ISO.
Posso calcular Páscoa?
Não diretamente. Domingo de Páscoa é o primeiro domingo após a primeira lua cheia após o equinócio de primavera, calculado usando um algoritmo complexo chamado Computus. Esta ferramenta não calcula Páscoa. Para a data em qualquer ano, consulte o ano no artigo da Wikipedia 'Lista de datas para Páscoa'. Páscoa ocidental e oriental (ortodoxa) frequentemente diferem por causa de bases de calendário diferentes.
Como computo dias úteis entre duas datas?
Uma estimativa aproximada: dias totais, menos fins de semana. (Dias / 7) dá o número de semanas; multiplique por 5 para dias úteis, depois adicione os dias úteis restantes. Para um número exato incluindo feriados locais, use uma calculadora de dias úteis específica do país (TimeAndDate.com funciona em mais de 200 países). A ferramenta em si conta dias de calendário; o ajuste de dias úteis é por sua conta.
E quanto a cálculos de ano fiscal?
Anos fiscais funcionam em calendários definidos por cada empresa ou governo: o ano fiscal federal dos EUA é 1 de outubro a 30 de setembro, o ano fiscal pessoal do Reino Unido é 6 de abril a 5 de abril, muitas corporações usam um ano calendário de janeiro a dezembro. Para matemática de ano fiscal, calcule tratando o ano fiscal como um período arbitrário de 365 dias e usando o painel Adicionar/Subtrair. Ou use uma ferramenta financeira dedicada que conheça suas definições fiscais específicas.