Resource Start and End Locations
Complete the full lesson to earn 25 points
Work through each section, then tap “Mark as Complete” on the last one.
✦ Skip the page breaks and see fewer ads — read each lesson on a single page with Pro
Mastering Resource Start and End Locations in Field Service
Introduction: The Foundation of Intelligent Scheduling
In the world of field service management, the ability to dispatch the right technician to the right place at the right time is the cornerstone of operational efficiency. However, dispatching is not just about finding a technician who is available; it is about understanding the geography of your workforce. If your system does not know where a technician starts their day or finishes their shift, it cannot calculate accurate travel times, predict arrival windows, or optimize routes. This is where "Resource Start and End Locations" come into play.
Resource Start and End Locations define the geographical anchor points for a bookable resource. These settings tell the scheduling engine where the technician is located when they log on for the day and where they are expected to be when they clock out. Without these configurations, the system defaults to generic or null values, which often leads to inaccurate travel time estimates, frustrated customers waiting for late technicians, and wasted fuel costs due to inefficient routing.
Understanding this configuration is critical for any field service administrator. Whether you are managing a team of HVAC technicians, medical equipment repair staff, or utility field workers, the accuracy of these locations dictates the quality of your entire scheduling process. In this lesson, we will dive deep into how these settings function, how to configure them correctly, and how they influence the broader ecosystem of resource management.
The Three Pillars of Resource Location Strategy
When configuring a bookable resource, you are generally presented with three primary choices for both the Start and End Locations. These choices represent the reality of how field workers operate in the field. Understanding the nuances of these options is the first step in setting up a reliable system.
1. Resource Address (Home-Based)
The "Resource Address" option assumes that the technician begins and ends their work day from their personal residence. This is common for field workers who take company vehicles home. The system uses the address stored on the User or Contact record associated with the bookable resource to calculate the distance to the first job and the distance from the final job back home.
2. Organizational Unit Address (Depot-Based)
The "Organizational Unit Address" is used when technicians report to a physical hub, office, or warehouse before heading out to their first assignment. This is common in industries where technicians need to pick up parts, check in with supervisors, or load specialized equipment every morning. The scheduling engine calculates travel times starting from this specific physical site.
3. Location Agnostic (None)
In some scenarios, you may choose to set the location to "None." This effectively tells the scheduling engine that the resource does not have a fixed start or end point. While this might seem useful for flexible roles, it often disables the system’s ability to calculate travel time for the first and last jobs of the day. Using this option should be done with caution, as it can lead to "ghost" travel times or scheduling errors.
Callout: Home vs. Depot Strategy Choosing between Home-based and Depot-based configuration is not merely a technical setting; it is a business decision. Home-based models typically reduce the "deadhead" travel time in the morning, as the technician starts closer to the first job. However, Depot-based models ensure higher compliance with safety checks and inventory management. Evaluate your operational overhead before finalizing this setting.
Step-by-Step Configuration Guide
Configuring these settings requires access to the Resource Management module within your field service application. Below is the standard procedure for configuring a bookable resource.
Step 1: Navigating to the Resource Record
Navigate to the "Resources" or "Bookable Resources" entity list in your application. Select the specific resource you wish to configure. Ensure that the resource type is set correctly (e.g., User, Contact, or Equipment) before proceeding, as the address validation depends on the underlying record type.
Step 2: Defining the Start Location
Locate the "Scheduling" or "Field Service" tab within the resource record. You will see a field labeled "Start Location." Open the dropdown menu and select one of the following:
- Organizational Unit: Requires you to select a specific Organizational Unit record that has a defined address.
- Resource Address: Pulls the address from the associated User or Contact record.
- None: No location defined.
Step 3: Defining the End Location
Repeat the process for the "End Location" field. It is important to note that the Start and End locations do not have to be the same. For example, a technician might start their day at a central warehouse (Organizational Unit) to pick up parts but finish their day at their home (Resource Address).
Step 4: Address Verification
Once you have selected the location types, ensure the physical addresses associated with those choices are accurate. If you selected "Organizational Unit," navigate to the Organizational Unit record and verify the Latitude and Longitude fields. If you selected "Resource Address," go to the associated User record and verify the address fields.
Note: Many modern scheduling engines use geocoding services to convert addresses into latitude and longitude coordinates. If your addresses are not geocoded, the scheduling engine may fail to calculate travel time, resulting in a system error or an "Unknown" travel duration.
Technical Underpinnings: How the Scheduling Engine Processes Locations
To truly master this, one must understand how the scheduling engine (the "Optimizer" or "Schedule Board API") processes these coordinates. When a user creates a work order and attempts to schedule it, the engine performs a "shortest path" calculation.
The Calculation Logic
- Identify Start Point: The engine retrieves the Start Location coordinates.
- Identify Destination: The engine retrieves the location of the work order (the "Service Account" address).
- Calculate Distance/Time: The engine queries a mapping service (like Bing Maps or Google Maps) to find the travel duration between those two points.
- Validate Constraints: If the calculated travel time exceeds the technician's available time before their next commitment, the engine flags the slot as "invalid."
Example: Code-Based Location Retrieval
While most configuration is done through the user interface, developers often need to query these locations via API for custom integrations or reporting. Below is a conceptual example of how one might retrieve these details using a common API pattern:
// Example: Querying Resource Location Settings
const resourceId = "RES-12345";
async function getResourceSchedulingData(resourceId) {
const resource = await api.get(`bookableresources/${resourceId}`, {
fields: ['name', 'startlocation', 'endlocation', 'organizationalunitid']
});
if (resource.startlocation === 'organizationalunit') {
const unit = await api.get(`organizationalunits/${resource.organizationalunitid}`);
return {
startType: 'Depot',
coordinates: unit.locationCoordinates
};
} else if (resource.startlocation === 'resourceaddress') {
const user = await api.get(`users/${resource.userid}`);
return {
startType: 'Home',
coordinates: user.addressCoordinates
};
}
}
This logic illustrates the dependency chain: the Bookable Resource record acts as a pointer to either an Organizational Unit or a User/Contact record. If the pointer leads to an empty address field, the calculation will fail.
Best Practices for Enterprise Scaling
When scaling a field service operation from ten technicians to hundreds, manual configuration becomes impossible. Here are the industry standards for maintaining accurate resource locations at scale.
1. Centralized Address Management
Do not allow individual technicians to update their own home addresses in the system without an approval workflow. If a technician moves and forgets to update their address, the scheduling engine will continue routing them from their old, potentially distant location, leading to massive inaccuracies in travel time.
2. Standardize Organizational Units
If your company uses multiple depots, ensure that every Organizational Unit has a standardized naming convention and a verified, geocoded address. Use a "Master Data" approach where Organizational Units are treated as static assets that are audited quarterly for address accuracy.
3. Leverage Geocoding Services
Always ensure your scheduling software is integrated with a reliable geocoding service. If your addresses are stored as plain text, the engine cannot perform the necessary math. Most enterprise-grade Field Service Management (FSM) platforms have built-in geocoding, but this requires the administrator to trigger the "Geocode" process whenever an address is created or updated.
4. Monitor Travel Time Anomalies
Set up automated dashboards that flag "High Travel Time" incidents. If a technician is consistently showing two hours of travel time for what should be a 15-minute drive, it is a clear indicator that their Start or End location is configured incorrectly.
Warning: Avoid using "None" for Start/End locations unless you are working in a purely remote or virtual service environment. Using "None" often forces the scheduling engine to treat the travel time as zero, which creates a false sense of capacity and leads to over-scheduling.
Comparison Table: Location Configuration Scenarios
| Scenario | Best Start Location | Best End Location | Reasoning |
|---|---|---|---|
| Field Tech with Company Van | Resource Address | Resource Address | Tech keeps vehicle at home; minimizes commute. |
| Warehouse-Based Tech | Org Unit | Org Unit | Tech must pick up parts/tools at the warehouse. |
| Split-Shift/Contractor | Resource Address | None | Useful for contractors who finish at the last site. |
| Emergency Response | Org Unit | Org Unit | Ensures vehicle is stocked and ready for next shift. |
Common Pitfalls and Troubleshooting
Even with the best planning, errors occur. Here are the most common mistakes I see when auditing Field Service implementations.
The "Missing Geocode" Trap
The most frequent issue is the "Geocode" status being set to "Pending" or "Failed." When an address is saved, the system attempts to translate it into coordinates. If the address is poorly formatted (e.g., missing a postal code), the geocoding service will fail.
- Solution: Create a view on your Resource and Organizational Unit entities that filters for records where the "Latitude" or "Longitude" fields are empty. Review these records weekly.
The "Default Address" Fallacy
Many systems default to the company headquarters if no specific location is provided. This is a dangerous default. If your company headquarters is in New York, but your technician is in Chicago, the system will calculate travel times based on a 700-mile distance, making it impossible to schedule anything in the Chicago area.
- Solution: Make the Start and End location fields mandatory on the form to prevent users from accidentally leaving them blank.
Ignoring Travel Time Buffers
Sometimes the location is correct, but the system calculates travel time as if the roads are always empty. This is a common point of contention between dispatchers and technicians.
- Solution: Use "Travel Time Buffers" or "Traffic Patterns" if your platform supports them. Even with a perfectly configured Start/End location, you must account for real-world traffic to ensure the technician is actually able to arrive on time.
Advanced Configuration: Using Plugins and Automation
In highly complex environments, you may need to dynamically change a technician's start location based on the day of the week. For example, a technician might report to a depot on Mondays for a team meeting, but start from home the rest of the week.
Using Automation for Dynamic Routing
You can use automation tools (like Power Automate or custom plugins) to update the "Start Location" field based on a schedule.
- Create a Recurring Schedule: Set a flow to run every Sunday night.
- Define Logic: If today is Monday, update the Resource record's Start Location to "Organizational Unit."
- Default to Home: For all other days, update the record to "Resource Address."
This level of granularity ensures that your scheduling engine is always looking at the correct starting point without requiring manual intervention from the dispatcher.
The Intersection of Location and Capacity
It is important to understand that Start and End locations are a primary input for "Capacity Planning." If your scheduling engine knows that a technician starts at a depot 20 miles away, it automatically "consumes" some of their total available time for that travel.
If you have 10 technicians who all start at the same depot, and you have 20 jobs clustered near that depot, the system will naturally balance the load. However, if the locations are misconfigured, the system might assign a job to a technician on the other side of the city simply because it thinks that technician is closer to the job site. This is why location accuracy is not just about the technician; it is about the efficiency of the entire fleet.
Impact on SLA Compliance
Service Level Agreements (SLAs) are often tied to arrival times. If your system is consistently miscalculating travel time because the Start Location is wrong, you will consistently miss your "Arrival Window" targets. This leads to contractual penalties and loss of customer trust. Properly configuring these locations is, therefore, a direct contributor to your bottom line and your brand reputation.
Summary of Key Takeaways
To recap, mastering Resource Start and End Locations requires a blend of technical setup, data hygiene, and operational awareness. Keep these points in mind as you configure your system:
- Define by Role: Always match the location setting to the actual work pattern of the technician—don't force a Depot-based model on home-based workers.
- Geocoding is Non-Negotiable: Ensure every address used as a start or end point is successfully geocoded. Without coordinates, the scheduling engine is blind.
- Mandatory Fields: Prevent common errors by making the Start and End Location fields mandatory in your CRM or Field Service application.
- Audit Regularly: Use automated views or reports to identify resources with missing or invalid location data.
- Consider the Business Logic: Understand that these settings dictate more than just travel time; they influence capacity, load balancing, and SLA adherence across your entire organization.
- Account for Real-World Factors: Remember that location is only one part of the travel equation. Incorporate traffic patterns and travel time buffers to provide a realistic schedule.
- Automation for Flexibility: For complex scheduling needs, use automation to shift location settings dynamically rather than relying on manual updates.
By focusing on these core areas, you ensure that your scheduling engine has the data it needs to function effectively. A well-configured system reduces the burden on your dispatchers, increases the productivity of your field technicians, and ultimately provides a better experience for your customers. Remember, in field service, the geography of your workforce is the bedrock of your success.
Frequently Asked Questions (FAQ)
Q: What happens if I change the Start Location in the middle of the day?
A: Changes to the Start Location are generally picked up by the scheduling engine the next time it runs an optimization or a booking request. However, it will not retroactively change travel times for work orders already scheduled for that day. You would need to reschedule those bookings to trigger a recalculation.
Q: Can I have different Start and End locations for different days?
A: Standard FSM applications usually treat the Resource record as a static configuration. To achieve day-by-day variation, you would need to implement an automation (like a Flow or Script) that updates the Resource record based on a calendar or a schedule entity.
Q: Why does my technician show up as "Available" at the depot even when they are on vacation?
A: This is likely an issue with the Resource's "Working Hours" calendar rather than the location settings. Ensure that the technician's time-off requests are properly logged in their calendar, which will override their availability regardless of their start/end location configuration.
Q: How do I handle technicians who work from multiple depots?
A: If a resource truly reports to different locations, the best practice is to treat them as having a "floating" location or to define the primary depot they report to most frequently. If this is a common business requirement, you may need to look into advanced routing plugins that support "multi-depot" logic, which is beyond the scope of basic configuration.
Q: Is there a way to visualize these locations?
A: Yes, most modern Schedule Boards allow you to layer the "Resource Location" on the map view. Use this feature to visually verify that your technicians are starting where they are supposed to. If you see a cluster of technicians starting in the middle of the ocean or at a generic city center point, you know your geocoding or address configuration is incorrect.
Enjoying the courses?
Everything stays free. Pro shows fewer ads, doubles your daily points limit so you progress twice as fast, and lets you read each lesson on one page.
- ✓ Fewer advertisements
- ✓ 2× daily points limit
- ✓ Distraction-free lessons