What Are Expressions in Power Automate?
A Beginner-Friendly Guide
You're watching a Power Automate tutorial and suddenly the instructor says "we'll use an expression here" — and you freeze. What even is an expression? How is it different from a function? What about parameters and syntax? This guide explains everything in plain, jargon-free English.
Two Ways to Add Values in Power Automate
When building a flow in Power Automate, there are two ways you can inject a value into an action:
The Four Key Concepts
Let's break down all the terminology you'll hear — explained through one single example:
1. Expression — the full statement
An expression is the complete formula that produces a result. Think of it as the whole sentence.
In the example above, the entire line — from formatDateTime all the way to the closing parenthesis — is one expression.
If a function is a verb, then an expression is the entire sentence that verb lives in. "Please format this date in US style" — that's an expression.
2. Function — the action
A function is a built-in operation that performs a specific task. It's always written as a name followed by parentheses.
In our example, formatDateTime() is the function — it tells Power Automate to format a date/time value.
Functions are like verbs: addDays(), utcNow(), length(), concat() — each one does exactly one job.
3. Parameters — the inputs
Parameters are the values you pass into a function so it can do its work. They go inside the parentheses, separated by commas, in a specific order.
For formatDateTime, the parameters are:
- Timestamp — the date/time value you want to format
- Format — the pattern, e.g.
'yyyy-MM-dd' - Locale — the regional language setting, e.g.
'en-US'
4. Syntax — the grammar rules
Syntax is the set of rules that define how a function must be written so Power Automate can understand it. Wrong syntax = Power Automate throws an error.
Nesting Functions Inside Expressions
Here's where things get powerful. You can use one function as the parameter of another function. This is called nesting, and it lets you do multiple operations in a single expression.
formatDateTime(addDays(utcNow(), 5), 'yyyy-MM-dd', 'en-US')
Here, addDays(utcNow(), 5) runs first — it calculates a date 5 days from now.
That result is then passed as the first parameter into formatDateTime(), which formats it into a readable string.
Power Automate always evaluates the innermost function first.
It's like Russian dolls — the smallest one (innermost function) resolves first, then the next layer uses that result, and so on outward.
Dynamic Content vs Expressions: When to Use Which?
Use Dynamic Content when you just need to pass along a value as-is — the sender's email address, the response from a form, the name of a file.
Use Expressions when you need to transform, calculate, combine, or conditionally adjust that value before using it.
Want to Learn More Power Automate?
Our specialists can build and explain Power Automate flows for your business — in plain English, step by step.
Get a Free Consultation