MetaLens360Help Center

Check Flows for performance problems with Flow Health

Analyze every Flow from the last sync for risky patterns such as DML or SOQL in loops, missing entry criteria and after-save work that should be before-save, ranked by severity.

Updated in Code & performance analysis

Overview

Flow Health Analysis reviews the Flow definitions in your org against a set of performance and design rules, and tells you which Flows to fix first. It analyzes all Flow XML files from the last sync — no Salesforce API call is needed, so it is fast and safe to run on production orgs.

The rules it checks:

RuleSeverityWhat it means
DML in LoopCriticalA create, update or delete inside a loop — one DML per record
SOQL in LoopCriticalA Get Records inside a loop — one query per record
Get All FieldsHighA Get Records that stores all fields instead of the ones it needs
No Entry CriteriaHighA record-triggered Flow that runs on every save
Before Save CandidateHighAn after-save Flow that only updates the triggering record, which a before-save Flow does far more cheaply
Action in LoopHighAn action called once per loop iteration
Apex in After SaveHighApex invoked from an after-save Flow
Multiple UpdatesMediumSeveral update elements that could be combined
Subflow in After SaveMediumA subflow called from an after-save Flow

Before you start

  • Sync the org first. The analysis reads Flow metadata from the last sync, so Flows changed since then are not reflected.

Steps

  1. Open Flow Health under Process & Flow.
  2. Pick the org.
  3. Click Run Analysis.
  4. Read the summary cards: Total Flows, Critical Issues, High Issues, Medium Issues, Low Issues and Clean Flows.
  5. Click a rule chip, such as DML in Loop, to show only Flows with that issue. Click ✕ Clear rule filter to remove it.
  6. Use the severity filter (All Flows, Critical, High, Medium, Clean) to focus the list.
  7. Expand a Flow to read each issue's description and the suggested fix.

Example

Priya, a release manager, runs Flow Health on acme-uat before a bulk data load. Two Flows show DML in Loop, including Update_Contact_Region, which updates each Contact inside a loop. She sends it back to the admin team, who collect the records in a collection variable and update them once after the loop. A re-sync and a fresh Run Analysis show the Flow under Clean.

FAQs

Does Flow Health change anything in Salesforce?

No. It only reads the metadata MetaLens360 already fetched.

Why is "Before Save Candidate" high severity?

Before-save Flows update the triggering record without an extra DML statement and run much faster. Using after-save for that work costs a DML and can re-fire automation.

How is this different from Code Analyzer?

Code Analyzer covers Apex, triggers and Flows with a tunable rule catalog and cross-component paths. Flow Health is a quick, Flow-only checklist.

Troubleshooting

Total Flows is 0

The org has not been synced, or Flow metadata was not included in the sync. Run a sync that includes Flows, then click Run Analysis again.

A Flow I fixed still shows the issue

The analysis uses the last sync. Sync the org, then run the analysis again.

A rule filter shows no Flows

That rule found nothing in this org. Click ✕ Clear rule filter to see all Flows again.

Was this article helpful?

Related articles