You are here:
Schedule Appointments by Priority in Workforce Scheduling
Assign priorities to service appointments so urgent work is scheduled first, even if no time slot is available. Workforce Scheduling drops lower- or equal-priority appointments to make room when the schedule is full.
Required Editions
| Available in: Lightning Experience |
| Available in: Enterprise and Unlimited Editions |
Priorities apply to scheduling actions, such as Find Candidates, Schedule New Appointment, Change Time Slot, or Schedule. Assign priority values that reflect what matters most to your business, such as strengthening customer relationships, maximizing revenue, and maintaining critical assets. Identify key priority drivers and configure your settings so that Workforce Scheduling prioritizes those appointments when scheduling.
How Priorities Work
With sliding on, the scheduling engine can drop appointments that have lower- or equal-priority from the Gantt to make room for a higher-priority appointment. A Service Appointment isn’t dropped if it’s in a pinned status.
When a scheduling action runs, the engine first tries to slide existing Service Appointments on the Gantt to fit in the new appointment. If sliding doesn’t open a slot, the engine looks for lower- or equal-priority appointments it can drop. If neither succeeds — no slide, no drop, or a placement that would degrade schedule quality below your scheduling policy’s objectives — the appointment stays unscheduled and the Gantt stays as it was.
How Priority Is Set
Use the Scheduling Priority field on a Service Appointment to set its priority as a fixed value from 1-100, where 1 is the highest priority. Enter whole numbers only — Workforce Scheduling ignores anything after the decimal point. For example, 3.94 is considered as 3. Values above the priority range are treated as the lowest priority (100). If a Service Appointment has no Scheduling Priority value when created (or the value is 0), the scheduling engine uses the Scheduling Priority numeric field on the parent Work Order or Work Order Line Item instead. If this field is empty, it falls back to the Priority field (picklist) and maps these values to a 1–100 scale, such that Critical equals 1, High equals 75, Medium equals 90, Low equals 100. When the Scheduling Priority field is null or zero, the engine treats it as the lowest possible priority.
When you create an appointment through the scheduling flow (Schedule New Appointment), set the Visit Priority field to Critical, High, Medium, or Low. This is similarly mapped to the 1–100 scale.
The scheduling engine is trying to place a new Service Appointment with priority 2 into a 30-minute window. That window is currently free, but two priority-32 appointments could fit there instead (5-minute travel each; 15-minute duration each).
The engine inverts the user-facing priority scale for its internal math — a lower user priority becomes a higher internal score. So:
- The incoming priority-2 appointment maps to an internal score of 99.
- Each of the priority-32 appointments maps to an internal score of 69, and the pair sums to 138.
Because 138 beats 99 on the internal scale, the engine keeps the two priority-32 appointments and doesn’t schedule the incoming appointment. For a new appointment to displace two or more scheduled appointments, its internal priority must exceed the sum of theirs.
