If you’ve spent any time building apps in Power Apps, you’ve probably run into a situation where you need to work with dates — calculate a due date, find records from the last 30 days, auto-fill an expiry date, or convert UTC time to local time.
That’s exactly where the DateAdd function comes in. It’s simple, flexible, and once you understand how it works, you’ll use it in almost every app you build.
In this guide, I’ll walk you through everything — the syntax, every supported unit, practical examples you can use right away, common mistakes to avoid, and how to combine DateAdd with other functions to solve real problems.
Power Apps DateAdd Function
DateAdd is a built-in Power Apps function that adds or subtracts a specific amount of time from a date or date-time value. You give it a starting date, a number, and a unit (like days, months, or hours), and it returns a new date shifted by that amount.
It’s like telling Power Apps: “Take this date, move it forward 30 days, and give me that new date.”
You’ll use it for things like:
- Auto-calculating due dates in forms
- Filtering galleries to show records from the last X days
- Setting expiry or renewal dates
- Converting UTC timestamps to local time
- Building date-based conditional logic
Power Apps DateAdd Syntax and Parameters
DateAdd( DateTime, Addition [, Units] )
Here’s what each parameter means:
- DateTime — Your starting date or date-time value. This can be
Today(),Now(), a date picker value, a SharePoint date column, or a variable. This is required. - Addition — How much to add. This is a number. Pass a positive number to go forward in time, a negative number to go backward. Required.
- Units — The unit of time you’re working with. This is optional. If you leave it out, Power Apps defaults to Days.
All TimeUnit Values You Can Use in Power Apps DateAdd()
Power Apps supports eight units in the DateAdd function. Here’s all of them:
| TimeUnit Value | What It Means |
|---|---|
TimeUnit.Milliseconds | Milliseconds |
TimeUnit.Seconds | Seconds |
TimeUnit.Minutes | Minutes |
TimeUnit.Hours | Hours |
TimeUnit.Days | Days (default if omitted) |
TimeUnit.Months | Calendar months |
TimeUnit.Quarters | Three-month periods |
TimeUnit.Years | Full calendar years |
A small but important note: when you use TimeUnit.Months or TimeUnit.Years, Power Apps handles the calendar math for you. So adding 1 month to January 31 gives you February 28 (or 29 in a leap year) — Power Apps won’t overflow into March.
How to Add Days to a Date in Power Apps
The most common use case in Power Apps is adding days. The syntax is straightforward:
DateAdd(Today(), 10, TimeUnit.Days)

You can also skip the unit entirely since Days is the default:
DateAdd(Today(), 10)
I’d still recommend explicitly including the unit. It makes your formula easier to read, especially when someone else (or future you) looks at it months later.
How to Add Months, Quarters, and Years Using Power Apps DateAdd()
Let’s see some examples:
Adding Months
DateAdd(Today(), 3, TimeUnit.Months)

This is perfect for quarterly billing cycles, trial period ends, or anything measured in months.
Adding Quarters
DateAdd(Today(), 2, TimeUnit.Quarters)

Two quarters = six months. You could achieve the same with 6, TimeUnit.Months, but Quarters is cleaner when your logic is explicitly quarter-based.
Adding Years
DateAdd(Today(), 1, TimeUnit.Years)
Useful for annual renewals, subscription expiry dates, or year-over-year comparisons.
Add Hours, Minutes, and Seconds Using Power Apps DateAdd()
When you’re working with time (not just dates), use Now() instead of Today() as your starting point. Now() returns the current date and time. Today() returns only the date at midnight.
Adding Hours
DateAdd(Now(), 4, TimeUnit.Hours)

Adding Minutes
DateAdd(Now(), 30, TimeUnit.Minutes)

Adding Seconds
DateAdd(Now(), 90, TimeUnit.Seconds)
Subtract Dates in Power Apps Using DateAdd
There’s no separate “DateSubtract” function in Power Apps. You subtract dates by simply passing a negative number as the Addition parameter.
Subtract Days
DateAdd(Today(), -7, TimeUnit.Days)

Subtract Months
DateAdd(Today(), -3, TimeUnit.Months)

Subtract Years
DateAdd(Today(), -2, TimeUnit.Years)

Subtract Hours from Now
DateAdd(Now(), -2, TimeUnit.Hours)
This pattern — using negative numbers to go back in time — is one of the most frequently used patterns in real apps, especially for filtering galleries to show recent records.
Power Apps DateAdd with Real-World Examples
Now let me show you the practical scenarios where you’ll actually use this in your apps.
Example 1: Auto-Fill a Due Date in a Power Apps Form
You have a form where users log tasks. You want the Due Date field to automatically default to 14 days from today, but users can still change it.
Set the DefaultDate property of your Date Picker control to:
DateAdd(Today(), 14, TimeUnit.Days)

That’s it. The field pre-fills 14 days out when the form opens, and the user can override it if needed.
Example 2: Power Apps Calculate a Contract or Subscription Expiry Date
A contract is signed on a specific date and lasts 1 year. Auto-calculate the expiry date from the signed date:
DateAdd(DatePicker_ContractStart.SelectedDate, 1, TimeUnit.Years)

You can display this in a label next to the form so users immediately see the expiry date as they fill in the start date.
Example 3: Filter a Power Apps Gallery to Show Last 30 Days
This is one of the most practical DateAdd formulas you’ll write. Say you have a SharePoint list and you want to show only records created in the last 30 days:
Filter(
YourSharePointList,
Created >= DateAdd(Today(), -30, TimeUnit.Days)
)
Replace YourSharePointList with your actual data source name and Created with your date column. For Dataverse, this works the same way.
Example 4: Show Records Due in the Next 7 Days in Power Apps
Want a “this week’s tasks” view in your Power Apps Data Table? Use DateAdd on both ends of a date range:
Filter(
Tasks,
DueDate >= Today() && DueDate <= DateAdd(Today(), 7, TimeUnit.Days)
)

This shows only items where the due date falls between today and 7 days from now.
Example 5: Build a Power Apps Date Range Picker with DateAdd
If you want to let users select a start date and automatically set the end date as 30 days later:
DateAdd(DatePicker_StartDate.SelectedDate, 30, TimeUnit.Days)
As the user picks a start date, the end date updates automatically.
Example 6: Highlight Overdue Items with Conditional Formatting in Power Apps
Use DateAdd with conditional formatting to turn overdue records red in a Power Apps Gallery. In the TemplateFill property of a label or container:
If(
ThisItem.'Due Date' < Today(),
RGBA(255, 0, 0, 0.1),
RGBA(0, 0, 0, 0)
)

And if you want to highlight items due within the next 3 days in yellow:
If(
DueDate < Today(),
RGBA(255, 0, 0, 0.1),
DueDate <= DateAdd(Today(), 3, TimeUnit.Days),
RGBA(255, 255, 0, 0.2),
RGBA(0, 0, 0, 0)
)
Example 7: Add Multiple Time Units — Nesting Power Apps DateAdd
DateAdd only accepts one unit per call. But what if you need to add both 2 months and 15 days? Just nest two DateAdd calls:
DateAdd(DateAdd(Today(), 2, TimeUnit.Months), 15, TimeUnit.Days)

The inner call adds 2 months first. Then the outer call adds 15 days to that result. Clean and readable.
Example 8: Convert UTC to Local Time Using DateAdd and TimeZoneOffset
SharePoint stores all date-time values in UTC. If your app displays a timestamp from a SharePoint list and it looks off by a few hours, this is why.
Here’s how to convert UTC to the user’s local time:
DateAdd(UTCDateTimeColumn, -TimeZoneOffset(), TimeUnit.Minutes)
TimeZoneOffset() returns the difference in minutes between UTC and the local time on the user’s device. The negative sign flips it from UTC to local.
And if you need to go the other way — convert local to UTC before saving to SharePoint:
DateAdd(Now(), TimeZoneOffset(), TimeUnit.Minutes)

This is one of the most practical (and most searched) Power Apps date questions, so it’s worth understanding well.
Example 9: Power Apps DateAdd with a Date Variable
You can use DateAdd on any date value, not just Today() or Now(). Here’s how to use it with a variable:
// First, set a date variable
Set(varProjectStart, DateValue("2026-01-15"));
// Then use DateAdd on that variable
DateAdd(varProjectStart, 90, TimeUnit.Days)
// Result: April 15, 2026
This is useful when you’re calculating dates based on values the user already entered earlier in the app.
Example 10: Use DateAdd with Power Apps Text() to Format the Output
DateAdd returns a date/time value. If you want to display it nicely in a label, wrap it in the Text() function:
Text(DateAdd(Today(), 30, TimeUnit.Days), "dd/mm/yyyy")

Or in a more readable format:
Text(DateAdd(Today(), 30, TimeUnit.Days), "mmmm dd, yyyy")
Power Apps DateAdd vs DateDiff — What’s the Difference?
People often confuse these two. Here’s the quick distinction:
- DateAdd — Takes a date and adds/subtracts time from it. Returns a new date.
- DateDiff — Takes two dates and measures the gap between them. Returns a number.
So:
- “What date is 30 days from today?” → Use DateAdd
- “How many days between date A and date B?” → Use DateDiff
Example of DateDiff for comparison:
DateDiff(Today(), DateValue("2026-12-31"), TimeUnit.Days)
You’ll often use them together. DateAdd to set a target date, DateDiff to calculate how far away it is.
Common Power Apps DateAdd Mistakes and How to Fix Them
1. Passing a text string instead of a date value
This will NOT work:
DateAdd("2026-03-22", 10, TimeUnit.Days) // Error!
You need to convert the string to a date first using DateValue():
DateAdd(DateValue("2026-03-22"), 10, TimeUnit.Days) // Works!
2. Forgetting that Today() returns midnight
Today() gives you the current date at 12:00 AM. If you’re working with time-sensitive logic and need the actual current time, use Now() instead.
3. Skipping the unit and getting unexpected results
If you’re adding months but forget the unit:
DateAdd(Today(), 3) // This adds 3 DAYS, not months
Always specify the unit to be safe and explicit.
4. Time zone issues with SharePoint data
If your filtered gallery is showing records off by a day, or timestamps look wrong, it’s almost always a UTC vs. local time issue. Use the TimeZoneOffset() conversion pattern I showed above.
5. Nesting more than two DateAdd calls
Nesting two DateAdd calls is fine. Beyond that, it gets hard to read and debug. Break it into variables instead:
Set(varStep1, DateAdd(Today(), 3, TimeUnit.Months));
Set(varStep2, DateAdd(varStep1, 15, TimeUnit.Days));
Set(varFinal, DateAdd(varStep2, 6, TimeUnit.Hours));
Much easier to follow.
Power Apps DateAdd Quick Reference Cheat Sheet
Bookmark this table for quick lookups:
| What You Want to Do | DateAdd Formula |
|---|---|
| Add 7 days to today | DateAdd(Today(), 7, TimeUnit.Days) |
| Add 1 month to today | DateAdd(Today(), 1, TimeUnit.Months) |
| Add 1 year to a date | DateAdd(YourDate, 1, TimeUnit.Years) |
| Subtract 30 days from today | DateAdd(Today(), -30, TimeUnit.Days) |
| Go back 3 months | DateAdd(Today(), -3, TimeUnit.Months) |
| Add 2 hours to now | DateAdd(Now(), 2, TimeUnit.Hours) |
| Add 45 minutes to now | DateAdd(Now(), 45, TimeUnit.Minutes) |
| UTC to local time | DateAdd(UTCDate, -TimeZoneOffset(), TimeUnit.Minutes) |
| Local to UTC | DateAdd(Now(), TimeZoneOffset(), TimeUnit.Minutes) |
| Add months + days together | DateAdd(DateAdd(Today(), 2, TimeUnit.Months), 10, TimeUnit.Days) |
| Format result as text | Text(DateAdd(Today(), 30, TimeUnit.Days), "mmmm dd, yyyy") |
Final Thoughts
I hope you found this article helpful. In this guide, I explained how to use the DateAdd function in Power Apps. I also shared simple examples to add or subtract dates. These examples make it easy to understand date calculations.
If you are building apps, you will use date logic often. DateAdd makes it easy to handle dates. Try the examples in your app and experiment with different values. With practice, it will become easy to use.
Also, you may like:
- Power Apps DateDiff() Function
- Update and UpdateIf in Power Apps
- Calculate Days Between Dates in Power Apps
- Show Repeating Table Data From SharePoint List in Power Apps

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.