Skip to main content

SF-0132 · Scenario · Medium

Can we have multiple if and else like conditions in process builder?

✓ Verified by Vikas Singhal · Last reviewed 5/17/2026 · Updated for Spring '26

Yes — Process Builder supports multiple if/else-style branches via stacked criteria nodes. They evaluate top-to-bottom, and a per-criteria setting controls whether evaluation continues to the next criterion after a match (if/elif/else) or stops (mutually exclusive if).

How the branching works

A Process Builder process has:

  1. A trigger (record changes / platform event / invocable)
  2. One or more criteria nodes stacked vertically on the canvas
  3. Immediate actions and scheduled actions attached to each criteria

When the process fires, the platform evaluates criteria from the top:

If criteria 1 matches -> run criteria 1's actions
    Then: STOP or EVALUATE NEXT criteria (configurable)
Else if criteria 2 matches -> run criteria 2's actions
    Then: STOP or EVALUATE NEXT
Else if criteria 3 matches -> ...

The Stop / Evaluate Next setting

After actions execute for a matched criteria, you choose:

OptionBehaviour
StopThe process ends; later criteria don’t get checked
Evaluate the next criteriaThe process continues evaluating the next criterion down

This is what gives you flexible logic:

  • All branches mutually exclusive (classic if/elif/else): always Stop
  • Multiple branches can apply (parallel): always Evaluate Next
  • Mixed: Stop on some, Evaluate Next on others

An example

Criteria 1: Stage = "Closed Won" → email customer, set Renewal_Due__c, then Stop Criteria 2: Stage = "Closed Lost" → email manager, set Lost_Reason__c, then Stop Criteria 3: Amount > 50000 → notify VP, then Stop

A record being saved as Closed Won at $60k would hit criteria 1, run its actions, stop. Criteria 3 wouldn’t run because criteria 1 stopped the process.

If you wanted both to apply, criteria 1 would say Evaluate the next criteria.

The “default” branch trick

There’s no explicit Else in Process Builder. The workaround:

  1. Multiple specific criteria first
  2. A final criterion with 1=1 (always TRUE) at the bottom
  3. Earlier criteria use Stop; the catch-all only fires if none of the earlier ones matched

How this maps to Flow

In Flow, the equivalent is a Decision element with multiple outcomes. Flow’s Decision has a Default outcome built in, which is cleaner than the Process Builder 1=1 trick.

[Decision: Stage Routing]
  When Stage Equals "Closed Won": -> Closed Won path
  When Stage Equals "Closed Lost": -> Closed Lost path
  Default: -> Other handling

What interviewers want

  • A confident “yes” with the criteria-node stack mental model
  • The Stop / Evaluate Next behaviour
  • Bonus: the 1=1 catch-all trick for default branches

Verified against: Salesforce Help — Process Builder Criteria. Last reviewed 2026-05-17 for Spring ‘26 release.