⚠︎ Set capacity targets before your team starts booking. Without targets, dispatchers have no way to gauge whether a day is overbooked or underbooked.
⚠︎ Every Job Type must have a defined Default Duration. If a duration is zero or blank, the capacity algorithm will massively overbook. This is the #1 misconfiguration in scheduling.
a. Go to Settings > Adaptive Capacity > Settings to define how capacity is calculated. Choose what Calculation Defaults are enabled and review advanced settings.
b. Set capacity targets by defining strategic rules — for example, reserve 10–20% of capacity for emergency calls by configuring a threshold rule that blocks low-priority job types when capacity drops below a set percentage.
c. On the Schedule, review the capacity indicators to see which days have open slots and which are at or over capacity. Use this to guide call booking decisions.
⚠︎ All business units in a Capacity Group must share the same arrival window profile (e.g., 8–10, 10–12) for availability calculations to work correctly. Mismatched windows cause incorrect slot availability.
a. Adaptive Capacity (included in Core — no add-on required) dynamically calculates available appointment slots based on technician shifts, zones, skills, and existing job load. It replaces the legacy Schedule Assistant and Adjustable Capacity Planning.
b. When a customer calls to book, the CSR selects the job type and clicks Get Availability. The system filters technicians to only those who hold all skills required for that job type and displays available windows based on real-time capacity.
c. Review the availability results. Slots that were previously unavailable may open as the schedule changes throughout the day.
⚠︎ Tags must be on the location level (not the customer level) to auto-populate at booking. Customer-level tags silently do not fire in Adaptive Capacity queries — this is a common gotcha that causes skill-based routing to fail without any error message.
⚠︎ A technician without an active shift does not exist to the dispatch algorithm. Shifts are the foundational data layer — if a tech has no shift, they will not appear in capacity calculations or dispatch suggestions.
a. Go to Schedule > Technician Shifts and select the shift you want to manage.
b. Adjust the start time, end time, or working hours for the selected day.
c. To set recurring availability patterns, go to Settings > Operations > Technician Capacity Planning and configure the default weekly schedule for each technician. Use "On-Call" shift types for after-hours availability.
a. Go to Schedule > Technician Shifts. Click on the shift and select Time Off.
b. Enter the date range, reason, and select a timesheet code, if applicable. Click Save.
c. The dispatch board automatically blocks the technician from being assigned jobs during their time off. Any existing jobs on those days will need to be reassigned.
⚠︎ Assign every active technician to at least one zone. Technicians without zones won't appear in zone-filtered dispatch views.
⚠︎ Zones are BU-scoped. Multi-BU tenants have separate zone configurations per business unit, which affects capacity planning calculations. If a tech moves, update their zone immediately — Dispatch Pro relies on accurate home zones to calculate drive times.
a. Go to Settings > Operations > Zones and click Add.
b. Name the zone and define its boundaries by selecting ZIP codes and cities.
c. Assign technicians to the zone. Each technician can belong to multiple zones if they cover overlapping areas.
d. Click Save. The dispatch board now filters technicians by zone when scheduling jobs in that area.
⚠︎ Ensure each technician's home address is validated in their profile. Unvalidated addresses are excluded from GPS route optimization and the Map view in dispatching.
a. Go to Settings > Operations > Skills and click Add Skill to create the skills your team needs (e.g., HVAC Install, Plumbing Repair).
b. Open each technician's profile and go to the Skills dropdown. Check the skills that technician is qualified to perform.
c. When booking a job, select the required job type. Adaptive Capacity filters technicians to only those who hold all skills tied to that job type, ensuring the right person is assigned. Job types can carry multiple skills — no need for a 1:1 job type per skill.
⚠︎ A technician must have ALL skills listed on a job type to be considered eligible. If no technician in a time window has the required skills, the window shows as unavailable in Get Adaptive Availability.
⚠︎ ServiceTitan must be the single source of truth for time. If hours are edited in QuickBooks but not ServiceTitan, job costing reports will show false profitability. All edits must happen in the Payroll Dashboard before export.
a. Go to Settings > Payroll, then edit the Timesheet Codes section. Time is tracked against timesheet codes linked to earnings codes that map ServiceTitan activities to your external payroll processor.
b. Create a timesheet code with name, code, earnings code, rate (if applicable), and employee-type visibility.
c. Click Save. Codes appear when technicians clock time in mobile.
⚠︎ This step is critical for Contracted Service operations. Commercial and maintenance dispatching requires consistent crew assignments — Crew Scheduling is the primary tool for this.
⚠︎ Crew Scheduling does not require Dispatch Pro.
a. Go to Dispatch > Crew Scheduling to access the Crew Scheduling board.
b. Create crews by designating a Crew Leader and adding Crew Members. When you drag-and-drop the Crew Leader to a job, the system auto-assigns all crew members to that appointment.
c. This ensures all crew members are clocked into the correct cost code and project phase without individual admin work — essential for Budget vs. Actual tracking on projects.
⚠︎ Only the Crew Leader has permissions to complete forms and edit the job on mobile. This is a hard gate — crew members cannot override the leader's actions. Plan crew leader assignments accordingly.
a. On the Dispatch Board, click an open slot on a technician's timeline to create a Non-Job Event. Non-job events are separate from job appointments — they represent time blocks like meetings, training, or vehicle inspections.
b. Name the event, fill out the details, and set the time range.
c. When creating the event, select Include in scheduling and dispatching capacity (new Dispatch Board) or Needs a Timesheet (legacy Dispatch Board). This tells Adaptive Capacity to deduct this time from available capacity. Without this option, the event won't affect capacity calculations.
⚠︎ Non-job events are only accounted for by Adaptive Capacity if the correct option is selected when creating the event. If this is missed, the board will show the technician as available during the blocked time.
a. Go to Settings > Integrations > Alerts and verify that a Technician Unassigned alert is configured for the appropriate users or roles. This alert fires when a dispatcher unassigns a tech from a job without reassigning it.
b. Check the alert conditions — confirm the notification trigger is set correctly and hasn't been disabled. Alerts can be filtered by Business Unit or Job Type.
c. Verify the job is truly unassigned. Jobs with a technician pre-selected during booking won't trigger unassigned alerts even if they haven't been dispatched.