Skip to content
Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
DictionarySScheduling Policy
Core CRMBeginner

Scheduling Policy

A scheduling policy is a Salesforce Field Service configuration that tells the scheduling engine how to assign service appointments to mobile workers.

§ 01

Definition

A scheduling policy is a Salesforce Field Service configuration that tells the scheduling engine how to assign service appointments to mobile workers. It bundles together a set of work rules and service objectives, then the optimizer applies them to find the best resource and time slot for each job.

A policy holds two kinds of settings. Work rules act as filters that drop any candidate who cannot do the work, and service objectives score the candidates who remain so the highest scorer wins. Dispatchers pick a policy when they book or optimize appointments, so the same org can run different policies for different situations.

§ 02

How a scheduling policy steers the optimizer

Work rules: the pass-or-fail filter

Work rules are the first gate every scheduling policy applies. They behave like a pass-or-fail check. The engine asks a yes or no question of each service resource and removes anyone who fails. A Match Skills rule drops workers who lack the required skill on the work order. A Match Territory rule keeps only resources who are members of the right service territory. A Match Time rule confirms the worker has an open slot inside the appointment window, and a Service Resource Availability rule checks operating hours, absences, and existing bookings. Other rules cover specific needs. Required Resources forces a named worker onto the job, Excluded Resources blocks one, and Match Fields compares values on the resource against values on the appointment. Because work rules are absolute, a single failed rule eliminates a candidate no matter how good they look on every other measure. That is why you order rules carefully and keep them lean. Too many strict rules can leave the engine with no one to schedule, which surfaces as an unscheduled appointment.

Service objectives: weighted scoring

Once work rules produce a shortlist of qualified candidates, service objectives decide who actually gets the job. Unlike the pass-or-fail rules, objectives produce a numeric grade, usually on a 0 to 100 scale. You add objectives to the policy and give each one a weight that reflects how much it matters to your business. A higher weight pulls the schedule toward that goal. Standard objectives let you express common priorities. ASAP pushes appointments to the earliest possible time. Minimize Travel favors resources who are already close, reducing drive time and fuel cost. Minimize Overtime steers work away from extended hours. Resource Priority leans on a ranking you set on each resource, and Skill Level rewards workers whose skill level is higher. Preferred Resource and Same Site help honor customer or location preferences. The engine multiplies each objective grade by its weight, folds in the priority of the appointment's work order, and sums the result into one score. The candidate with the top score is recommended.

The standard policies you start with

Field Service ships with several ready-made scheduling policies so you are not building from a blank slate. Customer First is tuned to deliver good service quickly, leaning on objectives like ASAP and minimal travel to balance speed against efficiency. High Intensity packs more work into the day and is meant for busy periods when you need to push utilization up. Soft Boundaries relaxes some territory limits so resources can take nearby work that crosses a strict boundary line. Emergency is built for urgent, unplanned jobs. It strips back the rules and objectives so the engine can slot a critical appointment in fast, even if that disrupts an otherwise tidy schedule. These defaults are useful on day one, but most teams clone and adjust them. You might raise the travel weight for a rural territory or add a custom objective that reflects a contractual SLA. Treat the standard set as starting templates, then shape policies around how your own operation actually runs.

Where a policy gets applied

A scheduling policy does nothing on its own. It takes effect when someone or something invokes a scheduling action and passes the policy in. Dispatchers feel this most directly in the dispatcher console. When they use Get Candidates, Schedule, or Book Appointment from the Gantt, a policy field controls which rules and objectives run for that action. Switching policies mid-shift lets a dispatcher react to changing conditions without touching any configuration. Policies also drive automated scheduling. Scheduled jobs, optimization runs, and Apex scheduling calls all reference a policy by name. Appointment Booking, the customer-facing slot picker, uses a policy to decide which time windows to offer. Global Optimization and In-Day Optimization each accept a policy that governs how the engine reshuffles the day. Because the same appointment can be scheduled under different policies at different moments, the policy you choose is effectively the lens through which the engine views that booking decision.

Tuning a policy with operational data

A scheduling policy is rarely right the first time. The weights that look sensible in theory often produce schedules that miss the mark in practice. Maybe travel time is still high, or too many jobs spill into overtime, or a key resource sits idle. Tuning is the loop where you watch real outcomes, adjust objective weights, and watch again. Small weight changes can shift behavior more than you expect, so move in modest steps and compare results. Salesforce gives you a Fine-Tune the Scheduling Policy workflow plus reporting on scheduled versus unscheduled appointments to support this. A practical habit is to change one objective weight at a time, run a sample optimization, and review the Gantt before rolling the change out widely. Keep a note of what each policy is meant to optimize for, because a policy that quietly drifts as people tweak it becomes hard to reason about. Mature deployments review their policies on a regular cadence as territories, headcount, and demand shift.

Common pitfalls and how to avoid them

Several mistakes show up again and again with scheduling policies. The most frequent is over-constraining with work rules. Each strict rule narrows the candidate pool, and stacking several can leave zero eligible resources, so the appointment never schedules. When jobs refuse to book, the work rules are usually the first place to look. Another trap is piling on objectives with similar weights, which muddies the signal and makes the engine's choices hard to predict. Forgetting which policy a given action uses causes confusion too. A dispatcher may swear the engine is misbehaving when the real issue is that an automated job ran under a different policy than the console. Document the intended use of each policy and limit how many you maintain. Finally, remember that a policy only reflects the data feeding it. If skills, operating hours, or resource priorities are wrong, even a perfect policy produces poor schedules. Clean the underlying records first, then tune the policy on top of solid data.

§ 03

How to build a scheduling policy in Field Service

You build a scheduling policy in Field Service by attaching work rules and service objectives to a Scheduling Policy record, then weighting the objectives to match your priorities. Most teams clone a standard policy and adjust rather than start empty.

  1. Open or clone a policy

    From the Scheduling Policies tab, open a standard policy like Customer First, or clone it so you keep the original intact. Give the clone a clear name that signals what it optimizes for.

  2. Attach work rules

    On the policy, add the work rules that must hold true, such as Match Skills, Match Territory, and Service Resource Availability. Keep the set lean so you do not accidentally rule out every candidate.

  3. Add and weight service objectives

    Add objectives like Minimize Travel, ASAP, or Resource Priority, then set a weight on each to rank their importance. Higher weights pull schedules toward that goal relative to the others.

  4. Test, tune, and roll out

    Run a sample optimization or use Get Candidates in the dispatcher console under the new policy. Review the Gantt, adjust one weight at a time, then make the policy available to dispatchers and automated jobs.

Work rulesremember

Pass-or-fail filters that drop any resource who cannot do the job, covering skills, territory, time, and availability.

Service objectivesremember

Weighted goals that score qualified candidates so the engine can pick the best one for the appointment.

Objective weightremember

A number per objective that sets its relative importance; raising it biases the schedule toward that objective.

Policy selectionremember

The policy field on scheduling actions, the dispatcher console, Appointment Booking, and optimization jobs that decides which policy runs.

Gotchas
  • Too many strict work rules can leave the engine with no eligible resource, so the appointment stays unscheduled.
  • Objectives with near-identical weights blur priorities and make the engine's choices hard to predict.
  • Automated jobs and the dispatcher console can run different policies, so confirm which policy a given action actually uses.
  • A policy only reflects its inputs; wrong skills, operating hours, or resource priorities produce poor schedules even with good weights.
§

Trust & references

Sources

Cross-checked against the following references.

Official documentation

Straight from the source - Salesforce's reference material on Scheduling Policy.

Was this entry helpful?
Help us write better definitions. Quick reactions or detailed edit suggestions.

About the Author

Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.

§

Test your knowledge

Q1. What is a Scheduling Policy?

Q2. What can policies prioritize?

Q3. How should you tune policies?

§

Discussion

Loading…

Loading discussion…