Desenvolvedor 🔒 Roda no seu navegador — nenhum dado é enviado

Converter data para timestamp

Transforme uma data do calendário e um horário de relógio em um timestamp Unix, lido no fuso horário que você escolher.

Timestamp Unix atual:
Timestamp → data
Data → timestamp

Um timestamp ou data por linha, até 500.

Converter uma data em um timestamp Unix

O código guarda tempo como número, mas o tempo que chega às suas mãos quase sempre vem como data: um prazo em um e-mail, uma linha de planilha, o início de uma janela de manutenção. Ir de um para o outro é o trabalho do painel da direita do conversor de timestamp Unix, e esta página o abre com uma data já posta, para você ver o formato da resposta antes de digitar a sua.

O resultado tem quatro linhas. A primeira repete a data e a hora que a ferramenta leu, com a diferença em relação a <abbr title="Tempo Universal Coordenado">UTC que ela aplicou, para você conferir o fuso antes de confiar no número. Depois vêm o timestamp em segundos, o mesmo instante em milissegundos e uma representação em UTC como segunda checagem. Nada é enviado; a aritmética acontece na página.

A hora que você digita pertence a um fuso

Um campo de data guarda uma leitura de relógio: ano, mês, dia, hora, minuto, segundo. Isso ainda não é um instante. “1 de janeiro de 2025 à meia-noite” aconteceu em um momento diferente em Tóquio e em Nova York, e só um fuso horário resolve a qual deles você se refere. A ferramenta lê o que você digitou como hora local no fuso escolhido no canto superior direito, aplica a diferença daquele fuso para aquela data e devolve o instante. Troque o fuso e a conversão se repete por conta própria.

Fuso selecionadoDiferença nessa dataTimestamp para 2025-01-01 00:00:00
UTCUTC+00:001735689600
Europe/BerlinUTC+01:001735686000
Asia/TehranUTC+03:301735677000
Asia/TokyoUTC+09:001735657200
America/New_YorkUTC-05:001735707600

As diferenças vêm do banco de dados de fusos do navegador, então o horário de verão já está contabilizado: as mesmas 09:00 em Europe/Berlin são UTC+01:00 em janeiro e UTC+02:00 em julho, e você não precisa lembrar qual vale agora. Uma diferença fixa digitada em um script é a causa habitual de datas que ficam certas metade do ano e erradas na outra metade.

Segundos, milissegundos e o que cabe no campo

O valor em segundos é o valor em milissegundos sem a fração, então as duas linhas nomeiam sempre o mesmo instante. O campo de data aceita segundos inteiros e nada mais fino, o que significa que um timestamp gerado aqui termina em três zeros quando lido como milissegundos. Se você precisa de precisão abaixo de um segundo, o número tem que vir do sistema que registrou o evento, e não de um seletor.

A mesma coisa no código

A aba “Código” abaixo do conversor imprime a conversão em JavaScript, Python, PHP, SQL, Go, Java, C# e Bash, e cada trecho termina com a linha que produz um timestamp novo naquela linguagem. Duas armadilhas sobrevivem à mudança para o código: uma string solta como 2025-01-01T00:00:00 é lida no fuso horário da máquina que a executa, em um servidor normalmente UTC e não o seu, e o UNIX_TIMESTAMP() do MySQL interpreta o argumento no fuso da sessão. Nos dois casos, anexe uma diferença ou converta através de um fuso nomeado.

O outro sentido e páginas vizinhas

O painel da esquerda lê um número de volta como data, o que é o jeito mais rápido de provar uma conversão: cole o que você acabou de copiar e veja se a data retorna. Esse sentido tem página própria, converter timestamp para data, assim como o caso de treze dígitos em milissegundos para data. Para o valor de agora existe o timestamp Unix atual na barra do topo, e para um aviso em um chat, os timestamps do Discord embrulham os segundos na marcação que o Discord exibe para cada leitor.

Guias relacionados