Calcular idade
Esta calculadora mostra a idade a partir da data de nascimento: em anos completos e de forma exata, em anos, meses e dias. Ela também conta os dias vividos e quanto falta para o próximo aniversário, com o dia da semana em que ele cai. Dá para calcular a idade em qualquer data, não só hoje, como na data de uma inscrição ou de um contrato.
Idade
A idade é contada em anos, meses e dias completos, como no calendário. A data de nascimento não sai do seu navegador.
Achou um resultado errado ou tem uma sugestão? Avise por e-mail.
Como usar
- Informe a data de nascimento.
- Deixe a data de hoje ou escolha outra data em "Idade em".
- Leia a idade, a idade exata e os dias até o próximo aniversário.
Como funciona
A idade em anos é o número de aniversários completos até a data escolhida: quem nasceu em 2 de outubro de 1990 tem 35 anos em 1º de outubro de 2026 e faz 36 no dia seguinte. A idade exata soma os meses e dias desde o último aniversário, contando meses de calendário.
Quem nasceu em 29 de fevereiro tem aniversário só nos anos bissextos. Nos outros anos, a calculadora considera 28 de fevereiro, a mesma convenção das planilhas. Para fins legais, como a maioridade, há o entendimento de que vale 1º de março, pelo artigo 132 do Código Civil.
Exemplo
Nascimento: 02/10/1990
Idade em 01/10/2026: 35 anos (35 anos, 11 meses e 29 dias)
Próximo aniversário: amanhã, 36 anos
Fonte: Código Civil, art. 132: contagem de prazos em dias, meses e anos
Em código
Para calcular a idade em código, subtraia os anos e tire 1 se o aniversário ainda não chegou naquele ano. Dividir os dias vividos por 365 erra perto do aniversário.
// Idade em anos completos na data de referência (padrão: hoje), com datas no formato AAAA-MM-DD.
function calcularIdade(nascimento, referencia = new Date().toISOString().slice(0, 10)) {
const [an, mn, dn] = nascimento.split('-').map(Number);
const [ar, mr, dr] = referencia.split('-').map(Number);
let idade = ar - an;
// Ainda não fez aniversário neste ano? Tira 1.
// Nesta conta, quem nasceu em 29/02 faz aniversário em 1º/03 nos anos não bissextos.
if (mr < mn || (mr === mn && dr < dn)) idade--;
return idade;
}
console.log(calcularIdade('1990-10-02', '2026-10-01')); // 35
console.log(calcularIdade('1990-10-02', '2026-10-02')); // 36 from datetime import date
def calcular_idade(nascimento: date, referencia: date | None = None) -> int:
"""Idade em anos completos na data de referência (padrão: hoje)."""
referencia = referencia or date.today()
# Ainda não fez aniversário neste ano? A comparação de tuplas resolve: (mês, dia).
# Nesta conta, quem nasceu em 29/02 faz aniversário em 1º/03 nos anos não bissextos.
ainda_nao = (referencia.month, referencia.day) < (nascimento.month, nascimento.day)
return referencia.year - nascimento.year - ainda_nao
print(calcular_idade(date(1990, 10, 2), date(2026, 10, 1))) # 35
print(calcular_idade(date(1990, 10, 2), date(2026, 10, 2))) # 36 <?php
// Idade em anos completos na data de referência (padrão: hoje), com datas no formato AAAA-MM-DD.
function calcularIdade(string $nascimento, ?string $referencia = null): int
{
$inicio = new DateTimeImmutable($nascimento);
$fim = new DateTimeImmutable($referencia ?? 'today');
// diff conta anos, meses e dias de calendário; y são os anos completos.
// Nesta conta, quem nasceu em 29/02 faz aniversário em 1º/03 nos anos não bissextos.
return $inicio->diff($fim)->y;
}
echo calcularIdade('1990-10-02', '2026-10-01'), PHP_EOL; // 35
echo calcularIdade('1990-10-02', '2026-10-02'), PHP_EOL; // 36 Perguntas frequentes
Como calcular a idade no Excel?
Use =DATADIF(A1;HOJE();"Y"), com a data de nascimento em A1. Para os meses desde o último aniversário, use =DATADIF(A1;HOJE();"YM").
Como calcular a idade em código sem errar?
Subtraia os anos e tire 1 se o aniversário daquele ano ainda não chegou. Dividir os dias vividos por 365 ou 365,25 erra perto do aniversário. A seção Em código, nesta página, mostra a função em JavaScript, Python e PHP.
A data de nascimento fica salva?
Não. O cálculo é feito no seu navegador, e a data não é enviada a nenhum servidor nem guardada depois que você fecha a página.
Outras ferramentas que podem ajudar
- Diferença entre DatasCalcule a diferença entre duas datas em anos, meses e dias, e o total em dias, semanas, meses e horas
- Contar Dias entre DatasConte os dias corridos e os dias úteis entre duas datas, descontando fins de semana e feriados nacionais
- Somar Dias em DatasSome dias corridos, dias úteis, semanas, meses ou anos a uma data e veja o dia da semana do resultado
- Gerador de PessoasGere pessoas fictícias com nome, CPF válido, nascimento, e-mail, celular e endereço para testar sistemas
- Dias Úteis e FeriadosVeja os feriados nacionais e pontos facultativos do ano, com o dia da semana, e quantos dias úteis tem cada mês
- Converter Anos em Dias1 ano tem 365 dias, ou 366 em ano bissexto