Conversor de Timestamp

Converta timestamps Unix para datas legíveis e de volta ao epoch

Timestamp Unix Atual

1774458476

Wed, 25 Mar 2026 17:07:56 GMT

ou

O Que É um Timestamp Unix?

Um timestamp Unix (também chamado de epoch time ou POSIX time) é o número de segundos decorridos desde 1º de janeiro de 1970, 00:00:00 UTC. Essa data é chamada de Unix epoch. Cada segundo que passa incrementa o contador em um, dando a cada momento no tempo uma representação inteira única. Um conversor de timestamp Unix traduz entre esse inteiro e formatos de data legíveis como ISO 8601, RFC 2822 ou strings específicas de localidade.

Timestamps Unix são a forma padrão de representar tempo em computação. Bancos de dados armazenam colunas created_at e updated_at como inteiros ou timestamps em milissegundos. Respostas de API incluem timestamps para cabeçalhos de cache (Expires, Last-Modified), claims JWT (iat, exp, nbf) e logs de eventos. Arquivos de log do nginx, syslog e frameworks de aplicação utilizam epoch time. O formato é inequívoco porque sempre representa UTC, sem fuso horário ou ajuste de horário de verão para interpretar erroneamente.

Converter manualmente entre timestamps e datas é propenso a erros. Um valor como 1711324800 não dá nenhuma pista visual sobre a data que representa. Esta ferramenta converte timestamps Unix para datas legíveis e datas de volta para timestamps. Seja para ler um claim exp de um JWT, depurar uma consulta de banco de dados ou verificar um timestamp de log, ela trata automaticamente valores de 10 dígitos (segundos) e 13 dígitos (milissegundos).

Por Que Usar Este Conversor de Timestamp?

Ler timestamps Unix brutos de logs, bancos de dados ou respostas de API exige ou memorizar a matemática de epoch ou escrever código descartável. Este conversor faz isso no seu navegador sem nenhuma configuração. Seja para decodificar um exp de JWT, auditar uma linha de log ou definir um TTL em banco de dados, o resultado está a um clique de distância. A ferramenta detecta automaticamente se um valor é um timestamp de segundos com 10 dígitos ou de milissegundos com 13 dígitos, então você nunca precisa dividir manualmente por 1000. Todo o processamento é executado localmente no seu navegador. Nenhum dado sai do seu dispositivo, então timestamps de sistemas internos e logs sensíveis permanecem privados.

Conversão Instantânea
Digite um timestamp ou selecione uma data e veja o resultado imediatamente. Sem envio de formulário, sem recarregamento de página. Suporta tanto segundos quanto milissegundos.
🔒
Processamento com Privacidade
Todas as conversões são executadas no seu navegador usando o objeto Date nativo do JavaScript. Nenhum dado sai do seu dispositivo, então timestamps de sistemas internos permanecem privados.
🔄
Conversão Bidirecional
Converta timestamps Unix para datas e datas de volta para timestamps. Digite um valor em qualquer direção e obtenha o resultado correspondente sem trocar de ferramenta.
🌐
Múltiplos Formatos de Saída
Veja seu timestamp como UTC, hora local, ISO 8601 e tempo relativo simultaneamente. Copie qualquer formato com um clique.

Casos de Uso do Conversor de Timestamp

Desenvolvimento Frontend
Decodifique timestamps de respostas de API REST para verificar que a exibição de datas renderiza corretamente entre fusos horários. Verifique se uma API retorna segundos ou milissegundos.
Engenharia Backend
Converta timestamps de banco de dados ao depurar consultas. Verifique se os valores de created_at, updated_at e expires_at correspondem às datas esperadas após migrações ou mudanças de fuso horário.
DevOps e SRE
Traduza valores de epoch de arquivos de log, dashboards de monitoramento (Grafana, Datadog) e sistemas de alertas para identificar quando um incidente começou ou um deploy foi concluído.
QA e Testes
Gere timestamps específicos para fixtures de testes. Verifique que funcionalidades dependentes de tempo, como expiração de tokens, TTLs de cache e jobs agendados, disparam no momento correto.
Engenharia de Dados
Converta colunas de timestamp ao inspecionar exportações de dados brutos do PostgreSQL, MySQL ou data warehouses. Confirme que pipelines ETL preservam informações de fuso horário corretamente.
Aprendizado e Educação
Entenda como computadores representam tempo internamente. Experimente casos extremos como o problema Y2038, timestamps negativos para datas anteriores a 1970 e precisão em milissegundos.

Tabela de Referência de Timestamps Unix

A tabela abaixo mostra timestamps Unix conhecidos e suas datas correspondentes. Esses valores são úteis para verificações rápidas de sanidade, testes e para entender o intervalo de timestamps de 32 e 64 bits.

TimestampData (UTC)Observação
0Jan 1, 1970 00:00:00 UTCUnix epoch start
86400Jan 2, 1970 00:00:00 UTCExactly 1 day
946684800Jan 1, 2000 00:00:00 UTCY2K
1000000000Sep 9, 2001 01:46:40 UTC10-digit milestone
1234567890Feb 13, 2009 23:31:30 UTCAscending digits
1700000000Nov 14, 2023 22:13:20 UTCRecent 10-digit
2000000000May 18, 2033 03:33:20 UTCNext 10-digit milestone
2147483647Jan 19, 2038 03:14:07 UTCY2038 (signed 32-bit max)
4102444800Jan 1, 2100 00:00:00 UTCNext century

Comparação de Formatos de Data e Hora

Sistemas e padrões diferentes representam o mesmo momento no tempo usando formatos de string diferentes. A tabela compara os formatos mais comuns que você encontrará em APIs, logs e bancos de dados.

FormatoExemploObservações
Unix (seconds)1711324800Integer, no timezone info
Unix (milliseconds)1711324800000Used by JavaScript Date.now()
ISO 86012024-03-25T00:00:00ZMachine-readable, includes timezone
RFC 2822Mon, 25 Mar 2024 00:00:00 +0000Email and HTTP headers
UTC stringMon, 25 Mar 2024 00:00:00 GMTDate.prototype.toUTCString()
Human readableMarch 25, 2024, 12:00:00 AMLocale-dependent, display only

Exemplos de Código

Converta entre timestamps Unix e datas na linguagem com que você está trabalhando. Cada exemplo mostra as duas direções: timestamp para data e data para timestamp.

JavaScript (browser / Node.js)
// Current Unix timestamp in seconds
Math.floor(Date.now() / 1000)  // → 1711324800

// Unix timestamp to Date object
const date = new Date(1711324800 * 1000)
date.toISOString()             // → "2024-03-25T00:00:00.000Z"
date.toUTCString()             // → "Mon, 25 Mar 2024 00:00:00 GMT"

// Date string to Unix timestamp
Math.floor(new Date('2024-03-25T00:00:00Z').getTime() / 1000)
// → 1711324800

// Millisecond timestamps (common in JS APIs)
Date.now()                     // → 1711324800000 (ms)
Date.parse('2024-03-25')       // → 1711324800000 (ms)
Python
import time
from datetime import datetime, timezone

# Current Unix timestamp
int(time.time())                                    # → 1711324800

# Unix timestamp to datetime
dt = datetime.fromtimestamp(1711324800, tz=timezone.utc)
dt.isoformat()                                      # → '2024-03-25T00:00:00+00:00'
dt.strftime('%Y-%m-%d %H:%M:%S %Z')                 # → '2024-03-25 00:00:00 UTC'

# Datetime string to Unix timestamp
dt = datetime.fromisoformat('2024-03-25T00:00:00+00:00')
int(dt.timestamp())                                  # → 1711324800

# Parse RFC 2822 dates (from email headers)
from email.utils import parsedate_to_datetime
parsedate_to_datetime('Mon, 25 Mar 2024 00:00:00 +0000').timestamp()
# → 1711324800.0
Go
package main

import (
    "fmt"
    "time"
)

func main() {
    // Current Unix timestamp
    now := time.Now().Unix() // → 1711324800

    // Unix timestamp to time.Time
    t := time.Unix(1711324800, 0).UTC()
    fmt.Println(t.Format(time.RFC3339))
    // → 2024-03-25T00:00:00Z

    // Parse a date string to Unix timestamp
    parsed, _ := time.Parse(time.RFC3339, "2024-03-25T00:00:00Z")
    fmt.Println(parsed.Unix())
    // → 1711324800

    // Millisecond timestamp
    ms := time.Now().UnixMilli() // → 1711324800000
    fmt.Println(now, ms)
}
CLI (date / bash)
# Current Unix timestamp
date +%s                                    # → 1711324800

# Convert timestamp to human-readable date (GNU date)
date -d @1711324800                         # → Mon Mar 25 00:00:00 UTC 2024

# Convert timestamp to ISO 8601
date -d @1711324800 --iso-8601=seconds      # → 2024-03-25T00:00:00+00:00

# macOS (BSD date) — slightly different flags
date -r 1711324800                          # → Mon Mar 25 00:00:00 UTC 2024

# Date string to timestamp (GNU date)
date -d "2024-03-25 00:00:00 UTC" +%s       # → 1711324800

Perguntas Frequentes

Qual é a diferença entre timestamps Unix em segundos e em milissegundos?
Um timestamp Unix em segundos é um inteiro de 10 dígitos (até novembro de 2286), enquanto um timestamp em milissegundos tem 13 dígitos. O Date.now() do JavaScript retorna milissegundos. A maioria das ferramentas de linha de comando Unix e o time.time() do Python retornam segundos. Para converter entre eles, multiplique os segundos por 1000 ou divida os milissegundos por 1000 e aplique floor no resultado.
O que é o problema do Ano 2038?
Sistemas que armazenam timestamps Unix como inteiro de 32 bits com sinal sofrerão overflow em 19 de janeiro de 2038 às 03:14:07 UTC. O valor máximo que um inteiro de 32 bits com sinal pode armazenar é 2.147.483.647 segundos após o epoch. Após isso, o valor volta a ser negativo, que o sistema interpreta como uma data em dezembro de 1901. Sistemas modernos de 64 bits usam inteiros de 64 bits e não são afetados.
Como converto um timestamp Unix para uma data em JavaScript?
Crie um novo objeto Date passando o timestamp multiplicado por 1000 (pois o JavaScript usa milissegundos): new Date(1711324800 * 1000). Depois chame .toISOString(), .toUTCString() ou .toLocaleString() para obter o formato desejado. Para a direção inversa, use Math.floor(new Date('2024-03-25').getTime() / 1000).
Timestamps Unix podem representar datas anteriores a 1970?
Sim. Datas anteriores ao Unix epoch (1º de janeiro de 1970) são representadas como inteiros negativos. Por exemplo, 31 de dezembro de 1969 às 23:59:59 UTC é o timestamp -1. A maioria das linguagens de programação modernas trata timestamps negativos corretamente, embora alguns sistemas e bancos de dados mais antigos possam não suportá-los.
Por que APIs usam timestamps Unix em vez de strings de data?
Timestamps Unix são independentes de fuso horário, compactos (um único inteiro versus uma string de 25+ caracteres) e trivialmente comparáveis. Ordenar, comparar e calcular durações com inteiros é mais rápido do que analisar strings de data. Eles também evitam ambiguidades de formatos dependentes de localidade, como MM/DD/AAAA versus DD/MM/AAAA.
Como obtenho o timestamp Unix atual pela linha de comando?
No Linux e no macOS, execute date +%s para imprimir o timestamp atual em segundos. No Windows com PowerShell, use [DateTimeOffset]::UtcNow.ToUnixTimeSeconds(). Ambos retornam o número inteiro de segundos desde o Unix epoch. Para precisão em milissegundos no Linux, use date +%s%3N para acrescentar o componente de milissegundos diretamente.
Qual é a diferença entre UTC e GMT em timestamps?
Para fins práticos em computação, UTC e GMT referem-se ao mesmo tempo. UTC (Coordinated Universal Time) é o padrão moderno definido por relógios atômicos, enquanto GMT (Greenwich Mean Time) é o antigo padrão astronômico. Timestamps Unix são sempre baseados em UTC. Você pode ver ambos os rótulos em strings de data formatadas, mas o valor subjacente é idêntico.