Conversor de Timestamp Unix

Data e Hora Conversor
Timestamp Unix
Fuso horário
Formatos de data e hora
@ Format
DateTime
ISO 8601
RFC 3339
RFC 1123Z
RFC 822
RFC 822Z
RFC 1123
RFC 850
ANSIC
UnixDate
RubyDate
DateOnly
TimeOnly
Kitchen
Stamp
Formato local
Formato de data
Formato de hora
Hexadecimal
Relativo
Data
- -
Hora
: :
UTC/GMT
Timestamp Unix
Segundos
Milissegundos
Microssegundos
Hexadecimal
Relativo

Introdução

Um timestamp Unix (ou tempo epoch) é a forma padrão como os computadores representam o tempo: um único inteiro que conta os segundos desde 1º de janeiro de 1970 à meia-noite UTC, excluindo segundos bissextos. Aparece em registros de banco de dados, respostas de API, tokens JWT, arquivos de log, agendamentos cron e cabeçalhos de cache. Enquanto as máquinas leem esses inteiros instantaneamente, os humanos precisam que eles sejam traduzidos em datas e horários de calendário — frequentemente em vários formatos simultaneamente.

O Conversor de Timestamp Unix atende desenvolvedores, administradores de sistemas e analistas de segurança que precisam decodificar timestamps de logs, verificar a expiração de tokens, agendar jobs cron entre fusos horários ou consultar rapidamente um valor epoch histórico ou futuro. A ferramenta é dividida em dois blocos independentes:

  • Bloco A (Timestamp Unix → Data e Hora): insira um timestamp numérico e veja-o renderizado em 21 formatos de data e hora, organizados por família padrão.
  • Bloco B (Data e Hora → Timestamp Unix): escolha uma data de calendário, hora e offset de fuso horário, e obtenha o timestamp equivalente em segundos, milissegundos e microssegundos.

Ambos os blocos têm seu próprio seletor de fuso horário, para que você possa trabalhar em UTC para uma direção e com um offset personalizado para a outra sem contaminação cruzada.

Como funciona

O tempo Unix conta segundos a partir da epoch (1º de janeiro de 1970, 00:00:00 UTC). Cada tick adiciona exatamente um segundo. Por estar ancorado ao UTC, um timestamp Unix representa o mesmo instante em qualquer lugar da Terra — o fuso horário só importa quando você o renderiza como uma string legível.

A ferramenta usa o objeto JavaScript Date nativo do navegador para todas as conversões. Cada Date armazena internamente o tempo como um único número: milissegundos desde a epoch Unix. Quando você insere um timestamp, a ferramenta constrói um Date e lê suas propriedades UTC ou locais dependendo do seletor de fuso horário ativo. Quando você insere uma data e hora de calendário, a ferramenta calcula a diferença da epoch ajustada para o offset de fuso horário especificado.

Unidades de timestamp entre ecossistemas

Plataformas e linguagens diferentes usam unidades de epoch distintas. O seletor de unidades da ferramenta permite que você corresponda à precisão da sua fonte:

Unidade Usado por Exemplo
Segundos Go, PHP, Python, PostgreSQL, Ruby, cron 10 dígitos
Milissegundos JavaScript (Date.now()), Ethereum, .NET DateTimeOffset, Java System.currentTimeMillis() 13 dígitos
Microssegundos Linux /proc/uptime, Go time.UnixMicro(), perfilamento de alta resolução 16 dígitos

A ferramenta converte sua entrada para segundos internamente. Se você colar um valor de 13 dígitos de Date.now() do JavaScript, defina a unidade para milissegundos e a ferramenta lidará com a divisão.

Fuso horário e horário de verão

Um timestamp Unix sempre representa o mesmo instante físico. O seletor de fuso horário em cada bloco apenas muda como esse instante é exibido ou interpretado.

  • Modo UTC: renderiza toda a saída com base no Tempo Universal Coordenado. O formato RFC 3339 usa um sufixo Z literal em vez de +00:00.
  • Modo local: usa o fuso horário do sistema do navegador, incluindo ajustes automáticos de horário de verão.
  • Modo personalizado: um offset UTC numérico entre -12:00 e +14:00. A ferramenta aplica este offset diretamente sem qualquer correção de horário de verão — ela trata seu offset como um relógio de parede fixo.

Quando o horário de verão está em vigor, o offset do fuso horário local muda. O mesmo timestamp exibido no modo Local pode mostrar uma hora diferente do que mostrava no mês anterior. Isso é esperado: o timestamp é o mesmo, mas a convenção do relógio local mudou.

Para as linhas formatadas como local (Locale, Locale Date, Locale Time), a ferramenta respeita tanto o fuso horário selecionado quanto as configurações de idioma do navegador. Se você escolher o modo UTC, toLocaleString recebe { timeZone: 'UTC' }, garantindo que o formato local use o fuso horário correto.

Uso

Bloco A — Timestamp para Data e Hora

  1. Insira um timestamp Unix no campo de entrada (apenas dígitos, sinal de menos opcional para datas anteriores a 1970).
  2. Selecione a precisão da entrada: Segundos, Milissegundos ou Microssegundos.
  3. Escolha um fuso horário: UTC, Local (fuso horário do sistema), ou Personalizado (insira um offset entre -12 e +14 em passos de meia hora).
  4. Leia os resultados — 21 linhas de formatos de data e hora são atualizadas em tempo real.

Bloco B — Data e Hora para Timestamp

  1. Insira o ano diretamente. Use os menus suspensos para mês, dia, hora, minuto e segundo.
  2. Escolha um fuso horário no seletor UTC/GMT: Local corresponde ao fuso horário do sistema; entradas numéricas como UTC+8 tratam a entrada como horário de parede naquele fuso.
  3. Os resultados do timestamp aparecem imediatamente em segundos, milissegundos, microssegundos, hexadecimal e tempo relativo.

Os dois blocos operam independentemente. Alterar o Bloco A não afeta o Bloco B e vice-versa. Isso permite que você compare timestamps lado a lado ou bloqueie um valor de referência enquanto explora diferentes formatos.

Tutorial

Cenário 1: Decodificar um timestamp de um log do servidor

O log da sua aplicação mostra o timestamp 1742345678 — uma chamada de API que falhou. Você precisa saber exatamente quando aconteceu e também verificar o formato HTTP-date para correlacionar com cabeçalhos de resposta HTTP.

  1. Abra o Conversor de Timestamp Unix.
  2. Digite 1742345678 no campo de entrada do Bloco A.
  3. Os resultados exibem 21 linhas de formato, incluindo:
    • @ Format: 3/19/2025 @ 2:14:38 PM +0000 (formato humano de varredura rápida)
    • RFC 1123Z: Wed, 19 Mar 2025 14:14:38 +0000 (padrão HTTP-date, corresponde aos cabeçalhos Date e Last-Modified)
    • Relative: 124d (há quanto tempo a solicitação ocorreu)
  4. Mude o fuso horário para Local para ver que horas eram no seu próprio fuso horário.

Cenário 2: Agendar um job cron em um horário específico

Você precisa que um job cron seja executado às 3:30 AM Eastern Time em 15 de junho de 2026. O Eastern Daylight Time é UTC-4 em junho.

  1. No Bloco B, defina a data para 15 de junho de 2026 e a hora para 03:30:00.
  2. Defina o seletor UTC/GMT para UTC+4 (EDT é UTC-4, então insira -4).
  3. Leia o valor em Segundos — este é o seu timestamp cron. As linhas Hex e Relative também são atualizadas, dando a você uma referência tanto legível por máquina quanto por humano simultaneamente.

Dicas úteis

Casos de uso dos formatos

Cada formato de saída serve a um propósito específico. Veja quando usar cada um:

Formato Quando usar
@ Format Varredura visual rápida — o layout compacto M/D/YYYY @ HH:MM:SS AM/PM é legível de relance
DateTime Inserções em banco de dados SQL (YYYY-MM-DD HH:MM:SS), a forma de string mais comum fora do JSON
ISO 8601 Payloads JSON (new Date().toISOString()), corpos de requisição/resposta REST API
RFC 3339 Feeds RSS, feeds Atom, assinaturas de calendário (iCalendar); usado onde ISO 8601 precisa de um perfil mais rigoroso
RFC 1123Z Cabeçalhos HTTP (Date, Last-Modified, Expires), cookies (atributo expires)
RFC 822 Cabeçalhos de email (campo Date), formatos legados de newsgroup
RFC 850 Implementações antigas de HTTP/1.0 (raro hoje, mantido para compatibilidade reversa)
ANSIC Constante time.ANSIC do Go — usada ao ler a saída padrão de time.Time do Go
RubyDate Formato Time#ctime do Ruby; corresponde à saída clássica Unix ctime
DateOnly / TimeOnly Constantes de conveniência Go 1.20+ — extrai apenas a data ou apenas a hora
Kitchen Formato de relógio de 12 horas do Go — leitura rápida de horário
Locale Exibição na interface do usuário; respeita as convenções de idioma e cultura do navegador
Hex Depuração de baixo nível, timestamps de firmware, sistemas embarcados
Relative Painéis, elementos de UI "tempo desde o último evento"

Implementações em linguagens

Obtenha o timestamp Unix atual em sua linguagem preferida:

// Go
time.Now().Unix()      // segundos
time.Now().UnixMilli() // milissegundos (Go 1.17+)
// JavaScript
Math.floor(Date.now() / 1000) // segundos
Date.now()                     // milissegundos
// PHP
time();              // segundos
intval(microtime(true) * 1000); // milissegundos
# Python
import time; int(time.time())         # segundos
import time; int(time.time() * 1000)  # milissegundos

Dicas gerais

  • Timestamps pré-1970: Insira valores negativos. 1º de dezembro de 1960 às 00:00:00 UTC é -286329600.
  • Entrada hexadecimal: Valores hexadecimais (com ou sem prefixo 0x) são analisados automaticamente — insira 0x6618E1FE e veja o equivalente decimal.
  • Comparar fusos horários: Defina o fuso horário do Bloco A para UTC e o fuso horário do Bloco A para Local simultaneamente para ver como o mesmo instante é renderizado em ambos.

Alternativas

Ferramenta Timestamp para Data Data para Timestamp 21+ Formatos Fuso horário independente por bloco Lado do cliente
Toollect Unix Timestamp Converter Sim Sim Sim (21) Sim Sim
unixtimestamp.com Sim Sim ~5 Não Sim
epochconverter.com Sim Sim ~8 Não Sim
site24x7.com Sim Sim ~6 IANA completo Sim
date -d @timestamp (Linux) Sim Não ~3 Apenas TZ sistema N/A

Solução de problemas

Problema Causa provável Solução
A saída mostra uma data em 1970 ou 1969 A entrada está sendo lida na unidade errada Altere o seletor de unidade para corresponder à sua entrada (segundos / ms / μs)
Data e hora mostram o momento errado O seletor de fuso horário está definido incorretamente Mude para UTC para verificar o instante base, depois ajuste para o offset correto
A linha Locale mostra a hora errada A formatação Locale ignora a seleção de fuso horário do Bloco A Isso foi corrigido — agora o locale respeita o fuso horário selecionado. Verifique se você está na versão mais recente
A saída não atualiza A entrada contém caracteres não numéricos Limpe o campo e insira apenas dígitos e um sinal de menos inicial opcional
O tempo relativo mostra "just now" para um timestamp passado conhecido O relativo é calculado em relação ao relógio do sistema atual Isso é esperado — o tempo relativo sempre compara o timestamp com "agora"
Entrada de 13 dígitos mostra uma data muito no futuro A entrada está em milissegundos, mas a unidade padrão é segundos Mude a unidade para "Milissegundos"

Especificações técnicas

  • Motor de conversão: Objeto JavaScript Date (padrão ECMAScript)
  • Intervalo de timestamp: Intervalo numérico completo do JavaScript (±9 quadrilhões de segundos, cobrindo bilhões de anos)
  • Entrada suportada: Inteiros decimais, valores negativos (pré-1970)
  • Precisão da entrada: Segundos, milissegundos ou microssegundos (configurável)
  • Suporte a fusos horários: UTC, local (sistema do navegador), offset GMT personalizado (-12 a +14 em passos de 0,5 hora); independente para cada bloco

As 21 famílias de formatos

# Grupo Formato Exemplo
1 Comum @ Format 3/19/2025 @ 2:14:38 PM +0000
2 Comum DateTime 2025-03-19 14:14:38
3 Comum ISO 8601 2025-03-19T14:14:38+00:00
4 Comum RFC 3339 2025-03-19T14:14:38Z (UTC usa Z)
5 RFC RFC 1123Z Wed, 19 Mar 2025 14:14:38 +0000
6 RFC RFC 822 19 Mar 25 14:14 UTC
7 RFC RFC 822Z 19 Mar 25 14:14 +0000
8 RFC RFC 1123 Wed, 19 Mar 2025 14:14:38 UTC
9 RFC RFC 850 Wednesday, 19-Mar-25 14:14:38 UTC
10 Go ANSIC Wed Mar 19 14:14:38 2025
11 Go UnixDate Wed Mar 19 14:14:38 UTC 2025
12 Go RubyDate Wed Mar 19 14:14:38 +0000 2025
13 Go DateOnly 2025-03-19
14 Go TimeOnly 14:14:38
15 Go Kitchen 2:14PM
16 Go Stamp Mar 19 14:14:38
17 Locale Locale 3/19/2025, 2:14:38 PM (dependente do navegador)
18 Locale Locale Date 3/19/2025
19 Locale Locale Time 2:14:38 PM
20 Outro Hex 0x6618E1FE
21 Outro Relative 124d

Árvore genealógica dos formatos

Os formatos de data e hora nesta ferramenta derivam de quatro linhagens:

  • RFC 822 (1982) definiu o formato original de data de email com ano de 2 dígitos. RFC 1123 (1989) o substituiu com ano de 4 dígitos. RFC 1123Z é o mesmo formato usando um offset numérico de fuso horário (+0000) em vez de uma abreviação alfabética (UTC). Juntos, eles cobrem cabeçalhos HTTP (1123Z) e formatos de email (822).
  • ISO 8601 (1988) estabeleceu o padrão internacional para representação de data e hora. RFC 3339 (2002) perfila a ISO 8601 para uso na Internet, adicionando requisitos como o Z obrigatório para UTC. A maioria das APIs modernas escolhe um destes dois.
  • Constantes Go time (ANSIC, UnixDate, RubyDate, etc.) são layouts de convenência incorporados à biblioteca padrão do Go. Eles espelham convenções POSIX (ctime output), padrões RFC e formas de conveniência específicas do Go (DateOnly, Kitchen, Stamp).
  • Formatos Locale usam a API Intl.DateTimeFormat do navegador, que segue o Unicode Common Locale Data Repository (CLDR). A saída exata depende da configuração de idioma do navegador do usuário.

Compatibilidade

  • Navegadores: Chrome 90+, Firefox 90+, Safari 15+, Edge 90+
  • Dependências: Nenhuma — JavaScript puro, zero bibliotecas de terceiros
  • Processamento de dados: 100% lado do cliente — zero requisições de rede

Recursos

  • Conversão bidirecional entre timestamps Unix e datas legíveis
  • Exibição em tempo real do timestamp Unix atual com atualizações automáticas
  • Múltiplos formatos de saída: UTC, horário local, ISO 8601, hex e tempo relativo
  • Suporte a offset de fuso horário personalizado para conversão precisa de data para timestamp
  • Processamento no lado do cliente — nenhum dado enviado ao servidor

Perguntas frequentes

O que é um timestamp Unix?
Um timestamp Unix (também chamado de tempo epoch) é o número de segundos que se passaram desde 1º de janeiro de 1970 às 00:00:00 UTC. É uma forma universal dos computadores representarem o tempo como um único inteiro, independente de fusos horários e formatos de calendário.
Como saber se meu timestamp está em segundos ou milissegundos?
Um timestamp Unix em segundos tem 10 dígitos (ex. 1712345678), enquanto um timestamp em milissegundos tem 13 dígitos (ex. 1712345678000). Nossa ferramenta trata toda entrada como segundos. A tabela de saída também mostra o equivalente em milissegundos para referência.
Esta ferramenta lida com datas anteriores a 1970?
Sim. Datas anteriores a 1º de janeiro de 1970 são representadas como timestamps Unix negativos. Por exemplo, 31 de dezembro de 1969 às 23:59:00 UTC é -60 segundos. Insira um valor negativo e a ferramenta o converterá corretamente.
Meus dados são enviados para um servidor?
Não. Toda a conversão ocorre inteiramente no seu navegador. Nenhum dado é transmitido pela rede, tornando esta ferramenta segura para processar timestamps de logs privados ou sistemas confidenciais.
O que é o problema do ano 2038?
Em 19 de janeiro de 2038 às 03:14:07 UTC, timestamps Unix de inteiros com sinal de 32 bits transbordarão — o valor máximo 2.147.483.647 se tornará -2.147.483.648, representando 13 de dezembro de 1901. A maioria dos sistemas modernos usa inteiros de 64 bits, que evitam esse problema por bilhões de anos.
Qual é a diferença entre ISO 8601 e RFC 3339?
RFC 3339 é um perfil do ISO 8601. Ambos compartilham o mesmo formato básico (YYYY-MM-DDTHH:MM:SS±HH:MM), mas o RFC 3339 exige o designador de fuso horário (Z para UTC, ou ±HH:MM) e impõe um intervalo de ano de três dígitos. Na prática, a maioria das APIs modernas aceita ambos os formatos indistintamente.
ESC