Pular para o conteúdo
FoiFácil

Conversor de Timestamp Unix

Converta timestamp Unix (segundos ou milissegundos) para data legível, e vice-versa.

Conteúdo revisado em

Data e hora local
Timestamp inválido
ISO 8601 (UTC)
—
Timestamp (segundos)
—
Timestamp (milissegundos)
—

O que é e para que serve

Timestamp Unix é a forma como a maioria dos sistemas de computador representa datas internamente: o número de segundos (ou milissegundos) passados desde 1º de janeiro de 1970 às 00:00 UTC, o chamado "epoch". É compacto, não ambíguo entre fusos horários e fácil de comparar — mas ilegível para humanos. Essa ferramenta converte um timestamp para data legível e uma data legível de volta para timestamp, nos dois formatos mais comuns (segundos e milissegundos).

Como usar

  1. Para converter timestamp em data: digite o número no campo à esquerda, escolhendo se está em segundos ou milissegundos.
  2. Para converter data em timestamp: escolha a data e hora no campo à direita.
  3. Use o botão "Usar agora" para preencher com o timestamp e a data atuais.

Exemplos práticos

Ler um log. Uma linha registra 1787260800. Convertendo, você descobre o instante exato do evento no seu fuso.

Token expirado. O campo exp de um JWT é um timestamp em segundos. Convertendo, dá para saber se o token venceu — causa frequente de erro 401 que parece inexplicável.

Agendar tarefa. Para programar algo, converta a data desejada em timestamp e use o número no agendador.

Calcular diferença entre eventos. Dois timestamps em segundos: subtraia um do outro e divida por 3600 para ter a diferença em horas.

Datas antes de 1970. Timestamps negativos representam instantes anteriores ao epoch. -86400 é 31 de dezembro de 1969.

Marcos úteis

Timestamp (s) Data
0 1 jan 1970, 00:00 UTC
1000000000 9 set 2001
1500000000 14 jul 2017
2000000000 18 mai 2033
2147483647 19 jan 2038 (limite de 32 bits)

Detalhes e limitações

JavaScript internamente trabalha com timestamps em milissegundos, enquanto a maioria dos sistemas Unix/Linux e APIs usa segundos — um erro comum é confundir os dois formatos, o que faz uma data aparecer com um erro de milhares de anos (segundos interpretados como milissegundos ficam 1000 vezes menores que deveriam, e vice-versa). Por isso esta ferramenta deixa a unidade explícita e selecionável. Timestamps negativos (datas antes de 1970) também são suportados.

Erros comuns

Confundir segundos com milissegundos. É o erro clássico. Um timestamp em milissegundos lido como segundos aponta para dezenas de milhares de anos no futuro; o contrário aponta para 1970. Se a data saiu absurda, esse é o primeiro suspeito. Unix usa segundos; JavaScript usa milissegundos.

Assumir que timestamp carrega fuso. Ele representa um instante absoluto em UTC. O fuso entra só na exibição. Guardar "timestamp do horário local" é um conceito que não existe e gera bug.

Ignorar o problema de 2038. Sistemas que guardam timestamp em inteiro de 32 bits com sinal estouram em 19 de janeiro de 2038. Código novo deve usar 64 bits.

Esquecer o horário de verão ao converter datas passadas. Uma data de 2015 no Brasil pode ter estado em horário de verão. Converter usando o offset atual gera erro de uma hora.

Usar timestamp para data de nascimento ou aniversário. Datas sem hora são melhor guardadas como data pura. Timestamp introduz fuso onde ele não deveria existir, e a data pode "andar" um dia.

Perguntas frequentes

Qual a diferença entre timestamp em segundos e em milissegundos?

Timestamp em segundos é o padrão Unix tradicional. Timestamp em milissegundos (usado nativamente pelo JavaScript) tem o mesmo valor multiplicado por 1000. Confundir os dois é a causa mais comum de datas aparecendo completamente erradas.

O que é exatamente o "epoch"?

É o instante de referência a partir do qual o timestamp Unix conta o tempo: 1º de janeiro de 1970, às 00:00 UTC.

A ferramenta funciona com datas antes de 1970?

Sim, usando valores de timestamp negativos, que representam instantes anteriores ao epoch.

Por que minha data aparece como 1970?

Quase sempre é timestamp em milissegundos sendo lido como segundos — ou o valor chegou zerado ou nulo. O epoch é 1º de janeiro de 1970, então valores próximos de zero caem nessa data.

Timestamp Unix inclui fuso horário?

Não. Ele representa um instante absoluto contado a partir do epoch em UTC. O fuso entra apenas na hora de exibir a data para uma pessoa.

O que é o problema do ano 2038?

Sistemas que guardam timestamp em inteiro de 32 bits com sinal estouram em 19 de janeiro de 2038, voltando a datas negativas. A solução é usar 64 bits.

Como calcular a diferença entre duas datas usando timestamp?

Converta as duas para timestamp e subtraia. O resultado em segundos dividido por 3600 dá horas; por 86400, dá dias.

Guias sobre este assunto

Ferramentas relacionadas