Conversor de Timestamp Unix — Epoch para Data e Vice-Versa
Um timestamp Unix (também chamado de epoch time ou tempo POSIX) é o número de segundos decorridos desde 1º de janeiro de 1970 às 00:00:00 UTC. É assim que a maioria dos sistemas operacionais, bancos de dados e APIs armazena instantes no tempo, porque um único número inteiro é compacto, sem ambiguidade e fácil de comparar. Este conversor transforma um timestamp em uma data legível — exibida no seu fuso horário local e em UTC — e converte qualquer data e hora de volta para o timestamp correspondente.
A ferramenta trabalha com segundos e milissegundos, as duas resoluções encontradas na prática: ferramentas Unix e a maioria das APIs usam segundos (10 dígitos atualmente), enquanto o Date.now() do JavaScript e muitos sistemas de log usam milissegundos (13 dígitos). Um relógio ao vivo mostra o timestamp atual em tempo real, útil para verificações rápidas durante o debug.
Como funciona
Um timestamp Unix conta os segundos decorridos desde a época de referência, 1970-01-01T00:00:00Z, ignorando segundos bissextos. O conversor multiplica um valor em segundos por 1.000 para construir um Date do JavaScript, que é então exibido no seu fuso local e em UTC usando a API de internacionalização do navegador. No sentido inverso, a data e a hora informadas são interpretadas no fuso selecionado e a ferramenta retorna getTime() ÷ 1000 (segundos) ou getTime() (milissegundos).
Casos de uso
- Decodificar campos de timestamp em respostas de API, arquivos de log e dumps de banco de dados
- Gerar o timestamp de uma data específica para usar em uma consulta ou script
- Consultar o tempo Unix atual ao depurar expiração de tokens (claims exp/iat de JWT)
- Distinguir segundos de milissegundos quando uma data aparece décadas fora do esperado
- Comparar horários de eventos entre servidores que registram logs em fusos diferentes
- Converter horários de tarefas agendadas entre UTC e hora local
Perguntas frequentes
O que é um timestamp Unix?
Um timestamp Unix é o número de segundos decorridos desde 1º de janeiro de 1970 às 00:00:00 UTC, um ponto de referência chamado época Unix (epoch). É a forma padrão de os computadores armazenarem e trocarem instantes no tempo: um único inteiro, independente de fuso horário e trivial de comparar. Por exemplo, 1750000000 corresponde a junho de 2025.
Como saber se um timestamp está em segundos ou milissegundos?
Conte os dígitos: timestamps atuais em segundos têm 10 dígitos, enquanto em milissegundos têm 13. Se você converter um valor em milissegundos como se fosse segundos, a data resultante cai dezenas de milhares de anos no futuro; no sentido contrário, cai pouco depois de 1970. Este conversor permite alternar entre as duas resoluções para conferir rapidamente.
Timestamps Unix têm fuso horário?
Não. Um timestamp identifica um único instante, que é o mesmo em qualquer lugar do planeta — ele está sempre ancorado ao UTC. O fuso horário só entra em cena quando você formata esse instante como data legível, e é por isso que o mesmo timestamp mostra horários de relógio diferentes em São Paulo, Lisboa e Nova York.
O que é o problema do ano 2038?
Sistemas que armazenam timestamps como inteiros de 32 bits com sinal estouram em 19 de janeiro de 2038 às 03:14:07 UTC, quando a contagem ultrapassa 2.147.483.647. Os sistemas afetados voltariam para uma data em 1901. Sistemas operacionais, bancos de dados e linguagens modernas já migraram em grande parte para valores de 64 bits, que empurram o limite bilhões de anos adiante, mas dispositivos embarcados antigos e formatos legados ainda podem ser afetados.
Como obter o timestamp Unix atual em código?
Em JavaScript, Math.floor(Date.now() / 1000) retorna segundos (Date.now() sozinho retorna milissegundos). Em Python, use int(time.time()). Em um shell Unix, execute date +%s, e em bancos de dados SQL existem funções como UNIX_TIMESTAMP() no MySQL ou EXTRACT(EPOCH FROM NOW()) no PostgreSQL. Todas retornam o mesmo instante, independentemente do fuso horário da máquina.