# How to add years to a date in Excel

Use EDATE with 12 months per year: `=EDATE(B2,C2*12)`.

**Excel:** `=EDATE(B2,C2*12)` (Every current version)

**Google Sheets:** the same formula works.

## Example

Sample data (row 1 is the header):

| A | B | C | D |
| --- | --- | --- | --- |
| Asset | Purchased | Warranty (years) | Warranty ends |
| Laptop | 2025-04-18 | 3 |  |
| Forklift | 2024-02-29 | 5 |  |
| HVAC unit | 2023-09-01 | 10 |  |
| Printer | 2026-01-31 | 1 |  |
| Server | 2022-11-07 | 4 |  |

Formula in D2, filled to D6: `=EDATE(B2,C2*12)`

Result: 4/18/2028; 2/28/2029; 9/1/2033; 1/31/2027; 11/7/2026

## How it works

EDATE moves a date by whole months, so `C2*12` months is `C2` years. When the day doesn't exist in the target year, EDATE stops at the month end: February 29, 2024 plus 5 years is February 28, 2029.

## Other ways

- `=DATE(YEAR(B2)+C2,MONTH(B2),DAY(B2))`: Adds to the year part directly. The same except for February 29, which rolls to March 1. (February 29, 2024 plus 5 years becomes March 1, 2029.)

## Common mistakes

- `=B2+365*C2` drifts by a day for every leap year in between.
- February 29 has no match in most years. EDATE uses February 28 and DATE rolls to March 1; pick the rule your contract uses.

## Questions

**How do I subtract years?**

Use a negative number of months: `=EDATE(B2,-12*C2)`.

**How do I add years and months together?**

Add them as months: `=EDATE(B2,2*12+6)` adds 2 years and 6 months.

Every formula and result on this page was checked by running it in the Spreadsheet Practice formula engine on 2026-10-30.

Source: https://spreadsheetpractice.com/formulas/add-years-to-a-date
