Zum Inhalt springen

Unix-Timestamp-Konverter

Rechne Unix-Timestamps in Datum und Uhrzeit um und zurück. Erkennt s, ms, µs und ns, zeigt ISO 8601 je Zeitzone und die aktuelle Unix-Zeit.

Aktuelle Unix-Zeit

  • Sekunden (s)
  • Millisekunden (ms)

Erkennt die Einheit automatisch an der Stellenzahl (10 Stellen = Sekunden, 13 = Millisekunden).

Ergebnis

Gib einen Timestamp ein, um ihn als Datum und Uhrzeit zu sehen.

z. B. 1700000000 → 14. November 2023, 22:13:20 UTC

Deine Eingaben werden nur in diesem Browser verarbeitet und nie an einen Server gesendet. So funktioniert es

Unix-Zeitstempel 1704067200 Sekunden umgerechnet in 2024-01-01 um 00:00:00 UTC

So funktioniert’s

Ganz oben siehst du die aktuelle Unix-Zeit in Sekunden und Millisekunden – sie aktualisiert sich jede Sekunde. Mit dem Kopieren-Button daneben übernimmst du den Wert direkt.

Im Tab Timestamp → Datum fügst du eine Zahl ein und siehst Datum, Wochentag und Uhrzeit in der gewählten Zeitzone sowie, wie lange das her ist (oder noch dauert). Darunter stehen die erkannte Einheit und der Wert in Sekunden und Millisekunden, danach ISO 8601 (UTC und gewählte Zeitzone) und das HTTP-Datum (RFC 9110), jeweils mit Kopieren-Button. Weicht die gewählte Zeitzone von der deines Geräts ab, siehst du zusätzlich die Zeit auf deinem Gerät; das HTTP-Datum erscheint nur für die Jahre 0 bis 9999. Die Zeitzonenliste enthält alle IANA-Zeitzonen, die dein Browser kennt (Europe/Berlin, Asia/Tokyo usw.); anfangs ist die Zeitzone deines Geräts ausgewählt. Aktuelle Uhrzeit und Zeitzone liest das Tool aus der Uhr und den Browsereinstellungen deines Geräts.

Im Tab Datum → Timestamp gibst du Datum und Uhrzeit (bis auf die Sekunde) ein, wählst die Zeitzone, in der diese Uhrzeit gilt, und erhältst den Timestamp in Sekunden und Millisekunden.

Was die Unix-Zeit ist

Die Unix-Zeit (auch Epoch-Zeit oder POSIX-Zeit) ist die Zahl der Sekunden seit 1970-01-01T00:00:00Z (UTC). Der POSIX-Standard definiert sie als „Seconds Since the Epoch“ und zählt einen Tag immer als 86.400 Sekunden. Schaltsekunden werden also nicht mitgezählt – auch ein Tag mit Schaltsekunde hat in Unix-Zeit 86.400 Sekunden. Das hält Datumsrechnungen einfach, dafür weicht die Unix-Zeit von den tatsächlich vergangenen Sekunden um die Zahl der Schaltsekunden ab. Auch in diesem Tool taucht deshalb nie eine Schaltsekunden-Uhrzeit (23:59:60) auf. Rechnest du einen Timestamp in ein Datum um, liegen die Sekunden immer zwischen 0 und 59, und im Tab Datum → Timestamp lassen sich 60 Sekunden nicht eingeben.

Ein Timestamp steht für einen einzigen Zeitpunkt und hängt daher nicht von der Zeitzone ab. Derselbe Zeitpunkt hat in Berlin und in New York denselben Timestamp; die Zeitzone brauchst du nur, um ihn in eine Uhrzeit umzuwandeln. Wechselst du im Tab Timestamp → Datum die Zeitzone, ändern sich Datum und Uhrzeit sowie die ISO-8601-Zeile für diese Zeitzone; die Werte in Sekunden und Millisekunden, ISO 8601 (UTC) und das HTTP-Datum bleiben gleich. Im Tab Datum → Timestamp ist es umgekehrt: Dasselbe Datum mit derselben Uhrzeit ergibt einen anderen Timestamp, sobald du eine Zeitzone mit anderem Versatz zu UTC wählst.

Sekunden, Milli-, Mikro- und Nanosekunden unterscheiden

Derselbe Zeitpunkt hat je nach Einheit unterschiedlich viele Stellen. Für Zeiten in den 2020er-Jahren siehst du meist:

  • Sekunden: 10 Stellen (1700000000) – Python int(time.time()), Funktionen in PostgreSQL und MySQL
  • Millisekunden: 13 Stellen (1700000000000) – JavaScript Date.now()
  • Mikrosekunden: 16 Stellen – manche Datenbanken und Logs
  • Nanosekunden: 19 Stellen – Sprachen und Logs mit hochauflösenden Uhren

Die automatische Erkennung richtet sich nach der Stellenzahl des ganzzahligen Teils ohne führende Nullen: bis 11 Stellen Sekunden, 12–14 Stellen Millisekunden, 15–17 Stellen Mikrosekunden, ab 18 Stellen Nanosekunden. Bei Werten mit weniger Stellen als üblich – etwa einer Zeit vor März 1973 in Millisekunden – wählst du die Einheit selbst. Stellen unter einer Millisekunde (bei Mikro- und Nanosekundenwerten oder als Nachkommastellen geschrieben) werden in der Datumsanzeige abgeschnitten.

Ein JavaScript-Date umfasst 8,64 × 10¹⁵ Millisekunden (100 Millionen Tage, rund 270.000 Jahre) vor und nach 1970, also -271821-04-20T00:00:00Z bis +275760-09-13T00:00:00Z. Werte außerhalb davon meldet das Tool als Bereichsfehler.

Aktuellen Timestamp im Code abfragen

// JavaScript: Sekunden (Date.now() liefert Millisekunden)
Math.floor(Date.now() / 1000)
# Python: Sekunden (time.time() liefert Sekunden mit Nachkommastellen)
import time; int(time.time())
-- PostgreSQL
SELECT EXTRACT(EPOCH FROM now());
-- MySQL
SELECT UNIX_TIMESTAMP();

Zeitzonen und Sommerzeit

Wenn du in einer Zeitzone mit Sommerzeit ein Datum in einen Timestamp umrechnest, gibt es zwei Sonderfälle. Am Tag der Umstellung auf Sommerzeit springt die Uhr vor, sodass es manche Uhrzeiten nicht gibt (z. B. 2026-03-08 02:30 in New York). Am Tag der Rückstellung gibt es dieselbe Uhrzeit zweimal (z. B. 2026-11-01 01:30 in New York). Für eine nicht existierende Uhrzeit rechnet das Tool mit dem Versatz vor der Umstellung, wodurch sie später erscheint; bei einer doppelten Uhrzeit nimmt es die frühere. In beiden Fällen erscheint über dem Ergebnis ein Hinweis.

Quellen

Häufige Fragen

Warum bekomme ich einen Fehler, wenn ich eine Zahl mit Kommas oder einen Wert wie 1.7e9 einfüge?

Weil das Timestamp-Feld nur Ziffern, ein Vorzeichen am Anfang (+ oder -) und einen einzigen Dezimalpunkt liest. Ein mit Kommas oder Leerzeichen gegliederter Wert wie 1,700,000,000, die Exponentialschreibweise wie 1.7e9, eine Hexadezimalzahl mit 0x am Anfang, ein Wert mit angehängten Buchstaben wie 1700000000s und ein Dezimalkomma wie in 1700000000,5 führen alle zum Fehler „Gib nur Ziffern ein“. Entferne Trennzeichen und Buchstaben, sodass nur die Zahl übrig bleibt, etwa 1700000000. Vor und nach dem Dezimalpunkt muss eine Ziffer stehen, schreib also 0.5 statt .5. Leerzeichen vor und nach dem Wert werden ignoriert, du kannst sie stehen lassen, und auch ein Wert mit führenden Nullen wie 0001700000000 wird unverändert gelesen.

Was prüfe ich, wenn das Datum in 1970 oder Zehntausende Jahre in der Zukunft liegt?

Liest du einen Wert in der falschen Einheit, liegt das Datum weit daneben. Stellst du die Einheit auf Millisekunden (ms) und gibst 1700000000 ein, kommt 1970-01-20T16:13:20Z heraus; mit Sekunden (s) und 1700000000000 ist es +055840-11-08T22:13:20Z. Landet ein Ergebnis im Januar 1970 oder Zehntausende Jahre in der Zukunft, stell die Einheit zurück auf Automatisch oder wähle die, die zum Wert passt. Ein Wert mit Nachkommastellen wie 1700000000.5 wird als Sekunden erkannt, weil nur die Stellen vor dem Punkt zählen; in Millisekunden ergibt er 1700000000500.

Funktionieren auch negative Timestamps?

Ja. Setz ein Minuszeichen vor die Zahl, dann wird sie in einen Zeitpunkt vor 1970-01-01T00:00:00Z umgerechnet: -86400 ist einen Tag früher, 1969-12-31T00:00:00Z. Die automatische Erkennung beachtet das Vorzeichen nicht und zählt nur die Stellen, deshalb wird -1700000000000 als Millisekunden gelesen und ergibt 1916-02-18T01:46:40Z. Bei negativen Zahlen mit Nachkommastellen wird der Sekundenwert nicht zur Null hin, sondern zum früheren Zeitpunkt hin abgerundet: Bei -0.5 steht unter Millisekunden -500 und unter Sekunden -1. Auch im Tab Datum → Timestamp bekommst du für ein Datum vor 1970 eine negative Zahl: Mit der Zeitzone UTC ergibt 1969-12-31 00:00:00 den Wert -86400.

Die Angabe „vor 3 Jahren“ unter dem Datum passt anscheinend nicht zum tatsächlichen Abstand zwischen den Daten. Wie wird sie berechnet?

Sie wird nicht nach dem Kalender gezählt, sondern ist ein Näherungswert: Der Abstand zu jetzt wird durch feste Längen geteilt. Unter 1 Minute erscheint er in Sekunden, unter 1 Stunde in Minuten, unter 24 Stunden in Stunden und unter 30 Tagen in Tagen. Unter 365 Tagen zählt ein Monat als 30 Tage, ab 365 Tagen zählt ein Jahr als 365 Tage, und der Rest fällt weg. Deshalb steht bei 364 Tagen in der Vergangenheit „vor 12 Monaten“ und bei 1459 Tagen – einem Tag weniger als 4 × 365 Tage – „vor 3 Jahren“. Das genaue Datum liest du an Datum und Uhrzeit darüber oder an den ISO-8601-Zeilen ab.

Bei einem alten Datum wie 1900 hat der Versatz zu UTC Sekunden, etwa +08:27:52. Ist das ein Fehler?

Nein. Das Tool legt den Versatz nicht selbst fest: Es nimmt den Wert, den die Zeitzonendaten deines Browsers für diesen Zeitpunkt liefern, und verwendet ihn ungerundet. In diesen Daten haben manche Zeitzonen für frühere Zeiträume einen Versatz, der nicht in ganzen Stunden und Minuten aufgeht. Stellst du zum Beispiel die Zeitzone auf Asia/Seoul und gibst -2208988800 (1900-01-01T00:00:00Z) ein, zeigt die Zeile ISO 8601 (Asia/Seoul) den Versatz +08:27:52. Der Tab Datum → Timestamp rechnet mit demselben Versatz, deshalb ergibt 1900-01-01 00:00:00 in Asia/Seoul den Wert -2209019272 (mit UTC sind es -2208988800). Je nach den Zeitzonendaten in deinem Browser kann das Ergebnis abweichen.

Kann ich Daten nach 2038 umrechnen?

Wird die Unix-Zeit in einer vorzeichenbehafteten 32-Bit-Ganzzahl gespeichert (auf Systemen mit 32-Bit-time_t), ist der größte Wert 2147483647. Das ist 2038-01-19T03:14:07Z; eine Sekunde später läuft der Wert über auf -2147483648, also 1901-12-13T20:45:52Z. Aktuelle Betriebssysteme mit 64-Bit-time_t sind sicher, aber Programme, die Timestamps in 32-Bit-Ganzzahlspalten oder -Dateifeldern speichern, und alte eingebettete Geräte sind weiterhin betroffen. Dieses Tool arbeitet nicht mit 32-Bit-Ganzzahlen und rechnet deshalb auch Werte außerhalb dieses Bereichs ganz normal um. Liegt der Wert im Tab Timestamp → Datum in Sekunden umgerechnet außerhalb dieses Bereichs (-2147483648 bis 2147483647), weist das Tool unter dem Ergebnis darauf hin. Im Tab Datum → Timestamp gibt es diesen Hinweis nicht – prüfe dort selbst, ob das Ergebnis in diesem Bereich liegt.

Zuletzt aktualisiert: