How to Add Days or Minutes to a Date in Power Apps with DateAdd
DateAdd adds an amount of time to a date or a date and time: a day, a few hours, 450 minutes. Give it a negative number to go back instead. It's how a timesheet moves a finish time onto the next day.
The example is the Overtime Timesheet app, which adds a day to a night shift's date for its finish time.
Syntax
DateAdd(DateTime, Addition [, Units])
| Argument | Meaning |
|---|---|
| DateTime | The date or date and time to start from |
| Addition | How many units to add; negative to subtract |
| Units | TimeUnit.Milliseconds, Seconds, Minutes, Hours, Days, Months, Quarters or Years. Leave it out and it's Days |
From Microsoft's DateAdd, DateDiff, and TimeZoneOffset functions.
Example 1: Add a Day
I put each formula into a text control's Text for a moment, so Studio's preview strip shows the result:
DateAdd(Date(2026, 11, 6), 1, TimeUnit.Days)
The day after 6 November is 7 November, still at midnight, and still a Date:

Example 2: Add Minutes
Text(DateAdd(DateTime(2026, 11, 6, 22, 0, 0), 450, TimeUnit.Minutes), "dd/mm/yyyy hh:mm")
Seven and a half hours after 22:00 on 6 November is 05:30 the next morning:

How the Example Uses It
A night shift from 22:00 to 06:00 finishes the day after it starts. The app's ShiftEnd function moves the date on by one day when the finish time is earlier than the start, then puts the finish time on that date:
ShiftEnd(ShiftDate: Date, StartAt: Time, EndAt: Time): DateTime =
With(
{EndDate: If(EndAt < StartAt, DateAdd(ShiftDate, 1, TimeUnit.Days), ShiftDate)},
DateTime(Year(EndDate), Month(EndDate), Day(EndDate), Hour(EndAt), Minute(EndAt), 0)
);
DateAdd only decides the day here; DateTime sets the clock time on it (How to Calculate Hours for an Overnight Shift in Power Apps).
Common Mistakes
| Mistake | What happens | Do this instead |
|---|---|---|
| Leaving out the units for hours or minutes | DateAdd adds days | Always pass the TimeUnit |
Adding numbers to dates with + | Microsoft warns of confusing results with time zones | Use DateAdd |
| Adding to a blank date | A result from a date nobody chose | Check IsBlank first |
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| The date moved by days instead of minutes | No Units argument | Add TimeUnit.Minutes |
| The result shows a date when you expected a time | The text control shows the whole value | Format it with Text and "hh:mm" |
FAQ
How do I subtract?
Pass a negative number: DateAdd(Today(), -7, TimeUnit.Days) is a week ago.
Can DateAdd convert between local time and UTC?
Yes, together with TimeZoneOffset: How to Convert Local Time to UTC in Power Apps with TimeZoneOffset.
Conclusion
DateAdd(value, amount, TimeUnit.Unit) adds days, hours, minutes or any other unit, and subtracts with a negative amount. Always pass the unit.
Additional Resources
- DateAdd, DateDiff, and TimeZoneOffset functions: units, examples and UTC conversion.
