Flow exceeded execution limit – Exceeded the maximum number of flow runs allowed for a given period.

Loading

Power Automate enforces execution limits based on the plan type and flow usage. If a flow exceeds the maximum number of runs allowed within a given period, it stops running and triggers an execution limit error.

This guide provides a step-by-step explanation of the issue, its causes, and solutions to prevent the error.


Step 1: Understanding Execution Limits in Power Automate

1.1. Execution Limits Based on Plan Type

Microsoft Power Automate applies limits based on the type of license:

Plan TypeDaily Flow Runs LimitConcurrency Limit
Free Plan750 flow runs/dayLow
Microsoft 365 (Standard)2,000 flow runs/dayModerate
Per-User PlanUnlimited, but with API limitsHigh
Per-Flow PlanUnlimited, but with API limitsHigh
Power Automate Process PlanHigher limitsVery High

Once a flow reaches its daily limit, it stops running until the next period (24 hours reset).

1.2. Common Causes of Execution Limit Errors

  • Too many triggers – The flow is triggered frequently, exceeding the allowed executions.
  • Inefficient looping – Using Apply to Each on large datasets.
  • Multiple users triggering the flow – If many users trigger the flow, it reaches limits quickly.
  • Recurrence flows running too often – Scheduling a flow to run every few minutes.
  • Bulk data processing – Processing thousands of SharePoint or Dataverse records in a single run.

Step 2: Identifying the Issue

2.1. Check Flow Run History

  1. Open Power Automate (https://make.powerautomate.com).
  2. Click on My Flows → Select the affected flow.
  3. Go to Run History.
  4. Look for the error message “Flow execution limit exceeded.”

2.2. Analyze Flow Usage in Power Platform Admin Center

  1. Go to Power Platform Admin Center (https://admin.powerplatform.microsoft.com).
  2. Click on AnalyticsPower Automate.
  3. Review Run Volume and Execution Trends to check if flows are consuming excessive runs.

Step 3: Resolving the Issue

3.1. Reduce Flow Triggers

If a flow triggers too frequently, limit unnecessary executions:

  • Modify Trigger Conditions – Use a condition to trigger only when necessary.
  • Use Delay Actions – Add delays between triggers to prevent excessive runs.
  • Change Recurrence Interval – If using a Scheduled Flow, increase the interval (e.g., run every hour instead of every minute).

Example: Apply a Trigger Condition

Modify a trigger to activate only when a specific value changes:

  1. Open the trigger action (e.g., SharePoint trigger).
  2. Click on SettingsTrigger Conditions.
  3. Add a condition like: plaintextCopyEdit@equals(triggerBody()?['Status'], 'Approved')
  4. This ensures the flow only runs when Status = Approved.

3.2. Optimize Loops and Reduce Data Processing

If the flow contains large loops:

  • Use Filters Before Loops – Retrieve only relevant data before processing.
  • Enable Parallelism – Speed up loop execution to avoid excessive runs.
  • Use Pagination – Limit data fetching to reduce execution count.

Enable Parallelism in Apply to Each

  1. Open the Apply to Each loop.
  2. Click Settings → Enable Concurrency Control.
  3. Increase the degree of parallelism (e.g., 20).

3.3. Limit the Number of Users Who Can Trigger the Flow

If multiple users trigger the flow:

  • Restrict flow access to specific users or groups.
  • Use a service account to control execution.
  • If using “Manually Triggered Flow”, require admin approval before execution.

3.4. Batch Processing Instead of Single Runs

If processing large datasets:

  • Use Batching instead of processing one record at a time.
  • Store pending tasks in a queue and process them gradually.

Example: Use Power Automate’s Chunking for SharePoint

  1. Open the Get Items action.
  2. Click Settings → Enable Pagination.
  3. Set a Page Limit (e.g., 5000).

3.5. Upgrade to a Higher Power Automate Plan

If the flow consistently exceeds daily limits, upgrading to a Per-Flow or Per-User Plan provides higher execution limits.

  1. Open Microsoft 365 Admin Center (https://admin.microsoft.com).
  2. Navigate to BillingPurchase Services.
  3. Choose Power Automate Per-User Plan or Per-Flow Plan.
  4. Assign the new plan to the user or flow.

Step 4: Advanced Troubleshooting

4.1. Split a Single Flow into Multiple Flows

Instead of one large flow, break it into smaller flows using:

  • Child Flows – Move intensive processing to a separate flow.
  • Power Automate RPA (Robotic Process Automation) – If UI interaction is required.

4.2. Use Azure Logic Apps for Higher Execution Limits

If your automation requires more execution time, consider Azure Logic Apps, which support higher run limits and advanced scaling.


Step 5: Preventing Future Execution Limit Issues

5.1. Best Practices for Flow Optimization

Reduce trigger frequency – Set longer intervals for scheduled flows.
Use conditions to avoid unnecessary runs – Prevent flows from triggering on every change.
Optimize loops and data processing – Reduce execution counts.
Monitor flow usage in the Power Platform Admin Center – Track trends and identify overuse.
Use batching and chunking for large datasets – Avoid single-record processing.

5.2. Set Up Flow Usage Alerts

  • Go to Power Platform Admin Center.
  • Set up alerts for high flow usage to detect issues before hitting limits.

Leave a Reply

Your email address will not be published. Required fields are marked *