Segundos vs milissegundos
1777118400
1777118400000
Os dois valores descrevem o mesmo instante se o primeiro for interpretado como segundos e o segundo como milissegundos. Confundir as unidades é o bug de timestamp mais comum.
Converta entre timestamps Unix, ISO 8601, UTC e hora local.
Última atualização
177723396517772339650002026-04-26T20:06:05.000Z2026-04-26 20:06:05Sun, 26 Apr 2026 20:06:05 GMTUm conversor de timestamp Unix transforma o *epoch time* — um número único que representa um instante na história — em datas legíveis para humanos, e também faz o caminho inverso, convertendo datas em timestamps. Quem é dev encontra timestamps em todo lugar: colunas de banco de dados, linhas de log, respostas de API, eventos de analytics, claim exp de JWT, agendadores de tarefas e cabeçalhos de expiração de cache.
A ideia central é simples: computadores armazenam tempo como número (segundos ou milissegundos desde 1970-01-01 00:00:00 UTC), mas as pessoas precisam de calendários, fusos horários e formatos legíveis. Converter entre os dois é uma das tarefas de debug mais comuns em qualquer aplicação web ou mobile.
A parte mais confusa é a *unidade*. POSIX e a maioria das linguagens de backend usam segundos. JavaScript, Java e vários message brokers usam milissegundos. Alguns sistemas de métricas usam microssegundos ou nanossegundos. Um número de 10 dígitos quase sempre é em segundos; um de 13 dígitos quase sempre é em milissegundos.
1970-01-01 00:00:00 UTC).2026-04-25T12:00:00Z) é um formato textual portátil. O Z no final (ou +00:00) indica UTC; um offset como +02:00 significa um horário local 2 horas à frente do UTC.Cole um número (em segundos ou milissegundos) ou uma string de data. O conversor detecta o formato automaticamente com base no tamanho e no formato do valor.
Se a detecção automática errar, alterne entre segundos e milissegundos — número de 10 dígitos é em segundos, de 13 dígitos é em milissegundos.
A saída mostra ISO 8601 em UTC, o seu horário local e uma frase relativa em linguagem natural (há 3 horas, daqui a 2 dias).
Copie direto o timestamp, a string ISO ou o horário local. Útil na hora de preencher um exp de JWT, uma linha no banco ou uma query em logs.
Os formatos com que você mais vai se deparar ao trabalhar com datas e horários no código. O ISO 8601 também é descrito pelo IETF como RFC 3339 para uso em protocolos.
| Formato | Exemplo | Onde aparece |
|---|---|---|
| Unix em segundos | 1777118400 | Logs de backend, exp de JWT, time() POSIX, Redis |
| Unix em milissegundos | 1777118400000 | Date.now() do JavaScript, System.currentTimeMillis() do Java |
| ISO 8601 em UTC | 2026-04-25T12:00:00Z | APIs REST, JSON, GraphQL, arquivos de log |
| ISO 8601 com offset | 2026-04-25T14:00:00+02:00 | Agendamentos voltados ao usuário, convites de calendário |
| RFC 2822 | Sat, 25 Apr 2026 12:00:00 GMT | Cabeçalhos de e-mail, Date e Last-Modified HTTP |
| Apenas data | 2026-04-25 | Aniversários, feriados — sem semântica de fuso horário |
1777118400
1777118400000
Os dois valores descrevem o mesmo instante se o primeiro for interpretado como segundos e o segundo como milissegundos. Confundir as unidades é o bug de timestamp mais comum.
{ "id": 42, "createdAt": 1777118400, "expiresAt": 1777204800}Converta cada valor antes de supor se ele está no passado ou no futuro. A maioria das APIs JSON usa Unix em segundos, mas sempre confira a documentação — backends muito baseados em JavaScript costumam emitir milissegundos.
2026-04-25T12:00:00Z
2026-04-25T14:00:00+02:00
As duas strings representam o *mesmo instante*. Sempre armazene momentos em UTC; converta para o horário local apenas na hora de exibir.
1700000000 lido como segundos é novembro de 2023, mas lido como milissegundos é janeiro de 1970.'2026-04-25') em vez de comparar timestamps. Duas strings ISO válidas podem descrever o mesmo instante em formatos diferentes.1970-01-01 00:00:00 UTC. É um número único que representa um momento específico no tempo, independente de qualquer fuso horário.Date.now() do JavaScript retorna milissegundos; a maioria dos backends retorna segundos.Date do JavaScript guarda timestamps como milissegundos desde o epoch Unix — é o valor que Date.now() e new Date().getTime() retornam. Isso oferece mais precisão do que segundos, mas é uma fonte recorrente de bugs de fator 1000 quando há integração com outras linguagens.new Date(...) no JavaScript, ou use datetime.fromtimestamp(...) no Python. Ou cole no conversor de timestamp Unix para ter o resultado em um clique.2038-01-19 — é o famoso problema do ano 2038. Linguagens e bancos de dados modernos armazenam timestamps como inteiros de 64 bits, o que estende a faixa segura por centenas de bilhões de anos.