Como usar
- Cole um timestamp em “Timestamp → data”. A ferramenta detecta se ele está em segundos, milissegundos, microssegundos ou nanossegundos, ou você pode escolher a unidade.
- Confira a data no seu horário local, em UTC, no formato ISO 8601 e no formato RFC 2822; depois, copie o formato de que precisa.
- Para fazer a conversão inversa, escolha uma data e um horário em “Data → timestamp” e selecione se o horário é local ou UTC.
- O horário Unix atual, exibido na parte superior, é atualizado a cada segundo. Pause-o para copiar um valor fixo.
Como funciona
O horário Unix (também chamado de horário epoch ou horário POSIX) conta os segundos desde 1º de janeiro de 1970, 00:00:00 UTC. Em um dado instante, ele tem o mesmo valor no mundo todo, por isso é usado em bancos de dados, logs, APIs e sistemas de arquivos. Horários anteriores a 1970 têm valores negativos: -86400 corresponde a 31 de dezembro de 1969.
Sistemas diferentes usam unidades diferentes. Ferramentas Unix, PHP e a maioria das APIs usam segundos (10 dígitos para datas atuais); JavaScript e Java usam milissegundos (13 dígitos); e alguns bancos de dados e sistemas de rastreamento usam microssegundos (16 dígitos) ou nanossegundos (19 dígitos). A detecção automática conta os dígitos da parte inteira: até 11 dígitos são interpretados como segundos, de 12 a 14 como milissegundos, de 15 a 17 como microssegundos e 18 ou mais como nanossegundos. Isso funciona para datas aproximadamente entre 1973 e 5138; para outras datas, escolha a unidade manualmente.
Os resultados são exibidos em vários formatos. ISO 8601 (2023-11-14T22:13:20.000Z) é o padrão para troca de dados; Z significa UTC. RFC 2822 (Tue, 14 Nov 2023 22:13:20 +0000) é usado em cabeçalhos de e-mail e feeds RSS. O horário local usa o fuso horário e as configurações de idioma do seu navegador, incluindo o horário de verão.
O horário Unix não considera segundos intercalares: todos os dias têm exatamente 86.400 segundos. As datas são exibidas com precisão de milissegundos, a resolução das datas em JavaScript; por isso, os dígitos adicionais de timestamps em microssegundos e nanossegundos não aparecem nas datas exibidas.
Exemplos
Interpretar uma linha de log
Uma linha de log contém ts=1700000000. Como tem 10 dígitos, é interpretado como segundos: terça-feira, 14 de novembro de 2023, 22:13:20 UTC, com seu horário local logo abaixo.
Um valor de JavaScript Date.now()
1700000000000 tem 13 dígitos e é interpretado como milissegundos: corresponde ao mesmo instante do exemplo acima. Se você dividir por 1.000, obtém o horário Unix em segundos esperado por um backend em PHP ou Python.
Definir a expiração de um token de API
Para que algo expire em 1º de janeiro de 2030 à meia-noite UTC, escolha essa data com “UTC” selecionado: o valor Unix em segundos é 1893456000, pronto para ser usado em uma declaração exp ou em um cabeçalho de cache.
Perguntas frequentes
Como sei se meu timestamp está em segundos ou milissegundos?
Conte os dígitos. Para datas das últimas décadas, valores em segundos têm 10 dígitos (por exemplo, 1700000000) e em milissegundos têm 13 (por exemplo, 1700000000000). A ferramenta faz isso automaticamente e informa a unidade usada.
Um timestamp Unix depende do fuso horário?
Não. Um timestamp identifica um instante, que é o mesmo em qualquer lugar. Apenas a exibição como data e horário depende do fuso horário; por isso, a ferramenta mostra tanto UTC quanto seu horário local.
O que é o problema do ano 2038?
Sistemas que armazenam o horário Unix como um inteiro de 32 bits com sinal só conseguem contar até 2.147.483.647, que corresponde a 19 de janeiro de 2038, 03:14:07 UTC. Um segundo depois, o valor excede o limite. Sistemas modernos usam valores de 64 bits, que evitam o problema; esta ferramenta não é afetada.
Posso converter datas anteriores a 1970?
Sim. Digite um timestamp negativo, como -31536000 (1º de janeiro de 1969), ou escolha uma data anterior em “Data → timestamp”.
Por que o horário local tem uma diferença incomum em relação ao UTC?
Alguns fusos horários têm diferenças de 30 ou 45 minutos (por exemplo, a Índia está em UTC+5:30 e o Nepal em UTC+5:45), e o horário de verão altera essa diferença em parte do ano. O horário local exibido segue as regras de fuso horário do seu dispositivo para a data escolhida.
Privacidade
Todas as conversões usam as funções de relógio e data do seu navegador. O que você digitar não é enviado, armazenado nem incluído em análises.