An escalation rule watches a case’s age against a set of criteria and fires actions when the age passes a threshold. Only one escalation rule per object can be active. When it appears not to fire, the cause is almost always the age clock being measured from something other than what you assumed, or business hours quietly stretching four hours into two working days.
The structure
One active rule. Inside it, ordered entries. Each entry has criteria deciding which cases it covers, a business hours setting, and one or more escalation actions. An action has an age threshold and what to do when that age is reached: reassign the owner, notify named users, send an email template.
An entry can hold several actions at different ages. That is how you build a ladder: notify the team lead at four hours, reassign to an escalation queue at eight, email the manager at twenty-four. One entry, three actions.
The age clock, which is the whole problem
Each entry chooses how case age is measured. The options are the ones that catch people out:
- When the case is created. A fixed clock from creation, regardless of what anyone does to the case.
- When the case is created, and disabled after it is first modified. Any edit stops the escalation permanently. An agent opening the case and changing a picklist kills the clock.
- When the case was last modified. Every edit resets the clock to zero, so a case that is touched daily never escalates no matter how long it has been open.
Those last two are the two most common reasons a rule “does not fire”. The configuration is correct, the clock is just being reset or switched off by ordinary agent activity. Pick the first option unless you have a specific reason not to.
Business hours make short thresholds long
An entry can ignore business hours or use them, and when it uses them it can take the business hours from the case or from a business hours record you name. With business hours applied, a four-hour threshold on a case raised at 5pm Friday is not reached until mid-morning Monday.
Escalation does not happen to the second
Escalations are processed on a schedule rather than instantly. A case that crosses its threshold is queued and the action runs shortly after, not at the exact minute. Setup has a monitoring page for case escalations that lists what is pending, and it is the fastest way to tell the difference between “the rule did not match” and “the rule matched and has not run yet”.
The IsEscalated flag is thinner than it looks
Reassignment actions set the case’s Escalated checkbox. That is a boolean with no timestamp attached, so it tells you a case was escalated at some point and nothing about when or how many times. If you want escalation history for reporting, track it yourself with a field the escalation action sets, or a flow watching the checkbox.
SELECT Id, CaseNumber, IsEscalated, CreatedDate, Status, Owner.Name
FROM Case
WHERE IsEscalated = true AND IsClosed = false
ORDER BY CreatedDate
How this differs from entitlement milestones
They are often confused because both are clocks on a case. They are not alternatives to each other and they measure different things.
An escalation rule is an internal alarm. It says a case has been sitting too long and somebody should be told. It has no concept of what was promised to the customer, no per-customer variation, and no record of whether the target was met.
A milestone is a commitment. Its target varies by the entitlement the customer holds, it produces a Case Milestone record carrying a target date and a completion date, and it can be paused with stopped time. That record is what you report attainment from.
Use milestones when you have contractual targets and need to prove attainment. Use escalation rules when you just want somebody woken up. Running both is normal, and the mistake is trying to report SLA performance from escalation rules, which cannot tell you anything beyond a checkbox.
Frequently asked
Can I have more than one active escalation rule? One per object. Multiple rules can exist as drafts, only one is active at a time.
Why did an old case suddenly escalate after I activated the rule? Existing open cases are in scope. A rule with a twenty-four hour threshold activated against a backlog will escalate the backlog. Activate with narrow criteria first.
Does escalation change the case owner silently? Yes, unless you tick the notify option. Support Settings also has a switch for notifying the previous case owner on escalation, and leaving it off is why owners lose cases without knowing.
