Mileage and Drive Time Calculation and Rules
Mileage and Drive Time Calculation and Rules
All Mileage and Drive Time collected in Insight Center is submitted after all visits have been completed by the field reps. This article focuses on how mileage is calculated, how drive time rates are calculated and how the smoothing algorithm works and why it exists.
Articles detailing how mileage/drive time is collected can be found here:
icMobile - Mileage
Mileage and Drive Time initial Calculation
Once a rep has completed their visits for the day, and synced them to the server, the rep can submit their drive time. Insight Center sends the locations the rep visited, along with their entered start and end locations to Microsoft Bing for routing.
The routing process works like this:
- All locations are prepared, in the order the rep visited them
- Start location geocoded and added to beginning of route list
- End location geocoded and added to end of route list
- Geocoded list to Bing server
- Bing returns calculated route between all locations
- Using street level directions to get accurate distances
- Includes both miles and minutes of travel
Commute/Team Mileage Adjustments
Commute settings for teams the rep performed work for is applied to the calculated mileage/drive time.
To see how these are applied see this article: Commute - Milage and Drive Time
Further Teams also have other settings for how mileage and drive time is calculated for their field reps, those options are shown here: Team Setup - Mileage Drive Time and Commute
In all cases where a rep worked across multiple IC Teams in one day the system uses the most beneficial setting of the teams the rep worked for that day. For example, if the commute threshold for one was set to 30 miles and the other was set to 15 miles the 15 mile threshold would be used since that's in the rep's interest.
Drive Time Reference Code Calculation
Drive time reference codes are how IC indicates to GAMs which drive time rate to pay a rep. Every state in the United States and every province in Canada is assigned a default reference code and rate. These represent the state's minimum wage rate, or $10, whichever is higher. In addition, many localities, often counties have higher minimum wage rates than the state.
The appropriate reference code is determined for each segment of travel and uses this logic:
The system gets the appropriate minimum wage for 3 locations by comparing the minimum wage for that postal code against the states minimum wage and getting the higher value, for the date of visit.
- Where the rep lives
- Where the rep started this travel segment
- Where the rep ended this travel segment
For each segment the system uses the reference code of the highest rate between those 3 locations.
For example, take these 3 locations:
- Rep lives in Pasadena, which has a rate of $17.50/hr.
- Is driving from a store located in Arcadia, which has a rate of $17.27/hr.
- To arrive at a store located in Los Angeles, which has a rate of $17.28/hr.
Because the rep lives in Pasadena the DTPasadenaCA reference code is used so the rep gets paid at the $17.50 rate.
This Drive Time Reference code only applies to employees that do not have an explicit Rate 9 code in ADP, which is Break Fix. If they do have a Rate 9 code that value is used instead.
"Smoothing" Algorithm
Mileage and drive are also "smoothed" across client jobs for a particular work day for each rep. This happens at the point the payroll is verified by management.
Smoothing exists to solve the issue of some travel segments not having any costs applied to it and to allocated travel segments, like commute, that might not have a call form attached to it. It's also used to allocate miles and drive time to other clients during a syndicated visit.
This allocation works by determining what the average miles and drive time are per visit for the day and then summarizing that per Job Code. The algorithm also has to account for the Reference Code above to make sure all allocations still add up for the minimum wage rates the rep should have made.
Example:
- Rep starts in Silver Spring, MD
- Goes to FedEx for Moto in Rockville, MD
- Goes to Best Buy #1776 in Lanham, MD for Moto
- Stays at Best Buy #1776 in Lanham, MD for Backbone
- Stays at Best Buy #1776 in Lanham, MD for reMarkable
- Stays at Best Buy #1776 in Lanham, MD for Tracfone
- Stays at Best Buy #1776 in Lanham, MD for Sonos
- Goes to Best Buy #427 in Frederick, MD for Microsoft
- Goes to Best Buy #263 in Elkridge, MD for Microsoft
- Goes to Best Buy #265 in Laurel, MD for Microsoft
- Ends in Silver Spring, MD
That is 9 store visits with no mileage accrued for the additional visits to Best Buy #1776 since syndication is working. That means only the last visit at that store would get mileage applied to it if we didn't smooth it. Here is what the smoothing would do.
- We have a total of 90 miles of travel for the day
- Which allocates 10 miles per visit
- Moto gets allocated 20 miles (2 visits x 10 miles)
- Microsoft gets allocated 30 miles (3 visits x 10 miles)
- Backbone gets allocated 10 miles (1 visits x 10 miles)
- reMarkable gets allocated 10 miles (1 visits x 10 miles)
- Tracfone gets allocated 10 miles (1 visits x 10 miles)
- Sonos gets allocated 10 miles (1 visits x 10 miles)