Convert Nanoseconds to Date
Nanosecond timestamps (19 digits) appear in Go's time.UnixNano(), distributed tracing, and high-frequency systems. They count billionths of a second since the Unix epoch.
Paste a nanosecond value to see the date plus the equivalent seconds, milliseconds, and microseconds. Full integer precision is preserved using big integers.
Worked example
Input 1700000000000000000 converts to Tue, 14 Nov 2023, 22:13:20 UTC:
- UTC
- Tue, 14 Nov 2023, 22:13:20 UTC
- ISO 8601 (UTC)
- 2023-11-14T22:13:20.000Z
- RFC 3339 (UTC)
- 2023-11-14T22:13:20Z
- RFC 2822
- Tue, 14 Nov 2023 22:13:20 +0000
- Unix seconds
- 1700000000
- Unix milliseconds
- 1700000000000
- Microseconds
- 1700000000000000
- Nanoseconds
- 1700000000000000000
- Hex (seconds)
- 0x6553f100
- Binary (seconds)
- 1100101010100111111000100000000
Code examples
JavaScript
const d = new Date(1700000000000); console.log(d.toISOString()); // 2023-11-14T22:13:20.000Z Math.floor(Date.now() / 1000); // current epoch
Python
from datetime import datetime, timezone print(datetime.fromtimestamp(1700000000, tz=timezone.utc)) # 2023-11-14T22:13:20.000Z import time; int(time.time())
Go
package main
import ("fmt"; "time")
func main() {
fmt.Println(time.Unix(1700000000, 0).UTC()) // 2023-11-14T22:13:20.000Z
fmt.Println(time.Now().Unix())
}See all 14 languages on the code examples pages.
Frequently asked questions
- How many digits is a nanosecond timestamp?
- Around 19 digits for present-day dates. Divide by 1,000,000,000 to get seconds.
- Which languages use nanosecond time?
- Go (time.UnixNano), and many tracing/observability tools. Rust and Java can also expose nanosecond precision.
- Will I lose precision converting in JavaScript?
- Plain JS numbers lose sub-millisecond precision. This tool uses BigInt to keep the full nanosecond value exact.