Skip to main content

Converti tra timestamp Unix e date leggibili.

Unix
1788701184
Millisecondi
1788701184000
ISO 8601
2026-09-06T13:26:24.000Z
UTC
2026-09-06 13:26:24
Relativo
0s ago
Tutti i calcoli sono eseguiti localmente nel tuo browser. Nessun dato viene inviato al server.

I risultati hanno carattere informativo. Verificali con altre fonti.

Il tempo Unix e perché le date finiscono nel 1970

Il tempo Unix conta i secondi trascorsi dal 1° gennaio 1970 UTC. È un singolo numero intero senza fuso orario associato, ideale per archiviare e confrontare, e fonte comune di errori di un fattore mille.

Come funziona

  • Converte tra timestamp intero e data leggibile, in UTC e nel tuo fuso locale.
  • Deduce l'unità dall'ordine di grandezza: 10 cifre sono secondi, 13 millisecondi, 16 microsecondi, 19 nanosecondi.
  • Ignora i secondi intercalari, come fa il tempo Unix stesso: un giorno Unix dura sempre esattamente 86.400 secondi.
secondi dal 1970-01-01T00:00:00Z

1 000 000 000    →  2001-09-09   (10 cifre, secondi)
1 700 000 000    →  2023-11-14   (10 cifre, secondi)
1 700 000 000 000 →  2023-11-14  (13 cifre, millisecondi)

2^31 − 1 = 2 147 483 647 → 2038-01-19T03:14:07Z

Esempio pratico

Il bug classico: un timestamp JavaScript passato a qualcosa che si aspetta secondi.

  1. Date.now() restituisce 1750000000000: millisecondi, 13 cifre
  2. passato a un sistema che attende secondi, viene letto come 1.750.000.000.000 secondi
  3. cioè all'incirca l'anno 57.442 — oppure, se il campo va in overflow, il 1970
  4. la correzione: Math.floor(Date.now() / 1000) → 1750000000

Ogni volta che una data esce come 1970 o come un futuro assurdo, la causa è quasi sempre questo fattore 1.000. Conta le cifre prima di fare debug di qualunque altra cosa.

Come leggere il risultato

  • Un timestamp non ha fuso orario. Mostrarlo come data locale è una scelta di presentazione; l'intero salvato è sempre UTC. Che due utenti vedano date diverse per lo stesso timestamp è corretto, non un bug.
  • I sistemi che salvano i secondi in un intero a 32 bit con segno vanno in overflow il 19 gennaio 2038. Tutto ciò che ha vita lunga dovrebbe usare 64 bit.
  • I timestamp negativi rappresentano date precedenti al 1970 e sono validi, ma la gestione varia: alcune piattaforme e database li rifiutano o li trattano male.
  • Poiché i secondi intercalari vengono ignorati, il tempo Unix non è un vero conteggio di secondi SI dall'epoca. Per quasi tutto non importa; per misurare intervalli con precisione usa un orologio monotono.

Domande frequenti

Perché la mia data risulta 1° gennaio 1970?
Al convertitore è arrivato zero, un valore nullo o una stringa non interpretata diventata zero. Non è quasi mai una data reale del 1970: controlla che cosa ha passato davvero il tuo codice.
Secondi o millisecondi: come lo capisco?
Conta le cifre. Dieci sono secondi e daranno una data tra il 2001 e il 2286. Tredici sono millisecondi. JavaScript usa i millisecondi; gran parte degli strumenti Unix, dei database e delle API usa i secondi.