Transforme um timestamp Unix em data legível, em UTC e no seu fuso horário, ou faça o caminho inverso a partir de uma data ISO 8601. A unidade é detectada automaticamente: segundos, milissegundos, microssegundos ou nanossegundos.
Como usar
- Para converter um número em data, cole o timestamp no primeiro campo e clique em Converter em data. Deixe a unidade em Detectar automaticamente ou escolha uma.
- Para ver o timestamp de agora, clique em Usar o momento atual.
- Para converter uma data em número, digite-a no formato ISO 8601 no segundo campo e clique em Converter em timestamp.
- Se a data não tiver fuso, escolha se ela deve ser lida como UTC ou como o seu horário local.
Exemplos
| Entrada | Unidade detectada | Resultado em UTC |
|---|---|---|
0 | segundos | 1970-01-01T00:00:00.000Z |
1700000000 | segundos | 2023-11-14T22:13:20.000Z |
1772893800000 | milissegundos | 2026-03-07T14:30:00.000Z |
-86400 | segundos | 1969-12-31T00:00:00.000Z |
No sentido inverso, estas três datas representam o mesmo instante e geram o mesmo timestamp, 1772893800:
2026-03-07T14:30:00Z
2026-03-07T11:30:00-03:00
2026-03-07T20:00:00+05:30
Como funciona
Um timestamp Unix é a quantidade de tempo passada desde 1º de janeiro de 1970, 00:00:00 UTC (a “época Unix”). Ele não tem fuso: o mesmo número representa o mesmo instante no mundo todo. O fuso só entra quando o instante é exibido como data e hora.
Como sistemas diferentes usam unidades diferentes, a ferramenta decide pela magnitude do número:
| Valor absoluto | Unidade assumida | Onde costuma aparecer |
|---|---|---|
| menor que 1011 (até 11 dígitos) | segundos | Unix, PHP, Python time.time(), claims de JWT |
| de 1011 a 1014 | milissegundos | JavaScript Date.now(), Java System.currentTimeMillis() |
| de 1014 a 1017 | microssegundos | PostgreSQL, alguns sistemas de log |
| a partir de 1017 | nanossegundos | Go UnixNano(), OpenTelemetry |
Essa regra é uma heurística. Um timestamp em segundos de datas além do ano 5138, ou em milissegundos de 1973 para trás, seria classificado na unidade errada; nesses casos escolha a unidade manualmente.
Na conversão de data para timestamp, a ferramenta valida o calendário de verdade (30 de fevereiro ou 25 horas são recusados), em vez de deixar o navegador “ajustar” silenciosamente a data, como o Date do JavaScript costuma fazer.
Uso em QA e desenvolvimento
- Ler campos de data numéricos em respostas de API, eventos e mensagens de fila.
- Conferir os claims
exp,iatenbfde um JWT, que são em segundos. - Montar massa de testes com datas exatas: vencimento hoje, ontem, daqui a 30 dias.
- Investigar bugs de fuso horário, comparando o instante em UTC e no horário local.
- Correlacionar logs de serviços que gravam o tempo em unidades diferentes.
Erros comuns com timestamps
- Misturar segundos e milissegundos: um timestamp em segundos lido como milissegundos vira uma data de janeiro de 1970.
- Data sem fuso: “2026-03-07 14:30” é ambígua. Cada sistema pode interpretá-la como UTC ou como horário local.
- Horário de verão: em fusos que adotam horário de verão, uma hora local pode não existir ou acontecer duas vezes no dia da mudança.
- Formato dd/mm/aaaa: não é ISO 8601 e é confundido com mm/dd/aaaa em sistemas em inglês.
Limitações
- A precisão exibida vai até milissegundos. Micro e nanossegundos são convertidos, mas a fração abaixo de 1 ms é descartada.
- O intervalo suportado é o do objeto
Datedos navegadores: ±8,64 × 1015 ms em torno de 1970. - Segundos bissextos não são representados, assim como no próprio tempo Unix.
- O horário local usa o fuso configurado no seu sistema operacional.
Perguntas frequentes
O timestamp muda conforme o fuso horário?
Não. O timestamp identifica um instante único. Quem muda é a representação em data e hora: 1772893800 é 14:30 em UTC e 11:30 em Brasília.
O que é o problema do ano 2038?
Sistemas que guardam o timestamp em segundos num inteiro de 32 bits com sinal estouram em 19 de janeiro de 2038, às 03:14:07 UTC (2147483647). Vale testar campos de data com valores além desse limite.
Timestamps negativos são válidos?
Sim. Eles representam instantes anteriores a 1970. -86400 é 31 de dezembro de 1969, 00:00 UTC.
Por que meu timestamp de 13 dígitos virou uma data estranha em outro sistema?
Provavelmente o outro sistema esperava segundos. Um valor com 13 dígitos está em milissegundos; divida por 1000.
Ferramentas relacionadas
- Formatador e validador de JSON: leia o payload que contém as datas.
- Comparador de JSON: encontre campos de data que mudaram entre duas respostas.
