Este Numero Longo e um Timestamp? Milissegundos vs Segundos
Ultima revisao 2026-05-03. Voce colou um numero de 10, 13, 16 ou 19 digitos de um log de servidor, de uma resposta de API ou de uma linha de banco de dados, e agora precisa saber o que e. Este guia e o teste de 30 segundos - conte os digitos, faca um sanity-check do ano, encaminhe para o conversor certo.
O teste de 30 segundos: conte os digitos
Os formatos dominantes de timestamp Unix codificam tempo como uma contagem de "ticks desde 1970-01-01 00:00:00 UTC". O tamanho do tick difere - segundos, milissegundos, microssegundos, nanossegundos - e isso muda quantos digitos o numero tem em qualquer momento dado em 2026. Hoje (2026), aqui esta a regra pratica de contagem de digitos:
| Digitos | Significado mais provavel | Onde voce normalmente ve | Converter com |
|---|---|---|---|
| 10 | Unix segundos | Unix date +%s, PHP time(), Python time.time() truncado, Go time.Now().Unix(), a maioria dos formatos de log de servidor. | Multiplique por 1000 e cole no conversor de milissegundos, ou use uma ferramenta dedicada de segundos para data. |
| 13 | Unix milissegundos | JavaScript Date.now(), Java System.currentTimeMillis(), a maioria das APIs JSON, escritas Firebase / Firestore, IDs de mensagens Slack / Discord codificados como ms. | Cole direto no conversor de milissegundos para data. |
| 16 | Unix microssegundos | PostgreSQL now(), Python time.time_ns() // 1000, traces OpenTelemetry, BigQuery CURRENT_TIMESTAMP(). | Divida por 1000 e trate o resultado como milissegundos. |
| 19 | Unix nanossegundos | Go time.Now().UnixNano(), traces Prometheus, offsets Kafka, timestamps de evento eBPF. | Divida por 1.000.000 e trate o resultado como milissegundos. |
| 11, 12, 14, 15, 17, 18 | Provavelmente nao e um timestamp | ID de sequencia, prefixo de ID Snowflake, numero de conta, variante de numero de telefone, numero de roteamento de conta. | Veja "Quando o numero nao e um timestamp" abaixo. |
Por que a maioria dos numeros que voce ve na web sao milissegundos
O Date.now() do JavaScript, o System.currentTimeMillis() do Java e a maioria dos backends modernos que emitem JSON sao padronizados para milissegundos desde o epoch Unix. Esse momento - 2026-05-03 09:38:00 UTC - e 1777800999 em segundos (10 digitos) mas 1777800999000 em milissegundos (13 digitos). A forma de 13 digitos aparece em respostas de rede, consoles de dev-tool do navegador, linhas de log e dashboards mais que qualquer outra forma de timestamp, que e por que a pergunta de leitor mais comum para esse tipo de timestamp e "este e um numero de 13 digitos, que data e essa?"
Essa observacao da um sanity-check rapido: se seu numero tem 13 digitos e comeca com 1777, e quase certamente um milissegundo Unix de maio de 2026. Se ele comeca com 16 ou 17 em 2026, esta no campo certo. Se ele comeca com 1 seguido de qualquer coisa (por exemplo 1234567890123), voce ainda deveria converte-lo para uma data e verificar o ano antes de assumir - dados de teste bogus frequentemente escolhem numeros de vaidade como 1234567890 que renderiza como 2009 (sexta-feira 13 de fevereiro).
Quando o numero NAO e um timestamp
Varios numeros longos parecem timestamps mas nao sao:
- IDs Snowflake / Twitter / Discord (normalmente 18-19 digitos). Eles codificam um timestamp em seus bits altos mas os bits baixos sao IDs de worker e contadores de sequencia; tratar o numero inteiro de 19 digitos como um nanossegundo Unix produzira uma data muito errada. Decodificar Snowflake requer um bit-shift, nao uma divisao.
- UUIDv7 (32 digitos hex, mas os primeiros 12 caracteres hex codificam milissegundos). Se voce tem 32 caracteres hex formatados com hifens, e um UUID, nao um timestamp - converta apenas os primeiros 48 bits se precisar do tempo embutido.
- IDs de sequencia BIGINT de banco de dados. Esses sao inteiros auto-incrementados e nao tem componente de tempo; eles crescem ate a faixa de 12-13 digitos conforme a sequencia avanca. Verificacao rapida: se a mesma coluna em linhas adjacentes difere por 1 (ou por um pequeno passo previsivel), e uma sequencia, nao um timestamp.
- Numeros de telefone armazenados como inteiros. Um numero de 10-12 digitos que comeca com um prefixo de codigo de pais (por exemplo
1212para Nova York) pode ser um numero de telefone renderizado sem separadores. Converta e verifique: se o ano resultante e antes de 1970 ou depois de 2100, nao e um timestamp Unix. - Numeros de conta / pedido. Numeros de estilo de preenchimento como
1000000123(10 digitos mas nao um valor de segundo Unix) normalmente tem um prefixo de largura fixa que os entrega - eles nao crescem de forma constante ao longo do tempo.
A desambiguacao mais barata e colar o numero no conversor de milissegundos e olhar o ano. Se o resultado e em 1970 (numero era na verdade segundos, voce o tratou como ms) ou em algum ano futuro distante como 56.000 (numero era milissegundos, voce o tratou como segundos), a contagem de digitos vai te dizer em que direcao converter. Se o resultado e plausivel (2025-2027 para dados ao vivo, 1990-2025 para dados historicos), voce tem sua resposta.
Playbook rapido de conversao
Tres passos, sem matematica:
- Conte os digitos. 10 digitos = segundos; 13 = milissegundos; 16 = microssegundos; 19 = nanossegundos; caso contrario veja a secao anterior.
- Cole no conversor certo. Numeros de 13 digitos vao direto para o conversor de milissegundos para data. Segundos de 10 digitos: anexe tres zeros (entao
1777800999vira1777800999000) e cole. Microssegundos de 16 digitos: descarte os tres ultimos digitos. Nanossegundos de 19 digitos: descarte os seis ultimos digitos. O conversor mostra a data UTC resultante e sua data local. - Sanity-check o ano. Se o ano e inesperado (1970 ou 56000), voce converteu na direcao errada. Releia a contagem de digitos e tente de novo. Se o ano e plausivel, voce tem o valor certo.
Para o problema inverso - "me da os milissegundos Unix atuais para que eu possa comparar" - abra a ferramenta de milissegundos Unix atuais; ela tica ao vivo e copia para a area de transferencia. Comparar dois timestamps e o jeito mais rapido de confirmar se seu numero e "agora-ish" ou dados velhos.
Perguntas frequentes
E sobre numeros de 11 ou 12 digitos? Eles parecem quase segundos.
Segundos Unix nao produzirao 11 digitos ate o ano 2286. Milissegundos Unix tinham 12 digitos entre 2001 (10^12 ms = 31,7 anos depois de 1970) e 2286. Entao um numero de 12 digitos da era atual e mais provavelmente um ID de sequencia ou um numero de telefone; um numero de 11 digitos quase certamente nao e um valor Unix atual de nenhum tipo.
O numero e negativo ou comeca com um sinal de menos. E um timestamp?
Sim - timestamps Unix negativos sao datas antes de 1970-01-01 UTC. -1000000000 segundos e 1938-04-24. A maioria das bibliotecas padrao de linguagens lida com segundos negativos corretamente; algumas ferramentas web os rejeitam. O conversor de milissegundos aceitara entradas negativas.
Por que a mesma data da um numero diferente em dois sistemas?
O numero em si e sem fuso horario (tempo Unix e sempre UTC). O que difere e como cada sistema renderiza o numero em uma string legivel - uma ferramenta pode escolher UTC, outra seu fuso local. O inteiro Unix subjacente e o mesmo. Se dois sistemas discordam do numero para o mesmo momento, um deles esta usando uma unidade diferente (segundos vs milissegundos) ou um epoch diferente (por exemplo Excel usa 1900-01-01 como seu epoch, que nao e tempo Unix).
Posso obter segundos fracionarios de um valor Unix de 10 digitos?
Nao - um valor de segundos de 10 digitos tem resolucao de 1 segundo. Segundos fracionarios (precisao de milissegundos / microssegundos) requerem os formatos mais longos. Se seus dados precisam de precisao sub-segundo, voce deve estar armazenando milissegundos (13 digitos), microssegundos (16) ou nanossegundos (19). Armazenar apenas os segundos inteiros joga fora a precisao.
O JavaScript new Date().valueOf() e o mesmo que Date.now()?
Sim. Ambos retornam milissegundos Unix. Date.now() e a forma moderna, preferida; new Date().valueOf() e mais antigo, mais lento (aloca um objeto Date) mas produz o mesmo numero.
Relacionado
- Converter Milissegundos em Data - a ferramenta de acao para numeros de 13 digitos; multiplique segundos de 10 digitos por 1000 primeiro.
- Obter Milissegundos Unix Atuais - ticker ao vivo; util para comparar seu numero contra "agora".
- Timestamps Unix Explicados - a referencia de formato: epoch, ISO 8601, RFC 2822, UTC vs hora local, as tres armadilhas comuns de timestamp.
- MD5 vs SHA-256 quando hashear - se seu "numero" acabar sendo 32 ou 64 caracteres hex, e um hash, nao um timestamp.
- Formatos de dados CSV vs JSON - o formato em que seu timestamp chegou frequentemente dica sobre como foi codificado (ISO 8601 em CSV, milissegundos em JSON).
Why trust these tools
- Ten-plus years of web tooling. The freetoolonline editorial team has shipped browser-based utilities since 2015. The goal has never changed: get you to a working output fast, without an install.
- No install, no sign-up. Open a tool and get a working output in seconds - nothing to download and no account to create. Tools that need heavy processing run it on our service, so even a low-powered machine gets the job done.
- Analytics stops at the page view. We measure which pages get visited, not what you type or upload inside a tool. There is nothing to sign in to and no profile is attached to your input.
- Open-source core components. The processing engines underneath (libheif, libde265, pdf-lib, terser, clean-css, ffmpeg.wasm, and others) are public and audit-able. We link to each one in its tool page's footer.
- Free, with or without ads. All tools are fully functional without sign-up. The Disable Ads button in the header is always available if you need a distraction-free run.