Conversor de timestamp Unix

Converta timestamps Unix em datas e vice-versa. Detecta segundos, milissegundos, microssegundos e nanossegundos, em qualquer fuso horário.

Hora atual

Segundos
Milissegundos

Timestamp → data e hora

Data e hora → timestamp

Por exemplo 2023-11-15 06:13:20 ou 2023-11-15T06:13:20.123Z. Sem Z ou um deslocamento como -03:00, usa-se o fuso horário escolhido acima.

O que é um timestamp Unix?

Um timestamp Unix é o número de segundos desde 1º de janeiro de 1970, 00:00:00 UTC. Ele não depende do fuso horário: o mesmo instante tem o mesmo timestamp em São Paulo e em Lisboa, e só muda a forma como aparece na hora local. Bancos de dados, APIs e logs o usam para registrar datas.

Como usar

  1. Cole um timestamp em "Timestamp → data e hora". A data, ISO 8601, UTC, o dia da semana e o tempo relativo aparecem na hora.
  2. Digite uma data em "Data e hora → timestamp" para obter segundos, milissegundos, microssegundos e nanossegundos.
  3. Use "Fuso horário", no topo, para escolher o fuso de exibição e conversão. O padrão é o fuso horário do seu computador.

Segundos, milissegundos, microssegundos ou nanossegundos?

A unidade é detectada pela quantidade de dígitos: um timestamp atual tem 10 dígitos em segundos, 13 em milissegundos, 16 em microssegundos e 19 em nanossegundos. Date.now() do JavaScript e System.currentTimeMillis() do Java retornam milissegundos; time() do PHP e int(time.time()) do Python retornam segundos. Se a detecção errar, escolha a unidade manualmente.

Exemplo

O timestamp 1700000000 (segundos) em Taipé (UTC+8) é:

2023-11-15T06:13:20+08:00

Em UTC é:

2023-11-14T22:13:20Z

Perguntas frequentes

Por que meu resultado está 3 horas diferente?

Um timestamp está sempre em UTC. Se um programa o mostra como UTC, o horário de Brasília parece 3 horas adiantado; se o horário local é convertido como se fosse UTC, o timestamp fica 3 horas atrasado. Confira o fuso horário escolhido ou acrescente -03:00 ou Z depois da data.

Os nanossegundos são mantidos com exatidão?

Sim. Os números do JavaScript só são exatos até cerca de 16 dígitos, então um timestamp de 19 dígitos em nanossegundos normalmente mudaria. Esta ferramenta usa inteiros grandes e mantém todos os dígitos.

Posso digitar datas anteriores a 1970?

Sim. Timestamps anteriores a 1970 são negativos; por exemplo, -86400 é 1969-12-31 00:00:00 UTC.

O que é o problema do ano 2038?

Sistemas que guardam os segundos em um inteiro com sinal de 32 bits só chegam a 2147483647, que é 2038-01-19 03:14:07 UTC; depois disso o valor transborda para um número negativo. Usar inteiros de 64 bits ou milissegundos evita o problema.