When you configure a workflow rule’s Rule Criteria, Salesforce gives you two ways to express the condition:
- Criteria are met — point-and-click filter logic across field-value comparisons
- Formula evaluates to true — a free-form formula expression
The split exists because filter logic covers ~80% of real cases and is faster to read, but you need formula for anything involving functions, cross-object math, or complex boolean logic.
Option 1 — Filter logic
You add rows like:
Stage EQUALS Closed Won
Amount GREATER THAN 10000
Then Salesforce combines them with AND by default. You can override with explicit filter logic like (1 AND 2) OR 3.
Strengths: easy to read, no syntax errors, every admin can maintain it. Limits: only field-vs-value comparisons; can’t call functions, can’t reference cross-object paths beyond simple parent fields, can’t do math.
Option 2 — Formula
You write a formula expression that must evaluate to a Boolean:
AND(
ISPICKVAL(StageName, "Closed Won"),
Amount > 10000,
NOT(ISBLANK(Description)),
ISCHANGED(Amount)
)
Strengths: full formula language available — ISCHANGED, PRIORVALUE, ISNEW, INCLUDES, cross-object refs, math, text manipulation.
Limits: harder to read, easier to break with field-API-name changes.
When to pick each
| Use Filter Logic when… | Use Formula when… |
|---|---|
| Comparing fields to fixed values | Comparing fields to each other |
| All ANDs (or simple AND/OR) | Complex boolean nesting |
| The rule has 1–4 conditions | The rule needs ISCHANGED, PRIORVALUE, or ISNEW |
| You want the rule to be admin-maintainable | You’re comfortable with formula syntax |
A formula-only example
You can’t express “fire when Amount increased” with filter logic alone — there’s no “previous value” available in filter rows. In formula:
AND(
ISCHANGED(Amount),
Amount > PRIORVALUE(Amount)
)
Same with “fire only on insert”:
ISNEW()
The trap: leaving criteria empty
Rule Criteria is mandatory — you cannot save a workflow rule with a blank criteria field. If you genuinely want the rule to fire on every save, see the follow-up How to skip the rule criteria when there’s nothing to check? — short answer, use a formula that’s always TRUE like 1=1.
What interviewers want
- The two options named: filter logic and formula
- Examples of when each is appropriate
- Awareness that functions like
ISCHANGEDare formula-only
Verified against: Salesforce Help — Workflow Rule Criteria. Last reviewed 2026-05-17 for Spring ‘26 release.