How to change text to upper or lower case in Power Automate
Use toUpper() for capital letters and toLower() for small letters. Pass the text in, such as toLower(triggerOutputs()?['body/Title']), and the function returns the new text.
Which functions change text case?
Power Automate has two case functions: toUpper() and toLower(). Microsoft documents both in the workflow expression reference. Each takes one text value and returns it in the new case.
There is no built-in proper case function. The next section shows a pattern you can build from other functions.
How do you add toUpper() or toLower() to a flow?
- Open the action that needs the changed text, such as Compose or Send an email.
- Select the field, then select the Expression tab.
- Type toLower(, then select the dynamic content tab and pick the value.
- Close the bracket and select Add.
- Run the flow and check the output in run history.
How do you make proper case, with a capital first letter?
Build it from three functions. Use toUpper() on the first character, toLower() on the rest, and concat() to join them.
For a value in a variable named Name, write concat(toUpper(substring(variables('Name'), 0, 1)), toLower(substring(variables('Name'), 1))). This capitalizes only the first letter of the whole text, not each word.
The substring() call fails on empty text. Check the length first. See how substring() works for the rules.
How do you compare text without matching case?
Change both sides to the same case before you compare. For example, test whether toLower(Status) equals approved.
Microsoft does not say whether text compares in a Condition ignore case, so do not rely on it. Lowercase both values and the test no longer depends on how a person typed the text. Test your own data and check the result in run history.
The same idea helps when a Switch always goes to Default. See the Switch action guide.
Why do you get an error when the text is empty or null?
- A blank column sends null. The toLower() function expects text, so the run can fail with an invalid type error.
- Wrap the value in coalesce(), for example toLower(coalesce(Title, '')). The empty text then passes through.
- A choice column returns an object. Use its Value field, not the whole column.
- See the invalid type error guide for more causes.
Does case change save back to the SharePoint item?
No. The function only returns new text inside the flow. To change the stored value, add an Update item action and place the expression in the column field.
To avoid a flow that triggers itself, read how to stop an infinite loop before you update the same list.
FAQ
What is the lowercase function in Power Automate?
toLower(). It takes one text value and returns it in small letters.
What is the uppercase function in Power Automate?
toUpper(). It takes one text value and returns it in capital letters.
Is there a proper case function?
No. Join toUpper() on the first letter with toLower() on the rest, using concat() and substring().
Why does toLower() fail on an empty column?
A blank column sends null, and the function expects text. Wrap the value in coalesce() with an empty text fallback.