Power Automate utcNow() Function: Formats and Examples

The first time I used utcNow() in a flow, I stamped “Approved on” into a SharePoint list, and the approver in Chicago asked why her approval said 11:40 PM when she’d clicked at 6:40 in the evening. utcNow() had done exactly what its name says: it returned the time in UTC.

utcNow() is still the function I use most in Power Automate, for timestamps, file names, date filters and reminders. In this tutorial, I’ll show you how to format it, how to add and subtract time, and how to turn it into your local time. The examples use September 27, 2026, at 9:30:45 PM UTC.

Quick answer: utcNow() returns the current date and time in UTC, such as 2026-09-27T21:30:45.1234567Z. Pass a format to shape it, for example utcNow('MM/dd/yyyy') returns 09/27/2026. Use addDays(utcNow(), 1) for tomorrow and addHours(utcNow(), 2) to add hours. For local time, use convertFromUtc(utcNow(), 'Eastern Standard Time', 'MM/dd/yyyy hh:mm tt').

How utcNow() works

utcNow('<format>')

The format is optional. Without it, you get the full ISO 8601 timestamp, yyyy-MM-ddTHH:mm:ss.fffffffK, with seven digits of fractions of a second and a Z for UTC: 2026-09-27T21:30:45.1234567Z. That’s the format SharePoint, Excel and most APIs accept, so you often don’t need to format it at all.

Coordinated Universal Time doesn’t change with daylight saving time, which makes it a reliable base for calculations. It’s just not what people expect to read, so format and convert it when you show it to someone.

Add or subtract days

A common case: send a reminder for tasks due tomorrow. Create an instant cloud flow, add a Compose action, and enter:

addDays(utcNow(), 1)

Use a negative number to go back, such as addDays(utcNow(), -1) for yesterday. This screenshot shows the -1 version:

Compose action with the addDays utcNow expression

Other ways to do the same thing:

ExpressionReturns
addDays(utcNow(), 1, 'yyyy-MM-dd')2026-09-28
getFutureTime(1, 'Day', 'yyyy-MM-dd')2026-09-28
getPastTime(7, 'Day', 'yyyy-MM-dd')2026-09-20
subtractFromTime(utcNow(), 1, 'Month', 'yyyy-MM-dd')2026-08-27
startOfDay(utcNow())2026-09-27T00:00:00.0000000Z

For more date math, see how to add days to a date in Power Automate and the addToTime() function.

Format the date and time

Put a format string inside utcNow(), or in formatDateTime() when you’re formatting another date. I usually store the result in a String variable. Here’s utcNow('yyyy-MMMM-dd') in an Initialize variable action:

Initialize variable action with utcNow and a custom format string

These are the formats I reach for most:

FormatResult
utcNow('MM/dd/yyyy')09/27/2026
utcNow('M/d/yyyy')9/27/2026
utcNow('MMMM d, yyyy')September 27, 2026
utcNow('dddd, MMMM d, yyyy')Sunday, September 27, 2026
utcNow('MM/dd/yyyy hh:mm tt')09/27/2026 09:30 PM
utcNow('MM/dd/yyyy HH:mm')09/27/2026 21:30
utcNow('yyyy-MM-dd')2026-09-27
utcNow('yyyy-MM-ddTHH:mm:ssZ')2026-09-27T21:30:45Z
utcNow('yyyyMMdd-HHmm')20260927-2130 (good for file names)

Format codes

CodeMeaningExample
d / ddDay of the month, without or with a leading zero27 / 27
ddd / ddddShort or full day nameSun / Sunday
M / MMMonth number, without or with a leading zero9 / 09
MMM / MMMMShort or full month nameSep / September
yy / yyyyTwo- or four-digit year26 / 2026
h / hhHour, 12-hour clock9 / 09
H / HHHour, 24-hour clock21 / 21
mmMinutes30
ssSeconds45
ttAM or PMPM
KTime zone (Z for UTC)Z
zzzOffset from UTC+00:00

Three gotchas. First, MM is the month and mm is minutes. Second, a single letter on its own is a built-in pattern, not a code: utcNow('d') returns 9/27/2026 and utcNow('M') returns September 27. Put a % in front for just the number: utcNow('%d') returns 27. Third, a Z typed in the format is copied as a letter; K is the code that outputs the time zone.

Add hours or minutes

Use addHours() or addMinutes() the same way:

addHours(utcNow(), 2)
Compose action with the addHours utcNow expression

The result is still UTC. Don’t add or subtract a fixed number of hours to get local time: Eastern time is four hours behind UTC in the summer and five in the winter, so a fixed offset is wrong for half the year.

Convert utcNow() to your time zone

Use convertFromUtc() with a Windows time zone name. It handles daylight saving time, and it takes a format too:

convertFromUtc(utcNow(), 'Eastern Standard Time', 'MM/dd/yyyy hh:mm tt')

At 9:30 PM UTC on September 27, 2026, that returns 09/27/2026 05:30 PM, because New York is on daylight saving time (UTC-4). Use ‘Central Standard Time’, ‘Mountain Standard Time’, ‘Pacific Standard Time’, ‘Alaskan Standard Time’ or ‘Hawaiian Standard Time’ for other US zones; the names stay the same all year. The Convert time zone action under Date Time does the same without an expression.

Emails from Power Automate show UTC unless you convert the time first, so do this for any date you put in a message. For more, see how to convert UTC to local time in Power Automate.

Where utcNow() is useful

  • Timestamps in SharePoint or Excel columns, such as “Approved on”. Store UTC and let SharePoint show it in the site’s time zone.
  • File names, such as concat('Report-', utcNow('yyyy-MM-dd'), '.xlsx').
  • Filters in Get items, such as Created ge '@{addDays(utcNow(), -7)}'. See Get items filter query by date.
  • Conditions, such as checking whether a due date is before utcNow().

These Power Automate date and time tutorials go further:

Frequently Asked Questions

What does utcNow() return in Power Automate?

The current date and time in UTC, in ISO 8601 format, such as 2026-09-27T21:30:45.1234567Z. Microsoft documents it in the expression functions reference.

How do I format utcNow() as MM/dd/yyyy?

Use utcNow(‘MM/dd/yyyy’). For the month name, use utcNow(‘MMMM d, yyyy’).

How do I get the current time in Eastern time?

Use convertFromUtc(utcNow(), ‘Eastern Standard Time’), with an optional format such as ‘MM/dd/yyyy hh:mm tt’.

How do I get tomorrow’s date in Power Automate?

Use addDays(utcNow(), 1), or addDays(utcNow(), 1, ‘yyyy-MM-dd’) for the date only.

Why is utcNow() hours off from my time?

It’s UTC. Convert it with convertFromUtc and your time zone instead of adding a fixed number of hours.