Unix-Timestamp-Konverter
Füge einen Epoch-Wert in Sekunden, Millisekunden, Mikrosekunden oder Nanosekunden ein und sieh das Datum in deiner Zeitzone, in UTC und in ISO 8601. Die Einheit wird an der Anzahl der Ziffern erkannt. Du kannst auch ein Datum einfügen und bekommst dessen Epoch.
Noch kein Wert
Füge einen Timestamp oder ein Datum in das Feld ein. Alle Formate erscheinen sofort hier, jeweils mit Kopierknopf.
Datum in Timestamp
Wähle Datum und Uhrzeit. Der Epoch wird in der Zone UTC berechnet, die oben ausgewählt ist.
Logzeilen umwandeln
Füge Log-, JSON- oder CSV-Zeilen ein. Jede Zahl mit 10, 13, 16 oder 19 Ziffern wird zu einem ISO-8601-Datum in der Zone UTC. Die Zeilen bleiben in deinem Browser.
Stammt der Timestamp aus exp, iat oder nbf eines JWT? Der Decoder zeigt das ganze Token und ob es abgelaufen ist.
Brauchst du nur ein Datum als ISO-String oder UTC-String? Der Datumsformat-Konverter macht das mit einem Klick.
Timestamps im Code
So bekommst du den aktuellen Timestamp und wandelst in beide Richtungen um, in den gängigen Sprachen.
// Now, in seconds and in milliseconds
Math.floor(Date.now() / 1000); // 1790254800
Date.now(); // 1790254800123
// Epoch to date (Date expects milliseconds)
new Date(1790254800 * 1000).toISOString();
// Date to epoch in seconds
Math.floor(new Date("2026-09-24T10:00:00-03:00").getTime() / 1000);Was ist ein Unix-Timestamp
Ein Unix-Timestamp, auch Epoch genannt, ist die Anzahl der Sekunden seit dem 1. Januar 1970 um 00:00:00 UTC, ohne Schaltsekunden. Dieselbe Zahl steht überall auf der Welt für denselben Zeitpunkt. Deshalb taucht sie in Datenbankspalten, Logs, Message Queues, API-Antworten und den Claims exp, iat und nbf eines JWT auf. Die Zeitzone spielt erst eine Rolle, wenn das Datum einem Menschen angezeigt wird.
Sekunden, Millisekunden, Mikrosekunden oder Nanosekunden
Die Einheit steht nicht in der Zahl. Für Daten zwischen 2001 und 2286 reicht die Anzahl der Ziffern: Jede feinere Einheit fügt 3 Ziffern hinzu. So erkennt dieser Konverter die Einheit.
| Ziffern | Einheit | Beispiel | Wo sie meist vorkommt |
|---|---|---|---|
| 10 | Sekunden | 1790254800 | PHP time(), Python int(time.time()), JWT exp, PostgreSQL EXTRACT(EPOCH), RabbitMQ-Property timestamp |
| 13 | Millisekunden | 1790254800000 | JavaScript Date.now(), Java System.currentTimeMillis(), Kafka-Record-Timestamp, SQS SentTimestamp |
| 16 | Mikrosekunden | 1790254800000000 | BigQuery UNIX_MICROS, Python time.time_ns() // 1000, Tracing |
| 19 | Nanosekunden | 1790254800000000000 | Go UnixNano(), Python time.time_ns(), InfluxDB und Metriken |
UTC und Ortszeit
Ein Timestamp hat keine Zeitzone. Die Anzeige legt eine fest: new Date(ms).toISOString() zeigt UTC, toLocaleString() nutzt die Zone des Browsers. Deshalb zeigen zwei Rechner in verschiedenen Zonen für denselben Wert unterschiedliche Uhrzeiten. Liegt ein Datum um ganze Stunden daneben, wurde fast immer UTC als Ortszeit gelesen oder umgekehrt.
Ein Datum in 1970 oder Tausende Jahre in der Zukunft
Beide Symptome kommen von derselben Verwechslung der Einheit. Ein Sekundenwert, der an new Date() in JavaScript übergeben wird, das Millisekunden erwartet, wird zu Januar 1970. Ein Date.now(), das in einem Feld landet, das das Backend in Sekunden liest, wird zu einem Datum Zehntausende Jahre in der Zukunft. Wenn du die Zahl hier umwandelst, siehst du sofort, was passiert ist.
Sommerzeit und alte Datumswerte
Zeitzonenregeln ändern sich mit der Zeit. Brasilien etwa hatte bis Februar 2019 Sommerzeit, und in diesen Zeiträumen lag São Paulo bei UTC−2 statt UTC−3. Ein System, das alte Datumswerte mit einem festen Offset umrechnet, liegt bei allem, was in den Sommer fiel, eine Stunde daneben. Die IANA-Zeitzonendatenbank, die dieser Konverter und die Browser nutzen, kennt die Regeln jedes Jahres, und das Ergebnis wird markiert, wenn das Datum in die Sommerzeit fällt.
Das Jahr-2038-Problem
Die größte vorzeichenbehaftete 32-Bit-Ganzzahl ist 2147483647, also der 19.01.2038 um 03:14:07 UTC. Eine Sekunde später springen Systeme, die den Epoch in 32 Bit speichern, auf 1901 zurück. Der MySQL-Typ TIMESTAMP hat diese Grenze. BIGINT-Spalten und Sprachen mit 64-Bit-Ganzzahlen haben sie nicht, und dieser Konverter akzeptiert Daten weit nach 2038.
Negative Timestamps
Negative Werte sind Daten vor 1970: −86400 ist der 31.12.1969 in UTC. Geburtsdaten und historische Einträge können solche Werte erzeugen, und manche älteren Datenbanken und Bibliotheken lehnen sie ab. Es lohnt sich, einen davon in die Testdaten aufzunehmen.
Tagesbeginn und Tagesende in einer anderen Zone
Der 24. September beginnt in São Paulo um 03:00 UTC, nicht um Mitternacht UTC. Ein BETWEEN-Filter mit dem Tagesbeginn in UTC liefert Zeilen vom falschen Tag. Die Tabelle für Beginn und Ende in diesem Konverter nutzt die gewählte Zone, und das Ende eines Zeitraums ist die letzte Millisekunde vor dem nächsten.
Häufige Fragen zum Unix-Timestamp
Einheiten, Zeitzonen und die Datumsfehler, die in Logs und APIs am häufigsten auftreten.