Timestamp atual

Timestamp para data

Data para timestamp

Info

Resumo rápido: Unix timestamp conta segundos desde 1 de janeiro de 1970 UTC. Número de 10 digitos = segundos; 13 digitos = milissegundos. Esse formato vive em log, banco, API REST e cookie de sessão.

Conversor timestamp Unix: segundos desde 1970-01-01 UTC

Em log de servidor, resposta JSON de API ou campo de banco aparece com frequencia um número tipo 1715000000 onde deveria estar uma data. Isso e Unix timestamp (ou epoch time): segundos decorridos desde 1970-01-01 00:00:00 UTC.

O formato nasceu no Unix nos anos 1970 e virou padrao universal pra registrar instante exato. E compacto, ordenavel como inteiro e neutro em relacao a fuso horário.

Segundos vs milissegundos

O Unix original conta em segundos. C, Python, PHP, Go, Rust: segundos por padrao. JavaScript (Date.now()), Java (System.currentTimeMillis): milissegundos. Em 2026, timestamp em segundos tem 10 digitos, em milissegundos 13.

Trocar um pelo outro produz o bug classico: data caindo em 1970 (interpretou ms como s e dividiu por mil de menos) ou data no ano 50.000 (interpretou s como ms e multiplicou por mil).

UTC, não horário local

Timestamp e sempre UTC. Elimina ambiguidade de fuso, horário de verao e diferença regional. Conversão pra fuso local fica na camada de apresentacao; no banco, no log e na API o valor permanece UTC. Misturar fuso na camada de armazenamento e o caminho mais curto pra bug de "uma hora a menos" na virada do dia.

Brasil esta em UTC-3 (horário de Brasilia, sem DST desde o decreto 9.772 de 2019). Pra converter UTC pra Brasilia, subtraia 3 horas. A ferramenta acima ja faz isso.

Marcos historicos em Unix timestamp
EventoTimestampData UTC
Epoch (inicio)01970-01-01 00:00:00
Y2K9466848002000-01-01 00:00:00
Marco do bilhao10000000002001-09-09 01:46:40
Limite de 32 bits assinado21474836472038-01-19 03:14:07

O bug Y2038

Timestamp em int32 com sinal tem teto em 2.147.483.647 segundos - 19 de janeiro de 2038, 03:14:07 UTC. Um segundo depois, o contador estoura pra negativo e o sistema acha que voltou pra dezembro de 1901. E o Y2K38.

CPU moderna usa int64, que empurra o limite pra centenas de bilhoes de anos. O risco real fica em embarcado, firmware antigo, kernel Linux 32 bits, banco com coluna TIMESTAMP de 4 bytes. Vai aparecer em coisas que ninguem lembra que rodam por baixo.

Dica

Atalho para identificar a unidade

Em 2026, timestamp em segundos tem 10 digitos. Em milissegundos, tem 13. Se você ve 16 digitos, costuma ser microssegundos.

ISO 8601: data e hora em texto

Unix e amigavel a maquina, ISO 8601 e o formato textual padrao. 2026-05-13T10:30:00-03:00 = 13 de maio de 2026, 10h30 em Brasilia. O "T" separa data de hora, o sufixo "-03:00" e o offset em relacao a UTC. Sufixo "Z" = UTC puro (Zulu time).

JSON (REST, GraphQL), logs estruturados, PostgreSQL, Date.toISOString() em JS - todos preferem ISO 8601. Resolve a ambiguidade dd/mm/aaaa vs mm/dd/aaaa que ja causou erro contabil entre filial brasileira e matriz americana mais vezes do que da pra contar.

Fusos brasileiros e o fim do horário de verao

O Brasil usa principalmente America/Sao_Paulo como identificador de fuso (formato IANA tz database), correspondente a UTC-3. Esse identificador cobre a maior parte do territorio nacional. Outros fusos brasileiros sao:

  • America/Manaus (UTC-4) para Amazonas e Roraima
  • America/Rio_Branco (UTC-5) para Acre
  • America/Noronha (UTC-2) para o arquipelago de Fernando de Noronha

Ate 2018 o Sudeste e Sul aplicavam BRST (UTC-2) no verao. O decreto 9.772 de abril de 2019 acabou com o horário de verao no Brasil. Sao Paulo, Rio e demais capitais ficam em UTC-3 o ano inteiro. tz database atualizada após 2019 ja reflete; servidor com tzdata congelada em 2016 vai errar a hora nos primeiros domingos de novembro a fevereiro.

Onde Unix timestamp aparece

  • Logs: nginx, Apache, syslog gravam em segundos UTC pra alinhar registros entre maquinas em fusos diferentes.
  • APIs REST e GraphQL: created_at, updated_at chegam como inteiro em Stripe, Twitter/X, Discord, GitHub.
  • Bancos: PostgreSQL timestamp with time zone armazena UTC internamente. MySQL TIMESTAMP idem. SQLite costuma usar inteiro Unix direto.
  • Auditoria e financeiro: blockchain, log de pagamento e trilha de auditoria exigem timestamp imutavel em UTC pra correlacao internacional.
  • JWT: claims iat (issued at) e exp (expiration) sempre em Unix timestamp em segundos.

Exemplos historicos de Unix timestamp

Timestamps famosos ao longo da história
Timestamp Data UTC Data Brasilia Contexto
01970-01-01 00:00:0031/12/1969 21:00:00Epoch (inicio Unix)
10000000002001-09-09 01:46:4008/09/2001 22:46:40"Bilhao" Unix
12345678902009-02-13 23:31:3013/02/2009 20:31:30Marco simbolico
15778368002020-01-01 00:00:0031/12/2019 21:00:00Inicio de 2020 UTC
21474836472038-01-19 03:14:0719/01/2038 00:14:07Limite signed 32 bits (Y2038)

Três representacoes do mesmo instante

No dia a dia alterna-se entre três formas do mesmo momento:

  • Unix (1747140000): compacto, neutro, ideal pra banco e API.
  • ISO 8601 (2026-05-13T10:00:00-03:00): textual, sem ambiguidade, ideal pra log e JSON.
  • Data brasileira (13/05/2026 10:00:00): apresentacao pra usuário final no Brasil.

A ferramenta acima atravessa qualquer caminho entre as três. Em codigo, mantenha UTC internamente e converta pra fuso local so na exibicao.

Sobre como formatos como ISO 8601 sao publicados oficialmente, veja o que sao RFCs e padrões de internet. A RFC 3339 e o subset de ISO 8601 usado em protocolos de internet.

Perguntas frequentes sobre Timestamp Unix

O que é um timestamp Unix?

É a contagem de segundos decorridos desde a meia-noite de 1 de janeiro de 1970 em UTC, o chamado epoch Unix. Como é um número único e independente de fuso, serve de referência universal de tempo em bancos de dados, logs e APIs.

O timestamp está em segundos ou em milissegundos?

Os sistemas Unix tradicionais e a linguagem C contam em segundos, com valores de 10 dígitos para datas atuais. Já o JavaScript e várias APIs contam em milissegundos, com 13 dígitos. O conversor reconhece a escala pelo tamanho do número e trata os dois casos.

Como o conversor lida com o fuso horário do Brasil?

Por padrão a data é exibida em America/Sao_Paulo, com a sigla BRT (UTC-3) no horário padrão. O conversor também mostra a versão em UTC e em ISO 8601, para que você compare o instante absoluto com o horário local.

O Brasil ainda tem horário de verão?

Não. O horário de verão foi encerrado por decreto em 2019 e não vigora desde então, então a diferença para UTC permanece fixa em 3 horas no fuso de Brasília. Datas antigas dentro de um período de verão anterior podem exibir a sigla BRST.

O que é o formato ISO 8601?

É o padrão internacional para escrever data e hora de forma não ambígua, como 2026-07-11T14:30:00-03:00. A ordem ano-mês-dia com o deslocamento de fuso evita a confusão entre formatos brasileiro e americano e ordena corretamente como texto.

Para que serve o timestamp Unix em logs?

Guardar o instante em segundos desde o epoch elimina ambiguidade de fuso e de formato, ordena eventos de forma consistente e facilita cálculos de diferença. Ferramentas como Elasticsearch e BigQuery lidam bem com esse valor numérico.

Posso converter datas anteriores a 1970?

Sim. Datas antes do epoch são representadas por timestamps negativos, e o conversor aceita esses valores. Eles são raros em aplicações modernas, mas aparecem em dados históricos e em algumas migrações.

O conversor timestamp transforma Unix epoch em data legivel nos dois sentidos, com saidas paralelas em horário de Brasilia, UTC e ISO 8601 para depurar log, banco e API sem ambiguidade de fuso.