When I was a little kid I had a friend who was born on February 29, the “leap day” we add to that month every four years. I remember we used to tease him by saying that he was only three years old. I lost contact with him over the years, but I’d guess that by now he’s pretty sick of the joke.

And here we are again on the cusp of our quadrennial exercise in timekeeping: leap day 2024 is almost upon us. A handful of traditions have been associated with it; one held that this was the only acceptable day for—gasp!—women to propose marriage to men. Some folks like to treat this day as a free day that gives them time to catch up with something they’ve long been putting off.

I think that’s a pretty good idea because, after all, catching up is what leap day is all about—astronomically speaking, that is.

## On supporting science journalism

If you’re enjoying this article, consider supporting our award-winning journalism by subscribing. By purchasing a subscription you are helping to ensure the future of impactful stories about the discoveries and ideas shaping our world today.

There are two basic units of time we use that are based on astronomical events. One is the day, the length of time it takes Earth to spin once on its axis. The other is the year, the time it takes for Earth to complete an orbit of the sun. While that seems simple, these two units are actually pretty complicated. For example, Earth spins once relative to what? You need some frame of reference against which to measure that motion.

For our daily life, we use the sun. The time it takes for the sun at due south to set and then rise again and reach the southern meridian once more is one solar day, which we define as 24 hours, or 86,400 seconds. This is actually the *mean* solar day, which uses the center of the sun’s disk as a reference point and is an average of every day of the year. Using an average value is helpful for timekeeping because Earth moves at different speeds at different points in its orbit, which changes the exact length of any particular day.

There are several different ways to measure the length of the year as well. Our current calendar uses the tropical year, the time from vernal equinox to vernal equinox, to account for subtle effects such as precession. Otherwise the date of the equinox would slowly change over the years, and eventually the December solstice would occur in July, which would be awfully confusing.

A tropical year is 365.2422 mean solar days in length. Because Earth’s rotation and orbital period are not linked in any way, they don’t divide evenly. We’re left with that 0.2422 remainder, and that’s the key to leap days.

If we start measuring the day and the year at the exact same moment, at the end of one year Earth will have spun 365 times, plus an extra 0.242 of the way around when the new year begins. After four years, that adds up to 0.9688 day—very nearly a full day. We’ve built up an extra day in the year!

This was known even to ancient peoples, and when Julius Caesar decided to change the basis of the Roman calendar from using the moon to the sun, he also decreed that every fourth year an extra day would be added to keep everything in sync. Congratulations! Happy leap day! This is technically called an intercalary day, one that is added to the calendar to sync it up.

Except the math doesn’t quite work out. By adding a whole day every four years, we’re adding too much: after four years we only have 0.9688 day left over, not 1.0 day. That difference is 0.0312 day, or about 45 minutes. That means every four years we still have about three quarters of an hour to account for. Over time, that’ll build up, and the calendar will be off again.

Enter Pope Gregory XIII, who reformed the calendar again in 1582. He decreed that every 100th year (to make it simple, years ending in 00) would *not* be a leap year, so no leap day would be added. There are 25 leap days in a century, so this method *removes* 25 x 0.0312 = 0.78 day, and the calendar syncs up a little bit better in the long run—but again, not exactly.

Using this algorithm, every 100 years the calendar will run 1 – 0.78 = 0.22 day behind. That adds up, too! So as part of his papal bull, Pope Gregory XIII also declared that every 400th year would once again acquire a leap day. By then there’s an extra 4 x 0.22 = 0.88 day, so adding one day gets us decently close to catching up with Earth’s irritatingly nonintegral annual-diurnal ratio.

That’s the rule we use now. Every fourth year, meaning every year whose number is evenly divisible by 4, is a leap year and is granted an extra day—that is, except for every 100 years, when we skip the leap day, *except* for every 400 years, when we reverse the rule and add a leap day once again. So the years 1700, 1800 and 1900 were not leap years. The year 2000 was because even though it’s divisible evenly by 100, it’s also evenly divisible by 400. The year 2100 will not be a leap year, but the year 2400 will be, and so on.

This actually gets us pretty close to synced up. I’ve sometimes wondered, though, why Pope Gregory XIII didn’t use the time span of every 500 years instead of 400. That would be better because the leftover amount after 100 years is closer to one fifth of a day. But here we are.

Because of this, though, our current rules still leave the calendar a wee bit off. We add a whole day every 400 years, but that’s too much by 1 – 0.88 = 0.12 day. If we wanted to, we could amend the rule again and say that every 3,200 years, we *don’t* make that year a leap year. Why 3,200? Well, 8 x 0.12 = 0.96, so we could skip a leap year every eighth 400-year cycle, which is every 3,200 years. That would mean that the year and day would only be off by 0.04 day—just under an hour—every three millennia, which is pretty danged close.

As usual, when dealing with astronomy and numbers and the calendar, things seem simple—until they aren’t.

So anyway, happy leap day, and if you have something that you’ve been putting off for four years, now is as good a time as any to get to it. And to my old friend Ted, if you’re out there and happen to see this: happy birthday!