๐Ÿ• Sviluppatori

Timestamp Converter

Converti tra Unix timestamp (epoch) e data leggibile. Supporta secondi, millisecondi e ISO 8601.

Inserisci i dati

Unix (secondi)โ€”
Unix (millisecondi)โ€”
ISO 8601โ€”
Data locale (IT)โ€”
UTCโ€”
Giorno settimanaโ€”

Come funziona

Cos'e un Unix timestamp?

Un Unix timestamp e un semplice numero intero che rappresenta i secondi trascorsi dal 1 gennaio 1970 alle 00:00:00 UTC, momento conosciuto come epoch. La data del 1970 fu scelta dai progettisti del sistema operativo Unix come punto di riferimento convenzionale: era abbastanza recente da ridurre la grandezza dei numeri, ma sufficientemente lontana da coprire la maggior parte delle esigenze pratiche dell'epoca. Internamente il timestamp funziona come un contatore intero che si incrementa di uno ogni secondo. Il grande vantaggio di questo sistema e che e completamente indipendente dal fuso orario: un timestamp ha lo stesso valore in Italia, in Giappone o negli Stati Uniti, eliminando ogni ambiguita nella comunicazione di date tra server, database e API distribuite nel mondo.

Secondi vs millisecondi

I sistemi Unix e Linux utilizzano tradizionalmente timestamp in secondi (10 cifre, es. 1711929600). Comandi come date +%s restituiscono questo formato. JavaScript, invece, con Date.now() restituisce millisecondi (13 cifre, es. 1711929600000), offrendo maggiore precisione per le animazioni e gli eventi del browser. In Python, time.time() restituisce un float in secondi con decimali per i microsecondi, mentre Java con System.currentTimeMillis() utilizza millisecondi come JavaScript. Il nostro tool rileva automaticamente il formato: se il valore inserito ha 13 o piu cifre viene interpretato come millisecondi, altrimenti come secondi.

Il problema dell'anno 2038

Molti sistemi meno recenti memorizzano il timestamp Unix come un intero con segno a 32 bit, il cui valore massimo e 2.147.483.647, corrispondente al 19 gennaio 2038 alle 03:14:07 UTC. Dopo quell'istante il contatore va in overflow e torna a un numero negativo, causando potenziali malfunzionamenti โ€” un problema noto come Y2K38 o Unix Millennium Bug. I sistemi operativi moderni a 64 bit hanno gia risolto il problema adottando un intero a 64 bit, che copre un arco temporale di oltre 292 miliardi di anni. JavaScript utilizza numeri a virgola mobile a 64 bit (IEEE 754), garantendo precisione al millisecondo fino all'anno 275760.

Formati data comuni

ISO 8601 (es. 2026-04-02T12:00:00Z) e lo standard internazionale piu diffuso: ordinabile, non ambiguo e supportato nativamente da tutti i linguaggi di programmazione. E il formato consigliato per API REST e scambio dati. RFC 2822 (es. Thu, 02 Apr 2026 12:00:00 +0000) e utilizzato principalmente negli header delle email e in alcuni protocolli legacy. Il timestamp Unix in secondi e ideale per calcoli, confronti e archiviazione compatta nei database, mentre il timestamp in millisecondi e preferibile nel frontend JavaScript e nei sistemi che richiedono precisione sub-secondo. In generale, per lo scambio tra sistemi si consiglia ISO 8601, per lo storage interno il timestamp numerico.

Domande frequenti

L'epoch Unix e il 1 gennaio 1970 alle 00:00:00 UTC, scelto come punto zero convenzionale dai creatori del sistema operativo Unix. Tutti i timestamp Unix rappresentano il numero di secondi trascorsi da questo istante. La scelta del 1970 fu un compromesso pratico: una data abbastanza vicina da mantenere i numeri gestibili, ma anteriore alla diffusione dei computer moderni.

Il metodo piu rapido e contare le cifre: un timestamp in secondi ha 10 cifre (es. 1711929600), mentre uno in millisecondi ne ha 13 (es. 1711929600000). Comandi Unix come date +%s e Python time.time() usano secondi, mentre JavaScript Date.now() e Java System.currentTimeMillis() restituiscono millisecondi. Questo tool li riconosce automaticamente in base alla lunghezza.

Si, il tool mostra contemporaneamente l'ora nel fuso locale del tuo browser e in UTC. Quando inserisci una data nel campo apposito, la conversione in timestamp tiene conto del fuso orario impostato sul tuo dispositivo. Ricorda che il timestamp Unix e per definizione indipendente dal fuso orario: lo stesso valore numerico corrisponde allo stesso istante ovunque nel mondo.

Sui sistemi a 32 bit il limite e il 19 gennaio 2038 alle 03:14:07 UTC, quando l'intero con segno raggiunge il valore massimo di 2.147.483.647 e va in overflow. I sistemi moderni a 64 bit estendono il range a oltre 292 miliardi di anni. JavaScript, basato su numeri a virgola mobile IEEE 754, supporta timestamp precisi al millisecondo fino all'anno 275760.

Si, i timestamp negativi rappresentano istanti precedenti all'epoch del 1 gennaio 1970. Ad esempio, -86400 corrisponde al 31 dicembre 1969 (un giorno prima), mentre -31536000 indica il 1 gennaio 1969. Questo tool supporta pienamente i valori negativi, permettendoti di convertire date storiche. JavaScript gestisce timestamp negativi fino a circa 271.821 a.C.