Equinox and Solstice Times


An equinox occurs when the geocentric apparent ecliptic longitude of the Sun is zero (vernal equinox) or 180° (autumnal equinox) per the Astronomical Almanac glossary. That seems equivalent to the notion that the Sun is exactly on the equator at an equinox, since the intersections of the ecliptic and celestial equator are the zero and 180° points on both circles. However, the Sun oscillates a few tenths of an arc second north and south of the ecliptic on a monthly cycle, so its center doesn't pass exactly through those intersections. Consequently it's at zero longitude, zero declination, and zero right ascension at three different times.

Zero geodetic latitude occurs at still another time because the geodetic pole doesn't coincide with the rotation axis. (The latter is the basis of declination.) The point where the rotation axis emerges from the crust moves continuously in a quasi circular path about 20 feet in diameter. Moreover, the geodetic pole is a quarter second of arc outside the circle. Therefore, the geodetic and celestial equators are out of coincidence by several tenths of an arc second.

All these complications mean there are four different "equinoxes". For example, here are the times (UTC) on 2017 September 22. Geodetic latitude is calculated with polar motion values from IERS Bulletin B: x = 230.274 mas (milli arc seconds), y = 320.857 mas. The second line is the correct equinox.

20:01:40 right ascension = 12 hours
20:01:48 ecliptic longitude = 180
20:02:20 geodetic (ITRS) latitude = 0
20:02:29 declination = 0

The situation at solstice is a little simpler since the circle of 90/270 degrees longitude is also the circle of 6/18 hours right ascension. On the other hand, the Sun's declination and geodetic latitude change very slowly near the solstices, so the times of maxima are not well defined and the discrepancy between the celestial and geodetic equators has a large effect. For instance, geodetic latitude is constant within 1 mas for 18 minutes near the 2017 June 21 solstice. Maximum latitude occurs at 0437 UTC. Declination is constant within 1 mas for 26 minutes, and maximum at 0421. The true solstice time, computed with ecliptic longitude, is 0424.

For simplicity in the calculation above I used polar motion angles x = 130.474 mas, y = 454.980, which are valid at the nearest UTC midnight. In reality the pole can move more than one mas per day.

Another problem is that polar motion has a random component and thus the extremes of the Sun's geodetic latitude are not precisely predictable in the long term. Clearly, neither latitude nor declination is suitable for the precise definition of a solstice. The choice between right ascension and ecliptic longitude is not so clear. Both have an average rate of 360° per year. Right ascension is simpler to calculate but longitude has a more constant rate throughout the year. In a cursory check I saw ±5% variation from the mean, vs. ±10% for right ascension. I think both are constant enough, since solving for equinox and solstice times requires iteration anyway, but the formally correct angle is ecliptic longitude with respect to the true equator (i.e., affected by nutation). If nutation is neglected, the computed times can be several minutes different from the Astronomical Almanac.

Ecliptic coordinates are probably too much for a non-technical person, so I don't see any harm if the public believes equinoxes and solstices are calculated from the geographic latitude of the Sun.

Short Term Table (UTC)

This table extends as far into the future as I can confidently predict leap seconds.

Mar Jun Sep Dec
2020 20 03:49:37 20 21:43:41 22 13:30:39 21 10:02:20
2021 20 09:37:28 21 03:32:10 22 19:21:05 21 15:59:18
2022 20 15:33:25 21 09:13:51 23 01:03:42 21 21:48:13
2023 20 21:24:26 21 14:57:50 23 06:50:00 22 03:27:22
2024 20 03:06:24 20 20:51:00 22 12:43:40 21 09:20:34

Long Term Table (TAI)

UTC is easy to convert to civil tme, but it's problematic for long term equinox and solstice predictions due to the step adjustments (leap seconds). These are not predictable several years in advance. If you estimate future leap seconds wrong, your times are in error the same amount. UT1 gives similar trouble, except that its error is a real number which depends on the accuracy of your delta T estimate. Therefore, I give long term predictions in TAI.

In reality, the computation is performed in TT (Terrestrial Time), since that's the time scale of the solar system ephemeris and the precession / nutation model. But TT would make extra work for the table user, since you must first subtract a constant 32.184 seconds to obtain TAI, then subtract the (non-constant) TAI-UTC value to obtain UTC.

In the table below, times are TAI to eliminate the subtraction of 32.184. You need only subtract a whole number of seconds to get UTC. For example, UTC was 37 seconds behind TAI in 2021, so the December solstice occurred at 15:59:55 TAI or 15:59:18 UTC. The difference TAI-UTC increases one second after each leap second. The current value is easy to find online, for example, at the International Earth Rotation Service site. (It's virtually certain TAI-UTC will remain 37 seconds until 2024 or later.) If leap seconds are discontinued, TAI-UTC becomes constant and the table is still accurate.

Mar Jun Sep Dec
2023 20 21:25:03 21 14:58:27 23 06:50:37 22 03:27:59
2024 20 03:07:01 20 20:51:37 22 12:44:17 21 09:21:11
2025 20 09:02:06 21 02:42:53 22 18:19:57 21 15:03:42
2026 20 14:46:34 21 08:25:07 23 00:05:50 21 20:50:51
2027 20 20:25:18 21 14:11:27 23 06:02:20 22 02:42:47
2028 20 02:17:45 20 20:02:37 22 11:45:55 21 08:20:17
2029 20 08:02:36 21 01:48:55 22 17:39:07 21 14:14:43
2030 20 13:52:43 21 07:31:56 22 23:27:30 21 20:10:15
2031 20 19:41:36 21 13:17:45 23 05:15:55 22 01:56:11
2032 20 01:22:31 20 19:09:23 22 11:11:30 21 07:56:34
2033 20 07:23:21 21 01:01:46 22 16:52:18 21 13:46:38
2034 20 13:18:07 21 06:44:49 22 22:40:12 21 19:34:38

Tables were computed with the JPL DE431 or DE441 ephemeris, IAU 2006 precession model, and 2000B nutation. Sun geocentric apparent ecliptic longitude with respect to the true equinox is 0 (March equinox), 90° (June solstice), 180° (September equinox), or 270° (December solstice).


I believe future improvements will not change my times more than two seconds. The tools of the late 1990s (JPL DE406 ephemeris, IAU 1976 precession model, and 1980 nutation model) generate almost identical results. Most of the difference is due to a known problem in the 1976 precession model. In 2020 its pole is about 100 mas in error, whereas the 2006/00B model is within 1 mas of the true pole. But even with a flawed precession model the above tables are duplicated within two seconds.

The solar system ephemeris has little effect. DE406 (1997) and DE431 (2013) give identical results in 2030 and 2031.

Calculation Example

Begin with the UTC. Convert to Terrestrial Time, the scale of the JPL ephemeris and precession / nutation model. Delta T doesn't matter because Earth rotation has no effect on the calculation.

2017-09-22 20:01:48.0000 UTC
2017-09-22 20:02:57.1840 TT

The JPL DE431 ephemeris gives Sun and Earth positions in the BCRS (origin is the solar system barycenter and the coordinate system is oriented to the ICRS). Subtract the latter from the former to get the geocentric geometric Sun position in the ICRS.

3.5116234e+005 7.7593288e+005 3.1469847e+005 Sun (km)
1.5047970e+008 2.0206603e+005 6.4772218e+004 Earth (km)

geocentric geometric place (ICRS)
-0.99999131 0.00382247 0.00166473 unit vector
1.5012984e+008 km geometric distance
11h59m07.4373s  +0°05'43.38" RA, dec

That's where the Sun is. Where it was, when it emitted the light that reaches us now, is its astrometric place. For the Sun the difference is almost invisible at this precision.

8m20.7793s light time
0.01" light time angle

geocentric astrometric place (ICRS)
-0.99999131 0.00382244 0.00166472 unit vector
1.5012983e+008 apparent distance (km)
11h59m07.4373s  +0°05'43.37" RA, dec

Next, correct for aberration due to Earth's velocity. Get velocity from the JPL ephemeris, apply it to astrometric place to obtain apparent place.

-3.2370508e+004 2.3542281e+006 1.0205415e+006 Earth velocity (BCRS, km/day)
20.43" aberration angle

Sun geocentric apparent place (ICRS)
-0.99999089 0.00391332 0.00170412 unit vector
11h59m06.1880s  +0°05'51.50" RA, dec

That's the geocontric apparent place of the Sun in the ICRS. The coordinate system must be transformed to ecliptic coordinates. From the IAU 2006 precession model get the bias - precession matrix, which transforms from the ICRS to the mean equator and equinox system. Also get the mean obliquity of the ecliptic.

0.99999066 -0.00396382 -0.00172219
0.00396382 0.99999214 -0.00000336
0.00172219 -0.00000347 0.99999852
23°26'13.10" mean obliquity

From the IAU 2000B nutation model get nutation angles. If nutation is neglected, the computed equinox and solstice times can disagree with The Astronomical Almanac by several minutes.

-11.03" nutation in longitude
-6.67" nutation in obliquity

From those angles calculate the nutation matrix, which transforms from mean to true equator and equinox of date.

1.00000000 0.00004908 0.00002128
-0.00004909 1.00000000 0.00003233
-0.00002128 -0.00003233 1.00000000

The nutation matrix, times the precession matrix, is the BPN (bias precession nutation) matrix, which transforms from the ICRS to the true equator and equinox of date.

0.99999089 -0.00391474 -0.00170091
0.00391479 0.99999234 0.00002906
0.00170078 -0.00003572 0.99999855

geocentric apparent place (true equator & equinox)
-1.00000000 -0.00000141 0.00000321 unit vector
12h00m00.0193s  +0°00'00.66" RA, dec

The BPN matrix is x-rotated by the true obliquity of the ecliptic (= mean obliquity + nutation in obliquity) to get the matrix that transforms coordinates from the ICRS to the ecliptic.

0.99999089 -0.00391474 -0.00170091
0.00426828 0.91748978 0.39773646
0.00000354 -0.39774010 0.91749813

geocentric apparent place (ecliptic & true equinox)
-1.00000000 -0.00000002 0.00000350 unit vector
180°00'00.00"  +0°00'00.72" ecliptic longitude, latitude

Longitude is 180°, so this is the 2017 September equinox. Of course normally time is unknown, so begin with an approximate time and correct it by iteration until longitude is the desired value. This is easy since the Sun longitude rate is an almost constant 1° per day.


(Last revision 2023-09-19)