Como funciona o timestamp Unix
O timestamp Unix (também chamado de epoch time ou tempo POSIX) é o número de segundos decorridos desde01/01/1970 às 00:00:00 UTC. Ele não carrega fuso horário nem formato de data: o mesmo número representa o mesmo instante em qualquer lugar do mundo. Só na hora de exibir é que se escolhe o fuso — no Brasil, geralmente o horário de Brasília (UTC−3).
Os segundos bissextos são ignorados: para o timestamp, todo dia tem exatamente 86.400 segundos. Isso torna a conversão uma conta simples de divisão.
Fórmula
dias = ⌊timestamp ÷ 86.400⌋ · segundos do dia = timestamp − dias × 86.400
Somam-se os dias a 01/01/1970 para obter a data em UTC, e os segundos do dia viram horas (÷ 3.600), minutos e segundos. Por fim, aplica-se o fuso: no horário de Brasília, subtraem-se 3 horas.
Para o caminho inverso (data → timestamp), converte-se primeiro a hora local para UTC e então:
timestamp = dias desde 01/01/1970 × 86.400 + hora × 3.600 + minuto × 60 + segundo
Exemplo
Converter o timestamp 1700000000:
- 1.700.000.000 ÷ 86.400 = 19.675 dias completos, com sobra de 80.000 segundos.
- 19.675 dias depois de 01/01/1970 cai em 14/11/2023 (uma terça-feira).
- 80.000 s = 22 h 13 min 20 s, ou seja, 22:13:20 UTC.
- No horário de Brasília (UTC−3): 14/11/2023 às 19:13:20.
No sentido contrário, 01/01/2026 à meia-noite em Brasília corresponde a 03:00 UTC, o que dá o timestamp1767236400.
Segundos, milissegundos ou microssegundos?
| Unidade | Dígitos (datas atuais) | Exemplo | Onde aparece |
|---|---|---|---|
| Segundos | 10 | 1700000000 | Linux, PHP time(), Python time.time(), MySQL UNIX_TIMESTAMP(), tokens JWT |
| Milissegundos | 13 | 1700000000000 | JavaScript Date.now(), Java System.currentTimeMillis() |
| Microssegundos | 16 | 1700000000000000 | PostgreSQL internamente, alguns logs |
| Nanossegundos | 19 | 1700000000000000000 | Go UnixNano(), bancos de séries temporais |
No modo automático, a calculadora deduz a unidade pelo número de dígitos. Se o resultado cair em 1970 ou num ano absurdo, provavelmente a unidade está errada: escolha-a manualmente.
Fusos do Brasil e o antigo horário de verão
O Brasil tem quatro fusos: UTC−2 (Fernando de Noronha), UTC−3 (Brasília), UTC−4 (Amazonas, Mato Grosso, Mato Grosso do Sul, Rondônia e Roraima) e UTC−5 (Acre). O horário de verão foi extinto em 2019, mas timestamps de datas antigas continuam sendo convertidos com a regra da época: em 01/12/2018 ao meio-dia, Brasília estava em UTC−2. A calculadora usa o banco de fusos do seu navegador, que guarda esse histórico. Para converter apenas horários entre cidades, use oconversor de fuso horário.
O problema do ano 2038
Um inteiro de 32 bits com sinal vai até 2.147.483.647. Como timestamp, esse número corresponde a19/01/2038 às 03:14:07 UTC (00:14:07 em Brasília). Um segundo depois, sistemas que ainda usam 32 bits estouram e passam a mostrar datas de 1901. A calculadora avisa quando o valor convertido passa desse limite.
A conversão é feita no seu navegador. No modo "Timestamp de agora", o valor vem do relógio do seu dispositivo, que pode estar alguns segundos adiantado ou atrasado em relação à hora oficial (Observatório Nacional).