ExcelReady
CourseMock testsFunction guidesBlog
Start freeStart learning for free
ExcelReady

Be Excel-ready before day one. Hands-on practice in your browser, with instant feedback.

Learn

  • Course
  • Mock tests
  • Function guides
  • Blog

Test prep

  • Excel level test
  • Excel test practice
  • Free screening quiz
  • Certificate

Company

  • About
  • Editorial policy
  • Contact
  • Terms
  • Privacy

© 2026 ExcelReady. All rights reserved.

  1. Blog
  2. Dates
  3. Find Upcoming Birthdays in Excel With a Formula

Find Upcoming Birthdays in Excel With a Formula

By ExcelReady Team·Updated November 2, 2026·7 min read

The short answer

To find upcoming birthdays in Excel, first build each person's next birthday: take this year's date for their month and day, and use next year if it has already passed. Subtract today's date to get the days until it. Then flag or list everyone within, say, 30 days with IF or FILTER. Keep today's date in one cell, using TODAY().

Key takeaways

  • Birth dates include the birth year, so build this year's birthday with DATE(YEAR(today),MONTH(birth),DAY(birth)).
  • If that date has passed, add one year; subtracting today then gives the days until the next birthday.
  • Keep today's date in one cell with =TODAY(), so every formula uses the same date and you can test other dates.
  • FILTER lists everyone with a birthday in the next 30 days in Excel 2021 or Microsoft 365.
  • A 29 February birthday becomes 1 March in years that are not leap years.
On this page+
  1. Why you can't just compare the birth date with today
  2. The next birthday formula
  3. How many days until each birthday?
  4. How to flag birthdays in the next 30 days
  5. How to list upcoming birthdays with FILTER
  6. Birthdays this month and the age they will turn
  7. Common mistakes and edge cases
  8. Practise it

To find upcoming birthdays in Excel, you work out each person's next birthday, count the days until it, and then flag or list everyone whose birthday is coming soon. The tricky part is that a birth date includes the birth year, so you can't compare it with today directly. This guide gives you one formula for the next birthday, then shows how to flag, list and count upcoming birthdays. It is for HR teams, office managers, teachers and anyone who keeps a staff or member list.

All examples use this list. E1 holds the report date. In a real file, type =TODAY() there. Here it is fixed at 2 November 2026, so the results below stay the same when you read them.

ABC
1NameBirth dateDays until
2Amara20 Nov 199418
3Luis7 Mar 1988125
4Noor29 Feb 2000119
5Kenji2 Nov 19910
6Sofia5 Dec 198533

Why you can't just compare the birth date with today#

A birth date such as 20 Nov 1994 is in the past, so it is always smaller than today. Subtracting it from today gives the person's age in days, not the days until their birthday. You need the same month and day in the current year, or in the next year if that date has already gone.

Excel stores dates as numbers, counting days from 1 January 1900. That is why you can subtract one date from another and get a number of days. If this is new, practise the date basics first.

The next birthday formula#

Build this year's birthday with DATE, YEAR, MONTH and DAY:

Excel formula
=DATE(YEAR($E$1),MONTH(B2),DAY(B2))

For Amara, this is 20 Nov 2026. For Luis, it is 7 Mar 2026, which has already passed. To move past birthdays into next year, add 1 to the year when this year's date is before the report date:

Excel formula
=DATE(YEAR($E$1)+(DATE(YEAR($E$1),MONTH(B2),DAY(B2))<$E$1),MONTH(B2),DAY(B2))

The comparison in brackets returns TRUE or FALSE. In a calculation, TRUE counts as 1 and FALSE as 0, so the year goes up by one only when the birthday has passed. For Luis, the result is 7 Mar 2027. For Kenji, whose birthday is today, the comparison is FALSE (today is not before today), so his next birthday is today.

If the plus-TRUE trick feels too clever, the IF version does the same: YEAR($E$1)+IF(DATE(YEAR($E$1),MONTH(B2),DAY(B2))<$E$1,1,0).

How many days until each birthday?#

Subtract the report date from the next birthday. In C2:

Excel formula
=DATE(YEAR($E$1)+(DATE(YEAR($E$1),MONTH(B2),DAY(B2))<$E$1),MONTH(B2),DAY(B2))-$E$1

Fill it down to C6 (Windows: Ctrl+D; Mac: ⌘D). Amara gets 18, Luis 125, Noor 119, Kenji 0 and Sofia 33. A 0 means the birthday is today. If the result shows as a date, change the cell format to General or Number.

The $ signs keep every row pointing at E1. The guide to counting days until a deadline uses the same subtraction, and you can practise days between dates in a live sheet.

How to flag birthdays in the next 30 days#

With the days in column C, a simple IF marks the ones coming up:

Excel formula
=IF(C2<=30,"Soon","")

Amara (18) and Kenji (0) show Soon. Sofia (33) doesn't, because 33 is more than 30. Put the 30 in a cell, such as F1, and use C2<=$F$1 so you can change the window without editing formulas.

To colour the rows instead, select A2:C6 and go to Home > Conditional Formatting > New Rule > Use a formula, then type =$C2<=30. The $ before C keeps every cell in the row looking at column C. The guide to highlighting overdue dates walks through the same kind of rule.

How to list upcoming birthdays with FILTER#

FILTER returns only the rows that meet a condition, and it updates when the data changes. To list the names with a birthday in the next 30 days:

Excel formula
=FILTER(A2:A6,C2:C6<=30,"None")

The result spills down as Amara and Kenji. The third argument, "None", shows when nobody matches, instead of a #CALC! error. To show the soonest first, sort the result by the days column with SORTBY:

Excel formula
=SORTBY(FILTER(A2:A6,C2:C6<=30),FILTER(C2:C6,C2:C6<=30))

Now Kenji (today) comes before Amara (18 days). FILTER and SORTBY need Excel 2021 or Microsoft 365. In older versions, use the filter arrows on column C instead (Data > Filter, then Number Filters > Less Than Or Equal To). See the FILTER function guide for more.

Birthdays this month and the age they will turn#

For a monthly list, compare months instead of counting days. =MONTH(B2)=MONTH($E$1) returns TRUE for birthdays in the report month. To count them, use:

Excel formula
=SUMPRODUCT(--(MONTH(B2:B6)=MONTH($E$1)))

On the sample data, the result is 2 (Amara and Kenji, both in November). Sofia's December birthday is only 33 days away, but it is in next month. Use this for "birthdays this month" and the days method for "the next 30 days".

To show the age each person will turn, use DATEDIF between the birth date and the next birthday:

Excel formula
=DATEDIF(B2,$E$1+C2,"y")

$E$1+C2 is the next birthday, so Luis shows 39 and Kenji 35. The DATEDIF function guide covers the units, and the guide to calculating age and years of service explains why DATEDIF beats dividing by 365.

Common mistakes and edge cases#

Watch for these when you build a birthday tracker:

  1. Using TODAY() in every formula. It works, but one cell with =TODAY() is easier to check and lets you test another date. The TODAY function guide and the article on the TODAY function explain how it updates.
  2. 29 February birthdays. DATE(2027,2,29) becomes 1 March 2027, because 2027 is not a leap year. That is why Noor shows 119 days. If you prefer 28 February, add a rule for it.
  3. Birth dates stored as text. MONTH and DAY return #VALUE! on text that only looks like a date. Convert the column first.
  4. Expecting the list to update on its own. TODAY() recalculates when the file opens or recalculates. A printed list is a snapshot.
  5. Forgetting the year roll-over in December. A birthday on 5 January is "next year" when you check on 20 December. The next-birthday formula handles this; a simple month comparison does not.

The same "next date" idea works for anniversaries and renewals; see the expiry date tracker.

Practise it#

Birthday lists combine date basics, date maths and date conditions in one small task. Practise date basics in a live spreadsheet, then practise dates in criteria: you type each formula and ExcelReady checks it instantly. Start with Luis's next birthday in the exercise on this page.

Try it yourself

This is a live spreadsheet. Type the formula in the green cell and press Enter.

The report date is in E1 (2 November 2026). Luis's birthday has already passed this year. Click C3 and calculate the days until his next birthday with DATE, YEAR, MONTH and DAY.

fx
ABCDEF
1
Name
Birth date
Days until
Report date
46328
2
Amara
34658
3
Luis
32209
4
Noor
36585
5
Kenji
33544
6
Sofia
31386
7
8
9

Tip: This year's birthday is DATE(YEAR(E1),MONTH(B3),DAY(B3)). Add (that date<E1) to the year so it moves to next year if it has passed, then subtract E1.

Practise this in a lesson

LessonHow Excel stores dates: DATE, YEAR, MONTH, DAYLearn why every date is secretly a number, then build dates with DATE and take them apart with YEAR, MONTH and DAY.LessonDays between dates: DAYS, DATEDIF and TODAYMeasure the gap between two dates in days, months and years, and calculate tenure as of today.LessonDates in criteria: totals by date range and monthCount and total rows between two dates with COUNTIFS and SUMIFS, build a monthly summary, and drive the date range from input cells.Function guideTODAYUse Excel's TODAY function for days until a deadline, overdue flags and ages that update by themselves. Examples, pitfalls and live practice.Function guideDATEDIFCalculate tenure, age and contract length with DATEDIF. Learn every unit (Y, M, D, YM), the hidden-function quirks, and practice live.Function guideFILTERReturn every row that matches a condition with Excel's FILTER. Multiple criteria, empty results and #SPILL! explained, with live practice.

Frequently asked questions

How do I find upcoming birthdays in Excel?

+

Build each person's next birthday from today's year and their birth month and day, adding a year if it has passed. Subtract today's date to get the days until it, then filter or flag the rows with 30 days or fewer.

How do I calculate days until a birthday in Excel?

+

With today's date in E1 and the birth date in B2, use =DATE(YEAR(E1)+(DATE(YEAR(E1),MONTH(B2),DAY(B2))<E1),MONTH(B2),DAY(B2))-E1. It returns 0 on the birthday itself.

How do I show birthdays this month in Excel?

+

Compare the birth month with the current month: =MONTH(B2)=MONTH(TODAY()) returns TRUE for birthdays this month. Use it in FILTER or in a conditional formatting rule.

Why can't I just subtract the birth date from today?

+

A birth date includes the year of birth, so subtracting gives the person's age in days, not the days until their birthday. You need this year's or next year's date for the same month and day.

How does Excel handle 29 February birthdays?

+

DATE(2027,2,29) rolls over to 1 March 2027, because 2027 has no 29 February. So the formula shows 1 March in years that aren't leap years. If your organisation uses 28 February instead, add a rule for it.

Sources

  • DATE function - Microsoft Support
  • TODAY function - Microsoft Support
  • FILTER function - Microsoft Support

Written and checked by the ExcelReady Team. First published November 2, 2026. The practice exercise runs in the same formula engine as our lessons. Found a mistake? Read our editorial policy or email hello@excelready.app.

On this page

  1. Why you can't just compare the birth date with today
  2. The next birthday formula
  3. How many days until each birthday?
  4. How to flag birthdays in the next 30 days
  5. How to list upcoming birthdays with FILTER
  6. Birthdays this month and the age they will turn
  7. Common mistakes and edge cases
  8. Practise it

Keep reading

Dates· 6 min read

Calculate Age or Years of Service in Excel

To calculate age in Excel, use =DATEDIF(B2,TODAY(),"Y"), where B2 is the birth date. It counts complete years, so the age only goes up on the birthday. Years of service work the same way with the hire date. For a report that must not change, replace TODAY() with a fixed "as of" date cell.

Dates· 5 min read

TODAY Function in Excel: Always-Current Dates

The TODAY function in Excel returns the current date. Type =TODAY() with empty brackets and no arguments. It updates every time the workbook recalculates, so formulas like =C2-TODAY() always show the days left until a date. For a date that never changes, press Ctrl+; on Windows or Control+; on Mac to type today's date as a fixed value.

Dates· 6 min read

Days Until a Deadline in Excel (Countdowns)

To count the days until a date in Excel, subtract today from it: =A2-TODAY(). The result updates every day and turns negative once the date has passed. Wrap it in IF to show "Overdue" or "Due today", and use =NETWORKDAYS(TODAY(),A2) to count only the working days left.

More on dates

  • How to Calculate the Week Ending Date in Excel
  • How to Get the Week Number From a Date in Excel
  • WEEKDAY in Excel: Find Weekends and Day Names
  • Calculate Working Hours Between Two Dates in Excel
  • YEAR, MONTH and DAY in Excel: Split a Date Into Parts
  • Year-to-Date Totals in Excel
All dates articles →

Don't just read about Excel. Do it.

Practise real formulas in a live spreadsheet with instant feedback, right in your browser. Nothing to download.

Start learning for free