Introduction

Are you tired of slow and complex Power Automate flows bogged down by endless loops? The “Filter array” action is your secret weapon! This powerful, yet often underutilized, feature allows you to quickly sift through data, extract exactly what you need, and streamline your automation—no code required. Whether you’re working with SharePoint lists, Excel tables, or any other data source, mastering “Filter array” can take your flows from basic to brilliant.

Why Use the “Filter Array” Action?

The Problem with “Apply to Each”

Many Power Automate beginners reach for the “Apply to each” loop to process collections. While functional, this approach can be inefficient, especially with large datasets. Every item is processed one by one, which can slow down your flow and even hit performance limits.

The “Filter Array” Advantage

How to Use the “Filter Array” Action

Let’s break down the syntax, setup, and practical examples—especially with SharePoint.

Basic Syntax

The “Filter array” action takes an array (collection) and a condition, returning only those items that match.

Example Structure

  { 
  "from": [your array], 
  "where": [your condition] 
}  

Modern Power Automate View

parameters1

Older Power Automate View

automate2

Step-by-Step: Filtering SharePoint List Items

Scenario: Filter SharePoint Tasks Assigned to “John Doe”

  1. Get Items : Use the “Get items” action to fetch tasks from a SharePoint list.

  2. Add “Filter array” :
    From : @body('Get_items')?['value']
    Condition : item()?['AssignedTo'] is equal to John Doe

  3. Use the Output : The filtered array now contains only tasks assigned to John Doe.

Power Automate Expression

  @equals(item()?['AssignedTo']?['DisplayName'], 'John Doe')

Example: Filter by Status and Due Date

Suppose you want all “In Progress” tasks due before today:

@and(
  equals(item()?['Status'], 'In Progress'),
  less(item()?['DueDate'], utcNow())
) 

Filtering Excel Rows

Advanced: Multiple Conditions

You can combine multiple conditions using and() or or() functions for even more precise filtering.

Real-World Use Cases

  1. SharePoint Approvals: Filter pending approval items for a specific manager.

Key Insights and Conclusion

The “Filter array” action is a game-changer for anyone building Power Automate flows. It’s faster, cleaner, and more scalable than traditional looping. By integrating it into your flows—especially when working with SharePoint, Excel, or other data sources—you can dramatically improve both performance and maintainability.

Pro Tip: Always try to filter data as early as possible in your flow to minimize unnecessary processing and speed up your automations.

Ready to elevate your Power Automate skills? Start using the “Filter array” action today and experience the difference!

Did you find this guide helpful? Share your favorite “Filter array” tips or questions in the comments below!