Conversor Timestamp Unix
Converta entre timestamp Unix e data legível
Timestamp atual
Timestamp → Data
Data → Timestamp
O que é Timestamp Unix?
O timestamp Unix (também chamado de epoch time ou POSIX time) é o número de segundos que se passaram desde 1º de janeiro de 1970 às 00:00:00 UTC.
É amplamente utilizado em programação e bancos de dados por ser um formato universal e fácil de manipular.
Epoch: 0 = 01/01/1970 00:00:00 UTC
Exemplo: 1700000000 = 14/11/2023 22:13:20 UTC
Como Funciona o Timestamp Unix
O timestamp Unix utiliza como referência a chamada Unix Epoch: 1º de janeiro de 1970, às 00:00:00 UTC. Essa data foi escolhida pelos criadores do sistema operacional Unix na década de 1970 como um ponto de partida prático — era uma data recente o suficiente para não gerar números enormes e suficientemente antiga para cobrir a maioria dos registros necessários na época.
O valor do timestamp representa o número de segundos decorridos desde a Epoch. É importante notar que JavaScript usa milissegundos internamente (Date.now() retorna ms), enquanto a maioria dos sistemas Unix, Python e bancos de dados usam segundos. Essa diferença é uma fonte comum de bugs ao integrar sistemas.
Em sistemas de 32 bits, o timestamp é armazenado como um inteiro com sinal, o que cria o famoso problema Y2K38: em 19 de janeiro de 2038 às 03:14:07 UTC, o valor atinge 2.147.483.647 (2³¹ − 1) e sofre overflow. Sistemas modernos de 64 bits resolvem esse problema ao suportar timestamps por mais de 292 bilhões de anos.
Exemplos de Uso em Programação
Desenvolvedores utilizam timestamps Unix em diversas situações: registrar horários em APIs REST, armazenar datas em bancos de dados, controlar sessões de usuário, criar logs de sistema e calcular intervalos de tempo de forma simples.
JavaScript
// Timestamp atual em segundos
const agora = Math.floor(Date.now() / 1000);
// Converter timestamp para data
const data = new Date(1700000000 * 1000);
console.log(data.toLocaleString('pt-BR'));
// → "14/11/2023, 19:13:20" Python
import time
from datetime import datetime
# Timestamp atual
agora = int(time.time())
# Converter timestamp para data
dt = datetime.fromtimestamp(1700000000)
print(dt.strftime('%d/%m/%Y %H:%M:%S'))
# → "14/11/2023 19:13:20" Aprenda Mais no Blog
Perguntas Frequentes
Qual a diferença entre timestamp em segundos e milissegundos? ▼
O timestamp Unix tradicional conta segundos desde a Epoch (ex.: 1700000000). Já o JavaScript e algumas APIs retornam milissegundos (ex.: 1700000000000 — com 3 zeros a mais). Para converter ms em segundos, divida por 1000. Sempre verifique a documentação da API ou linguagem que está usando.
O que é o bug do ano 2038 (Y2K38)? ▼
Em sistemas de 32 bits, o timestamp é armazenado como um inteiro com sinal de 32 bits, cujo valor máximo é 2.147.483.647. Esse limite será atingido em 19 de janeiro de 2038 às 03:14:07 UTC, causando um overflow que pode fazer a data voltar para 1901. Sistemas de 64 bits já resolvem o problema.
O timestamp Unix considera fusos horários? ▼
Não. O timestamp Unix é sempre baseado em UTC (Tempo Universal Coordenado) e não possui informação de fuso horário. A conversão para horário local é feita pela aplicação no momento da exibição. Isso o torna ideal para armazenar datas de forma universal.
Qual era o timestamp Unix quando eu nasci? ▼
Use o conversor acima! Insira sua data de nascimento no campo "Data → Timestamp" e clique em converter. Se você nasceu antes de 1º de janeiro de 1970, o resultado será um número negativo, já que a contagem parte da Epoch.
Para que serve um timestamp em APIs? ▼
APIs usam timestamps para registrar quando um recurso foi criado ou modificado (created_at, updated_at), definir expiração de tokens (campo exp em JWT), e ordenar eventos cronologicamente sem ambiguidade de fuso horário.
Como converter timestamp Unix no Excel? ▼
No Excel, use a fórmula =(A1/86400)+DATA(1970,1,1) (onde A1 contém o timestamp em segundos). Formate a célula como Data/Hora. O valor 86400 representa o total de segundos em um dia. Para milissegundos, divida por 86400000.
Exemplos prontos
- Timestamp inicio Unix
0Valor zero representa 01/01/1970 00:00:00 UTC — época zero do sistema Unix. - Data atual aproximada
1765000000Timestamp próximo a dezembro de 2025 — útil para verificar cache ou expiração de token. - Filtro em API REST
1735689600Query para buscar registros criados após 01/01/2025 00:00:00 UTC em banco de dados. - Data 31/12/1999 (pre Y2K)
946684799Timestamp simbólico do bug do milênio — segundo antes da virada para 2000. - Converter data para epoch
2030-01-01 00:00:00Gerar timestamp para campos expiry em cookies, JWT ou agendamento de jobs.