I encountered an interesting requirement while working with a client a few days ago. They wanted an automated birthday reminder system in Power Automate. The goal was simple:
- Send a birthday wish to the employee via Outlook email and a Teams message.
- Notify their manager about the employee’s birthday on the same day.
- Send a reminder to the manager three days in advance.

After receiving this requirement, I explored different ways to implement it. I found two approaches to getting employees’ birth dates:
- Using Office 365 Azure Active Directory (AAD): This method pulls birth dates directly from AAD, making it ideal for organizations that maintain employee profiles in Microsoft Entra ID (formerly Azure AD).
- Using a SharePoint list: Here, employee details, including birth dates, are stored in a SharePoint list, allowing flexibility for companies that don’t have birth date data in AAD.
Both methods achieve the same goal of sending birthday wishes to employees via Outlook and Teams while notifying their managers on the same day and three days in advance.
In this tutorial, I will show you how to send birthday reminders in Power Automate.
Send Birthday Wishes Using Power Automate
As mentioned earlier, I will show you two ways to check birthdays. The first method uses Office 365, but if the birthday date is unavailable in Office 365, you can use the second method. Alternatively, you can download our solution, which includes both methods in a single Solution.
Send Birthday Reminder From Office 365 Users Connector in Power Automate
I created a scheduled flow in Power Automate that runs daily at 10 AM to automate birth wishes. This flow checks all employee birthday dates in Office 365 and sends wish emails and Microsoft Teams if the date matches today’s date.

Then, use the Search for users (V2) action to retrieve all users from Office 365. Enable pagination and set the value according to your organization’s requirements. In my client’s case, since their organization has fewer than 1,000 users, I set the limit to 1,000.

In the above steps, I get all users, but I can’t get their birthday dates, so I use the Get user profile (V2) action from Office 365 Users Connector to get that.
Then, I added the condition action to check if today’s date is equal to the birthday using the expression below:
Left Side:
formatDateTime(outputs('Get_user_profile_(V2)')?['body/birthday'],'dd-MM')
Right Side:
formatDateTime(utcNow(),'dd-MM')

Then, I used the Send an email (V2) action to send an email and Post card in a chat or channel action.
I used the below code for Adaptive Card in Post card in a chat or channel action:
{
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"type": "AdaptiveCard",
"version": "1.4",
"body": [
{
"type": "Image",
"url": "@{variables('varBirthDayImage')}",
"size": "Large",
"horizontalAlignment": "Center"
},
{
"type": "TextBlock",
"text": "🎉 Happy Birthday, @{outputs('Get_user_profile_(V2)')?['body/displayName']}! 🎂",
"weight": "Bolder",
"size": "ExtraLarge",
"color": "Accent",
"horizontalAlignment": "Center"
},
{
"type": "TextBlock",
"text": "Wishing you a day filled with joy, laughter, and success. May this year bring you more achievements and happiness! 🎈🎁",
"wrap": true,
"horizontalAlignment": "Center"
},
{
"type": "TextBlock",
"text": "Enjoy your special day! 🎊",
"weight": "Bolder",
"horizontalAlignment": "Center"
}
]
}

In the down, I provide the out of this Flow.
Send Birthday Reminder From SharePoint List in Power Automate
I created one SharePoint list to implement this solution, and all were set up using a PowerShell script.
Employee Birthday:
| Column Name | Data Types |
|---|---|
| Employee Name | Person or Group |
| Date Of Birth | Date and time |

Create a SharePoint list Using the PowerShell Script:
I used a PowerShell script to simplify creating the required SharePoint list. This script automates the setup, ensuring the list has the correct names and configurations.

Once you run the PowerShell script, the list will be successfully created on your SharePoint site. We are ready to move on to the next step: making the flow in Power Automate.
Create Send Birthday Reminder From SharePoint List in Power Automate
I created a scheduled flow in Power Automate that runs daily at 10 AM to automate birth wishes. This flow checks all employee birthday dates in the SharePoint list. If the date matches today, it will send wish emails and Microsoft Teams.
Then, I use the Get Items action to retrieve the birthday date from the SharePoint list. I used the Filter array action to get the task. For example, if the birth date is today, I used the below parameters in the Filter array:
- From:
@{outputs('Get_items_|_Employee_Birthday')?['body/value']}
- Filter Query:
@{formatDateTime(item()?['DateOfBirth'],'dd-MM')} is equal to @{formatDateTime(utcNow(),'dd-MM')}

After that, I used Apply to each action and provided the body of the filter array action.

Then, I used the Send an email (V2) action to send an email and postcard in a chat or channel action. I tell you the same thing I told you above.
Run the flow to Send Birthday Reminder in Power Automate
Once the Power Automate flow is set up, I added one employee’s birthday as two and one employee’s birthday after 3 days.
When I ran the flow, the person and their manager received the below notification:
| An employee received an Email | ![]() |
| An employee received a message | ![]() |
| The Manager received an Email | ![]() |
| The Manager received an Email | ![]() |
Conclusion
In this tutorial, I showed how to set up an automated birthday reminder using Office 365 and a SharePoint list in Power Automate. The flow runs daily at 10 AM to check if it’s an employee’s birthday. If it is, they receive a birthday wish via email and Teams, and their manager gets a notification. The manager also gets a reminder three days before the birthday.
In the Office 365 method, I used actions to find and check birthdays. I stored birthdays in a list in the SharePoint method and filtered them to find matches. Both methods send emails and Teams messages to employees and managers.
Also, you may like some more Power Automate tutorials:
- Power Automate Multilevel Approvals
- Update User Profile Data in Office 365 Using Power Automate
- Expense Reimbursement and Approval using Power Automate
- Create a PDF From SharePoint List Items Using Power Automate
- Send Email Reminders From a SharePoint List Using Power Automate
- Create Multiple Sites in SharePoint Online using Power Automate from Excel
- Create SharePoint Online List and Columns from Excel Using Power Automate

Hey! I’m Bijay Kumar, founder of SPGuides.com and a Microsoft Business Applications MVP (Power Automate, Power Apps). I launched this site in 2020 because I truly enjoy working with SharePoint, Power Platform, and SharePoint Framework (SPFx), and wanted to share that passion through step-by-step tutorials, guides, and training videos. My mission is to help you learn these technologies so you can utilize SharePoint, enhance productivity, and potentially build business solutions along the way.



