Converti un timestamp Unix in data, e viceversa
Un numero di dieci cifre in un log o in un JWT e nessuno sa a quando si riferisce? Incollalo qui: la data leggibile compare subito, in UTC, senza installare niente e senza registrarti.
Che cos’è un timestamp Unix?
Il timestamp Unix, detto anche tempo epoch, conta i secondi trascorsi dal 1° gennaio 1970 alle 00:00:00 UTC. È così che le macchine memorizzano una data come un unico numero intero.
Il valore 1 700 000 000 corrisponde al 14 novembre 2023 alle 22:13:20 UTC. Il timestamp di oggi si aggira sul miliardo e 790 milioni e cresce di uno ogni secondo.
Lo si trova nei database, nelle API, nei log dei server e nei token JWT. Non dipende da alcun fuso orario: lo stesso numero indica lo stesso istante in tutto il mondo.
Da qui nasce il problema dell’anno 2038: un timestamp salvato su 32 bit con segno raggiunge il valore massimo il 19 gennaio 2038. I sistemi attuali lo salvano su 64 bit.
Come funziona la conversione?
Convertire significa contare quanti giorni, ore, minuti e secondi stanno nel numero di secondi passati dall’epoca. Il risultato è espresso in UTC, la stessa base del timestamp.
Per l’ora italiana aggiungi un’ora in inverno e due in estate: l’Italia è a UTC+1 con l’ora solare e a UTC+2 con l’ora legale. In JavaScript ci pensa Intl.DateTimeFormat con timeZone: "Europe/Rome".
Attenzione all’unità: JavaScript conta millisecondi, non secondi. Date.now() restituisce quindi un numero mille volte più grande di un timestamp Unix e va diviso per 1000.
Timestamp Unix e data leggibile: che cosa cambia
| Timestamp Unix | Data e ora | |
|---|---|---|
| Formato | Numero intero | AAAA-MM-GG HH:MM:SS |
| Fuso orario | Sempre UTC | Dipende dal luogo |
| Intervallo a 32 bit | 0 – 2 147 483 647 | 1970–2038 |
| Intervallo a 64 bit | Praticamente illimitato | Miliardi di anni |
| Ordinamento | Naturale, sono numeri | Richiede di analizzare il testo |
Come usare il convertitore?
1. Inserisci un valore
Digita un timestamp in secondi. Il convertitore scarta la parte decimale, quindi dividi prima i millisecondi per 1000.2. Leggi il risultato
La data compare subito nel campo accanto, in UTC e nella forma 2023-11-14 22:13:20, senza premere alcun pulsante.3. Copia o inverti il senso
Premi Copia risultato oppure il pulsante Inverti ordine per inserire una data e ottenerne il timestamp.
Quando serve questo convertitore?
Database e colonne di data
Le colonne created_at, updated_at e deleted_at contengono spesso un timestamp invece di una data leggibile, che si tratti di PostgreSQL, MySQL o SQLite. Mentre si esegue il debug di una migrazione in Symfony o Laravel, il convertitore restituisce senso alla riga senza lanciare una query.API e token JWT
Un token JWT porta i campi exp e iat, la scadenza e il momento di emissione, entrambi come timestamp Unix. Il convertitore dice in un secondo se il token è ancora valido e quando è stato rilasciato.Log del server e job cron
Apache, Nginx e syslog datano ogni riga. Un job cron su un server gira quasi sempre in UTC: il convertitore dà l’ora UTC dell’errore, a cui va aggiunto lo scarto italiano per confrontarla con l’orario di ufficio.Debug e oggetti Date in JavaScript
Date.now() restituisce millisecondi, circa 1 788 000 000 000 a settembre 2026. Dividere per 1000 e arrotondare per difetto dà il timestamp Unix. Il convertitore serve poi a confrontare valori di fonti diverse e a scovare disallineamenti dell’orologio.
Valori da tenere a portata di mano
- L’epoca Unix comincia il 1° gennaio 1970 alle 00:00:00 UTC: è il timestamp 0.
- Il limite a 32 bit, 2 147 483 647, cade il 19 gennaio 2038 alle 03:14:07 UTC.
- In JavaScript
Date.now()restituisce millisecondi, non secondi. - Un timestamp negativo indica una data anteriore al 1970: -1 è il 31 dicembre 1969 alle 23:59:59 UTC.
Ultima revisione dei contenuti: · scritto e verificato dal team Arteon
Domande frequenti
Cos’è l’epoca Unix?
Il 1° gennaio 1970 alle 00:00:00 UTC. Tutti i timestamp sono misurati da questo punto.
Cos’è il problema dell’anno 2038?
I timestamp a 32 bit con segno traboccano il 19 gennaio 2038 alle 03:14:07 UTC. I sistemi moderni usano 64 bit.
I calcoli vengono eseguiti localmente?
Sì. Tutti i calcoli vengono eseguiti nel tuo browser.
Qual è il timestamp Unix attuale?
A settembre 2026 si aggira su 1 788 000 000 e cresce di uno ogni secondo. Per il valore esatto digita la data di oggi nel convertitore oppure esegui Math.floor(Date.now() / 1000) nella console del browser.
Come passo dal risultato all’ora italiana?
Il convertitore mostra l’ora UTC. L’Italia è a UTC+1 con l’ora solare e a UTC+2 con l’ora legale, quindi vanno aggiunte una o due ore. In JavaScript, Intl.DateTimeFormat con timeZone: "Europe/Rome" applica lo scarto da solo.
Che differenza c’è tra timestamp Unix e JavaScript?
Il timestamp Unix conta secondi, JavaScript millisecondi. Per questo 1700000000 diventa 1700000000000 in JavaScript. Dividere per 1000 e applicare Math.floor riporta all’uno dall’altro.
Che cos’è il problema dell’anno 2038?
Un timestamp salvato su 32 bit con segno raggiunge il valore massimo, 2 147 483 647, il 19 gennaio 2038 alle 03:14:07 UTC. Da lì in poi i sistemi vecchi passano in negativo e finiscono nel 1901. I sistemi a 64 bit non hanno questo limite.
Come ottengo un timestamp in JavaScript, PHP o SQL?
In JavaScript Math.floor(Date.now() / 1000), in PHP time(), in Python int(time.time()). In SQL danno lo stesso valore UNIX_TIMESTAMP() su MySQL ed EXTRACT(EPOCH FROM NOW()) su PostgreSQL.
Un timestamp può essere negativo?
Sì. I valori negativi indicano date precedenti al 1° gennaio 1970: -86400 è il 31 dicembre 1969 alle 00:00:00 UTC. Quasi tutti i linguaggi e i database li accettano senza problemi.

Aiutaci a migliorare i nostri strumenti
Hai un’idea, trovato un bug o vuoi suggerire una funzionalità? Scrivici – rispondiamo entro 24 ore.