geoprimsField-grade geospatial math

Julian date, MJD, and day of year

The Julian date, modified Julian date, and day of year for a time (or the time for a JD or ), with the daily file name.

2461301.5

The Julian date is 2461301.5, and it is day 261 of 2026.

Modified Julian date
Day of year
Year
UTC
RINEX daily file
Provenance
Computed by
time.scale.julian-date 1.0.0, core 0.1.0
Model
JD = 2440587.5 + days since 1970-01-01 + fraction of the UTC day; MJD = JD − 2400000.5
Accuracy
JD and MJD to about 1 ms; UTC-based (leap seconds are not counted, as is conventional)
Notes
None
Cites
U.S. Naval Observatory, Astronomical Applications Department, Julian Date Converter

Something look off?

Your values

Showing an example. Change anything.
More options 2
Run many at once from a CSV

Loading…

How we got thisFormula, worked example, sources, and proof

Model: JD = 2440587.5 + days since 1970-01-01 + fraction of the UTC day; MJD = JD − 2400000.5

Accuracy: JD and MJD to about 1 ms; UTC-based (leap seconds are not counted, as is conventional)

When to use this: Use this to turn a UTC time into the day number a geodetic or astronomical workflow wants: a Julian date or MJD for an epoch label, a day of year for a RINEX or OPUS submission, or the RINEX daily file name itself. Give it a JD or MJD instead and the UTC time comes back.

Limitations: A Julian date rolls over at noon, not midnight, so midnight UTC is always a .5 -- that is the convention, not a bug, and the MJD reported alongside is the one that rolls at midnight. UTC is not a uniform scale: a day with a leap second is 86,401 seconds long, and the count here is of 86,400-second days from the UTC epoch, as every JD-from-UTC converter does, so within such a day the value is up to a second from a strictly TAI-derived one. This is a UTC date, not a local one: a day of year is the UTC day, which is not the local day everywhere at once.

Worked example: 2026-09-18 at 00:00 UTC. Source: add-practitioner-essentials scenario: JD 2461301.5, MJD 61301, day 261. It is golden test vector v001, and every build checks the tool still gives its answer within its tolerance.

You enter

UTC time
2026-09-18T00:00:00Z

You get

Julian date
2461301.5
Modified Julian date
61301
Day of year
261
Year
2026
UTC
2026-09-18T00:00:00Z
RINEX daily file
ssss2610.26o

Review: Not yet independently reviewed by a geodesist.

Last verified: 2026-09-18, when a maintainer last confirmed this tool's sources at the issuer. See the sources ledger.

Status: version 1.0.0, core 0.1.0. See this tool in the verification report.

Checked against: 24 golden test vectors (download the test vectors, each with its source and tolerance). See how results are checked and every source.

Sources

Terms

MJD: Modified Julian Date
The Julian date minus 2,400,000.5, so days begin at midnight. MJD 0 is 1858 November 17. Source: USNO Julian Date Converter
RINEX: Receiver Independent Exchange Format
The standard text format for GNSS receiver observations. Daily files are named by station, day of year, and year, so any processing service can read them. Source: RINEX: the Receiver Independent Exchange Format
UTC: Coordinated Universal Time
The world's civil time standard, kept within 0.9 s of Earth's rotation by leap seconds. Aviation calls it Zulu time, written with a Z. Source: IERS Bulletin C (leap seconds)

MJD — Modified Julian Date

The Julian date minus 2,400,000.5, so days begin at midnight. MJD 0 is 1858 November 17.

Source: USNO Julian Date Converter

RINEX — Receiver Independent Exchange Format

The standard text format for GNSS receiver observations. Daily files are named by station, day of year, and year, so any processing service can read them.

Source: RINEX: the Receiver Independent Exchange Format

UTC — Coordinated Universal Time

The world's civil time standard, kept within 0.9 s of Earth's rotation by leap seconds. Aviation calls it Zulu time, written with a Z.

Source: IERS Bulletin C (leap seconds)