Real Epoch Converter logo realepochconverter
unix hex converter

Unix Hex Timestamp Converter. Epoch Time in Hexadecimal

Hexadecimal epoch values show up in kernel Oops messages, crash dumps, firmware logs, and packet captures. This converter reads them straight, and hands you the hex for any date you type.

converter

Unix time, in hexadecimal.

Read and write epoch seconds as hex (the format you meet in kernel logs, memory dumps, and packet captures. Plain base-16 arithmetic, no lookups.

Why hex timestamps exist

Unix time is just a counter, and counters are displayed however the code chooses. Low-level code that prints or parses raw integers often uses hex because it is aligned with the byte boundary, a 32-bit counter is a natural 0x… value. So the same instant reads 1786060800 in decimal and 0x6A752000 in hex, and tools that format with %x instead of %d produce the second form.

The epoch value itself is identical, hex is just a display format. The converter accepts either spelling (0x66B2D800 or 66B2D800) and treats the digits as seconds, matching the overwhelmingly common convention. If your value is milliseconds in hex, the Hex (ms) row shows both readings.

The same instant, two spellings

  • 0x66B2D800 → 1722996736 → Aug 7, 2024 02:12:16 UTC. The leading 0x is optional; the converter strips it.
  • Aug 7, 2026 00:00:00 UTC → decimal 1786060800 → hex 0x6A752000, the value you would log for "start of that day".
  • The "Now" button fills 0x plus the current epoch in hex, the fastest way to grab a sample for a test case.

Producing and parsing hex epochs in code

  • JavaScript: Math.floor(Date.now() / 1000).toString(16), add 0x yourself.
  • Python: hex(int(time.time())) → '0x…'.
  • C: printf("0x%08X", (unsigned)time(NULL)), the classic kernel-log form.
  • Parsing back: parseInt('66B2D800', 16) in JS, or int('66B2D800', 16) in Python.

Gotchas: signedness, hidden milliseconds, and byte order

  • Signed vs unsigned, before 2038 every epoch fits in 31 bits, so the top bit is never set. Values for dates after the 2038 overflow look like 0x80000000-style numbers and will not parse in signed 32-bit debuggers.
  • Seconds by default, some embedded stacks store milliseconds in hex (JavaScript Date.now() dumped as hex). If your hex is ~11 digits like 0x186A0B5D8E0, it is milliseconds — the converter's Hex (ms) row confirms the reading.
  • Endianness, bytes on the wire may appear little-endian. This converter reads the number the way you type it; reverse the byte order first if your capture looks scrambled.

First published · Last reviewed · Maintained and developed by the Real Epoch Converter team · Email · Contact · Methodology

Copied