O que é timestamp
Timestamp é um valor numérico que representa um instante. O mais comum é o timestamp Unix — o número de segundos (ou milissegundos) decorridos desde 1º de janeiro de 1970, 00:00:00 UTC. Por exemplo, 1720780800 corresponde a 2024-07-12 12:00:00 UTC. Timestamps estão por toda parte em programação, logs, bancos de dados e APIs.
Por que converter
- Ler logs: logs são cheios de timestamps, difíceis de ler a olho nu, é preciso converter para horário legível
- Depurar APIs: a interface retorna timestamps, é preciso confirmar se estão corretos
- Entre fusos horários: converter timestamps UTC para exibição no horário local
- Banco de dados: o que está armazenado é timestamp, a exibição precisa ser formatada
Formatos de tempo comuns
Timestamp Unix
- Nível de segundos: 10 dígitos (ex.: 1720780800)
- Nível de milissegundos: 13 dígitos (ex.: 1720780800000, comum em JS/Java)
ISO 8601
No formato 2024-07-12T12:00:00Z, padrão internacional, comum em APIs. O Z no final indica UTC.
Horário local
Como 2024-07-12 20:00:00, com deslocamento de fuso horário, variando conforme a região.
Ferramenta de conversão de timestamp do DocsAll
Use a ferramenta de conversão de timestamp para converter com um clique:
- Abra a ferramenta de timestamp
- Insira o timestamp → exibe automaticamente o horário legível; ou insira o horário → obtém o timestamp
- Suporta alternar entre segundos/milissegundos
- Copie o resultado
Exemplos de conversão
| Timestamp (segundos) | Horário UTC | Horário de Pequim (UTC+8) |
|---|---|---|
| 0 | 1970-01-01 00:00 | 1970-01-01 08:00 |
| 1720780800 | 2024-07-12 12:00 | 2024-07-12 20:00 |
Armadilhas comuns
Segundos vs. milissegundos
O Date.now() do JS retorna milissegundos (13 dígitos), enquanto time.time() do Python retorna segundos (10 dígitos). Misturá-los gera diferença de 1000 vezes; confirme a unidade antes de converter.
Fuso horário
Um mesmo timestamp é exibido de forma diferente em fusos horários distintos. O horário de Pequim está 8 horas à frente do UTC: 1720780800 é meio-dia em UTC e 20h em Pequim. Uma prática comum é armazenar UTC no backend e exibir conforme o fuso do usuário no frontend.
Problema do ano 2038
Timestamps Unix de 32 bits estouram em 19/01/2038. Sistemas modernos costumam usar 64 bits e não são afetados, mas sistemas embarcados antigos precisam de atenção.
Timestamps negativos
Datas anteriores a 1970 são representadas por números negativos; algumas ferramentas não as suportam. Atenção ao converter datas anteriores a 1969.
Recomendações práticas
- No backend, armazene sempre timestamps UTC; no frontend, converta para o fuso local conforme necessário
- Ao analisar logs, use uma ferramenta para converter timestamps em lote para horário legível — é cem vezes mais rápido que calcular de cabeça
- Ao depurar interfaces, confirme primeiro se o retorno é em segundos ou milissegundos
A conversão de timestamps é uma operação frequente no dia a dia do desenvolvimento. Guarde a ferramenta nos favoritos e abra quando precisar.