Skip to main content
Unit ConvertersFree · no sign-up

Years to Seconds Converter

Convert years to seconds — a Gregorian year is exactly 31,556,952 seconds.

Updated

seconds

31,556,952s

1 yr = 31,556,952 s

Advertisement

In short

How many seconds are in a year?

A Gregorian year is exactly 31,556,952 seconds, from 365.2425 days of 86,400 each. Most software uses 31,536,000 instead, which is a flat 365-day year. The gap is 20,952 seconds — about five hours and forty-nine minutes — and it is the leap day averaged out.

A one-year cache lifetime is conventionally written as 31,536,000 seconds, not the Gregorian figure.

years to seconds — quick reference

years (yr)seconds (s)
0.5 yr15,778,476 s
1 yr31,556,952 s
2 yr63,113,904 s
5 yr157,784,760 s
10 yr315,569,520 s
18 yr568,025,136 s
25 yr788,923,800 s
50 yr1,577,847,600 s
Computed from the exact factor — rounded only for display.

The formula, worked line by line

Two exact chains meet. A day is 86,400 seconds, from 24 hours of 60 minutes of 60 seconds, every step a whole-number ratio inherited from Babylonian arithmetic. A Gregorian year averages 365.2425 days, because the leap rule adds a day every four years, withholds it in century years, and restores it in years divisible by four hundred.

Every year divisible by 4 is a leap year, except years divisible by 100, unless they are also divisible by 400.
The Gregorian leap rule, in force since 1582

Over 400 years that rule yields exactly 146,097 days. Divide by 400 for the mean year, multiply by 86,400, and the answer lands on 31,556,952 with nothing after the decimal point.

seconds = years x 31,556,952
31,556,952 = 365.2425 x 86,400
86,400 = 24 x 60 x 60
1 year -> 1 x 31,556,952 = 31,556,952 s
flat 365-day year = 31,536,000 s
The Unix epoch runway to 2038A signed 32-bit second counter starting at 1 January 1970 overflows at 2,147,483,647 seconds, which falls on 19 January 2038.SECONDS SINCE 1 JANUARY 1970019701e920012e920332,147,483,6472038One Gregorian year = 31,556,952 seconds
Seconds since 1970, and where a signed 32-bit counter runs out.
The worked default, one year
Years entered
1
Days that is
365.2425
Times 86,400
365.2425 x 86,400 = 31,556,952
Seconds
31,556,952

The flat 365-day year gives 31,536,000, which is 20,952 seconds less — five hours and forty-nine minutes. That quantity is the leap day divided across four years, which is precisely what the 0.2425 in the mean year represents.

Where the extra 20,952 seconds comes from

A leap day is 86,400 seconds and the Gregorian calendar adds 97 of them every 400 years. Spread that across the 400 years and each one gains 0.2425 of a day, which is 20,952 seconds. So the gap between the flat year and the mean year is not an approximation — it is the leap rule, expressed per year.

The leap rule in seconds
Leap days per 400 years
97, not 100
That in seconds
8,380,800
Divided across 400 years
20,952 s per year
Flat year plus that
31,536,000 + 20,952 = 31,556,952

Ninety-seven rather than a hundred because three century years in every four skip their leap day. That is the whole difference between the Gregorian and Julian calendars.

A note on leap seconds

These are a separate thing from leap days and do not appear here. Twenty-seven have been inserted into UTC since 1972, but POSIX timestamps omit them by defining every day as exactly 86,400 seconds. A year in seconds is therefore a calendar quantity, not a measurement of elapsed physical time.

How to use the years to seconds converter

A day is exactly 86,400 seconds and a Gregorian year averages 365.2425 days, so one year is exactly 31,556,952 seconds. The multiplication produces a whole number, which is a coincidence of the arithmetic rather than a design choice, and it makes this one of the tidier calendar conversions.

Running it usually means configuration. Cache lifetimes, token expiries, cookie ages, retention windows and certificate validity are all set in seconds, and the human wanting them thinks in years. Somewhere between the two, a decision gets made about how long a year is.

31,556,952

One Gregorian year

365.2425 x 86,400

31,536,000

One flat 365-day year

what most software means

20,952 s

The gap between them

about 5 h 49 min

Advertisement

Software almost always picks the flat 365-day year. A max-age of one year in an HTTP cache header is conventionally 31,536,000, and a great deal of tooling repeats that figure. It is not wrong; it is a different definition, chosen because it needs no leap-year reasoning.

The other constraint is the field. A signed 32-bit integer holds 2,147,483,647, which is 68.05 years of seconds. Any expiry longer than that overflows, which is the same limit that gives Unix time its 2038 deadline and which still catches people setting far-future cookie ages.

Years as machine values
1 day
86,400 s
30 days
2,592,000 s
1 year, flat 365 days
31,536,000 s
1 year, Gregorian
31,556,952 s
10 years
315,569,520 s
Signed 32-bit maximum
2,147,483,647 s, 68.05 years

The last row is a ceiling rather than a duration. Anything above it needs a 64-bit field, which current POSIX already requires.

Reading a timestamp rather than setting one

A span in seconds and a point in time are different things. That page turns a Unix timestamp into a readable date and back, in seconds or milliseconds.

Open the timestamp converter

Years converted to seconds on the Gregorian mean year, with the flat 365-day figure alongside. The third column is what most software would use for the same span.

YearsSeconds, GregorianSeconds, flat 365-day
0.25 years7,889,2387,884,000
0.5 years15,778,47615,768,000
1 year31,556,95231,536,000
2 years63,113,90463,072,000
3 years94,670,85694,608,000
5 years157,784,760157,680,000
10 years315,569,520315,360,000
18 years568,025,136567,648,000
20 years631,139,040630,720,000
25 years788,923,800788,400,000
30 years946,708,560946,080,000
50 years1,577,847,6001,576,800,000
100 years3,155,695,2003,153,600,000
Uses the Gregorian mean year of 365.2425 days, giving exactly 31,556,952 seconds. The flat year of 365 days gives 31,536,000; the Julian year of 365.25 days gives 31,557,600.

Advertisement

Which year a system means

There is no standard second-count for a year, which surprises people who expect one. The Gregorian mean of 31,556,952 is the calendar's true long-run average. The flat 365-day year of 31,536,000 is what most configuration files contain. Both are defensible and they differ by nearly six hours.

The flat year won in software for a practical reason: it needs no calendar logic. A duration measured in fixed seconds cannot know whether a leap day falls inside it, so building the average into the constant is a way of pretending the question never arises.

A one-year cache header, two ways
Flat 365-day year
max-age=31536000
Gregorian mean year
max-age=31556952
Difference
20,952 seconds, 5 h 49 min
Practical effect on a cache
none whatsoever
What to write
whatever the codebase already uses

For a cache lifetime the distinction is meaningless — nothing depends on the last six hours of a year-long window. It stops being meaningless when the value is a legal retention period, a certificate lifetime or a billing boundary, where the exact expiry instant has consequences.

The rule that keeps things sane is to pick one convention per system and write it down. Discrepancies here are rarely bugs on their own; they become bugs when two components compute the same deadline differently and drift apart by a few hours.

The ceiling on a second count

A signed 32-bit integer runs to 2,147,483,647. As a duration that is 68.05 years, and as a Unix timestamp it is 19 January 2038 at 03:14:07 UTC. The next second needs one more than the field can hold, and the value wraps into negative territory reading as 1901.

Current POSIX has already addressed this: the 2024 edition requires time_t to be at least 64 bits in conforming programming environments, which moves the ceiling out of any practical range. The exposure is in what already exists — firmware, file formats, database columns and protocols that fixed the width years ago.

What each field width buys
Signed 32-bit maximum
2,147,483,647 s
That as a duration
68.05 years
That as a timestamp
19 January 2038, 03:14:07 UTC
Signed 64-bit maximum
far beyond any practical horizon

Sixty-eight years is the whole runway a 32-bit second counter ever had. Starting it at 1970 is what set the deadline.

Practically, any expiry beyond about 2038 set in a 32-bit field will not do what it says. Certificate lifetimes, far-future cookie ages and "never expire" values implemented as a very large second count are the common places this shows up, and the failure is silent rather than loud.

Every years value, worked out

61 common years figures each get their own page, with the answer, the arithmetic, what rounding costs, and the nearest real-world reference point on the scale.

Advertisement

Questions people ask

How many seconds are in a year?

Exactly 31,556,952 in a Gregorian year, from 365.2425 days of 86,400 seconds each. Most software instead uses 31,536,000, a flat 365-day year, because it needs no leap-year reasoning. The two differ by 20,952 seconds, which is five hours and forty-nine minutes.

Is one year 31536000 or 31556952 seconds?

Both are in use. 31,536,000 is a flat 365-day year and is the conventional value in cache headers, cookie ages and configuration files. 31,556,952 is the Gregorian mean year and is the calendar-accurate figure. For a cache lifetime the distinction is meaningless; for a legal retention period or certificate lifetime it is not.

How many seconds are in 10 years?

315,569,520 on the Gregorian mean year, or 315,360,000 using a flat 365-day year. The difference of 209,520 seconds is about two and a half days, accumulated from the leap days in that span. Both figures sit comfortably inside a signed 32-bit field, which does not run out until 2,147,483,647.

What is the largest number of seconds a 32-bit field can hold?

2,147,483,647, which is 68.05 years. Read as a Unix timestamp that value is 19 January 2038 at 03:14:07 UTC, and the next second overflows. Current POSIX requires time_t to be at least 64 bits, so the exposure now sits in legacy firmware, file formats and database columns rather than in modern systems.

Why is a year not exactly 365 days of seconds?

Because the Earth does not take a whole number of days to orbit the sun, so the calendar adds leap days to keep up: 97 of them every 400 years. Spread across those years, each one gains 0.2425 of a day, which is 20,952 seconds. Adding that to the flat 365-day year of 31,536,000 gives the Gregorian 31,556,952.

Sources

Where the constants and formulas on this page come from. Each line names the figure it backs.

  1. The Gregorian leap rule produces exactly 146,097 days per 400 years, giving a mean year of 365.2425 days and therefore 31,556,952 seconds.

    Calendars — Explanatory Supplement to the Astronomical AlmanacUS Naval Observatory

  2. POSIX computes seconds since the Epoch with every day taken as exactly 86,400 seconds, and requires time_t to be at least 64 bits in conforming programming environments.

    IEEE Std 1003.1-2024 (POSIX.1-2024), Base Definitions and RationaleThe Open Group and IEEE, 2024