Skip to content

Driver Report Documentation

Menu Location: Reports > Delivery > Driver Report

Access Level: Manager / Administrator

Last Updated: 2026-03-01


Overview

The Driver Report provides weekly performance metrics for delivery drivers and routes. It tracks order counts, tips, mileage, and estimated vs actual delivery times to help manage driver efficiency and customer satisfaction.

Primary Functions:

  • View driver performance by route and week
  • Track total tips and average tips per order
  • Monitor route mileage
  • Compare actual delivery times vs estimates
  • Identify route timing issues and efficiency opportunities

Page Layout

Header Section

  • Page Title: Driver Report
  • Driver Time Stats Button: Links to detailed driver timing analysis
  • Week Navigation: Previous/Next arrows and week selector dropdown

Filter Controls

  • Week Selector: Dropdown showing weekly_cycle dates
  • Submit Button: Loads data for selected week
  • Navigation Arrows: Quick previous/next week buttons

Main Content Area

  • Info Callout: Explains "Time Difference" calculation methodology
  • Results Table: One row per route showing driver metrics
  • Sortable/Filterable: DataTables integration for sorting and searching
  • Export Button: CSV export for data analysis

Report Data & Columns

Column Description Calculation/Source
(Actions) View Stop Times button Links to route-specific stop timing details
Day Day of week for route Sunday through Saturday from routes.day
Route Route name Links to route editing page
Driver Driver name assigned From drivers table via routes_data
Orders Count of deliveries COUNT of non-cancelled orders on route
Tips Total driver tips collected SUM of driver_tip from orders
Tips Avg Average tip per order Total Tips ÷ Orders
Mileage Route distance in miles From routes_data.distance converted from meters
Time Difference Deviation from estimated time See calculation section below

Time Difference Calculation

Purpose: Measures how actual delivery timing compares to estimates

Methodology:

  1. Gets estimated arrival time for last stop on route
  2. Gets actual delivery time for last stop on route
  3. Calculates difference between estimated and actual for first stop
  4. Normalizes last stop difference by first stop difference

Why Normalize:

  • If driver starts late, we don't penalize them
  • Focuses on route execution, not start time delays
  • Measures driver efficiency independent of dispatch timing

Example:

First Stop:

- Estimated: 10:00 AM
- Actual: 10:15 AM
- Difference: +15 minutes late start

Last Stop:

- Estimated: 2:00 PM
- Actual: 2:30 PM
- Raw Difference: +30 minutes

Normalized Time Difference:
+30 minutes (actual) - 15 minutes (late start) = +15 minutes
Driver is 15 minutes behind schedule independent of late start

Display Format:

  • Shown in minutes (converted from seconds)
  • Positive number = driver running late
  • Negative number = driver ahead of schedule
  • Empty if no data available

Filters & Search Options

Week Selection

Week Dropdown:

  • Shows all weekly_cycle dates
  • Default: Current week (getWeekId())
  • Stores week_id in URL parameter
  • Persists across page reloads

Navigation Arrows:

  • Left Arrow: Go to previous week
  • Right Arrow: Go to next week
  • Updates URL with week_id parameter
  • Instantly reloads page with new week

Week ID System:

  • Sequential numbering of delivery weeks
  • Links to weekly_cycle table
  • Used throughout system for scheduling

DataTables Features

Sorting:

  • Click any column header to sort
  • Default: No sorting (displays as queried - by day then route name)
  • Multi-column sorting available

Filtering:

  • Search box filters all columns
  • Live filtering as you type
  • Case-insensitive search

Display Length:

  • Default: 200 rows per page
  • Prevents pagination for most route counts
  • Dropdown to change rows per page

Export:

  • CSV button in toolbar
  • Exports currently filtered/sorted data
  • Includes all visible columns

Common Use Cases

Use Case 1: Weekly Driver Performance Review

Goal: Assess driver efficiency for the week

Steps:

  1. Select current or previous week from dropdown
  2. Click Submit
  3. Review Time Difference column for each driver
  4. Note drivers with consistent positive times (running late)
  5. Review tips average for customer satisfaction indicator
  6. Click "View Stop Times" for problem routes

Example: Driver shows +25 minutes on Monday, +30 on Wednesday, +15 on Friday. Investigate route planning or driver efficiency.

Tips:

  • Negative time differences are good (ahead of schedule)
  • Tips average correlates with customer satisfaction
  • Check mileage vs time for route efficiency

Use Case 2: Route Optimization Opportunities

Goal: Identify routes that need better planning

Steps:

  1. Select week to analyze
  2. Sort by "Time Difference" column (click header)
  3. Identify routes with highest positive differences
  4. Click route name to review route configuration
  5. Click "View Stop Times" to see specific problem stops
  6. Adjust route order or timing estimates

Example: Route shows +45 minute time difference. Review shows traffic patterns not accounted for in estimates. Adjust departure time or reorder stops.

Tips:

  • Consistent delays suggest systematic route issues
  • Variable delays suggest driver performance issues
  • Check mileage to ensure route is optimal distance

Use Case 3: Driver Tips Analysis

Goal: Understand driver compensation and customer satisfaction

Steps:

  1. Select week to review
  2. Sort by "Tips Avg" column
  3. Compare drivers on similar routes
  4. Identify drivers with very low averages
  5. Investigate potential customer service issues
  6. Recognize high performers

Example: Driver A averages $4.50/order, Driver B averages $2.10/order on similar routes. Review Driver B's service quality and timing.

Tips:

  • Average tip reflects customer satisfaction
  • Compare within same route types (urban vs rural)
  • Very low tips may indicate service problems
  • Zero tips might indicate tip tracking issues

Use Case 4: Mileage Verification for Reimbursement

Goal: Validate driver mileage claims against route data

Steps:

  1. Select week for reimbursement period
  2. Review Mileage column for each driver's routes
  3. Sum total miles per driver across week
  4. Compare to driver-submitted mileage claims
  5. Investigate significant discrepancies

Example: Driver claims 150 miles but route data shows 127 miles. Review for additional stops or incorrect route tracking.

Tips:

  • Mileage is calculated from route planning data
  • May not include deviations or detours
  • Account for drive to/from depot
  • Update route data if actual distance differs

Use Case 5: Capacity Planning for High-Volume Days

Goal: Ensure adequate driver coverage for busy periods

Steps:

  1. Select week with high order volume
  2. Review Orders column per route
  3. Note any routes with very high counts
  4. Check Time Difference for overloaded routes
  5. Plan to split high-volume routes in future

Example: Tuesday route shows 45 orders with +50 minute delay. Split into two routes or add helper driver.

Tips:

  • More than 30-35 orders per route may cause delays
  • Consider customer service quality vs efficiency
  • Plan splits before problem occurs
  • Monitor order growth trends

Actions & Operations

View Stop Times

Purpose: See detailed timing for each delivery stop on route

Steps:

  1. Click "View Stop Times" button for desired route
  2. Opens driver-report-route-details.php page
  3. Review stop-by-stop timing data
  4. Identify specific problem stops
  5. Use for detailed route optimization

What It Shows:

  • Individual stop addresses
  • Estimated vs actual arrival times
  • Stop duration (time at location)
  • Sequence of deliveries

Purpose: Access driver-specific performance analysis

Steps:

  1. Click "Driver Time Stats" button in header
  2. Opens driver-report-driver-details.php
  3. View aggregated driver performance across routes
  4. Compare drivers to each other

What It Shows:

  • Total time metrics per driver
  • Average performance statistics
  • Driver comparison data

Export to CSV

Purpose: Download data for external analysis

Steps:

  1. Configure week selection
  2. Optionally filter or sort table
  3. Click "csv" button in table toolbar
  4. File downloads automatically
  5. Open in Excel or Google Sheets

CSV Contents:

  • All visible columns
  • Currently filtered/sorted data
  • Formatted for spreadsheet import

Troubleshooting

Driver Name Not Showing

Symptoms: Driver column is empty for a route

Check:

  1. Verify driver was assigned in routes_data for this week
  2. Check if route has latest routes_data entry
  3. Confirm driver exists in drivers table

Solutions:

  1. Assign driver in route management for this week
  2. Update routes_data with driver assignment
  3. Verify weekly_cycle_id matches selected week

Common Causes:

  • Driver not assigned to route for selected week
  • Missing routes_data entry for week
  • Driver deleted from system after assignment

Time Difference Shows Empty

Symptoms: Time Difference column is blank for some routes

Check:

  1. Verify route has est_deviation calculated in routes_data
  2. Check if all orders on route have delivery timestamps
  3. Confirm route was actually run (not planned only)

Solutions:

  1. Ensure delivery confirmations were recorded
  2. Run updateDriverReportStats() if admin access
  3. Verify tracking data was properly recorded

Common Causes:

  • Route not yet completed
  • Missing delivery confirmation timestamps
  • Data not calculated yet for recent deliveries

Mileage Shows Zero or Missing

Symptoms: Mileage column is empty or shows 0

Check:

  1. Verify routes_data has distance value
  2. Check if route planning was completed
  3. Confirm route_id matches between tables

Solutions:

  1. Complete route planning in route management
  2. Ensure distance is calculated and saved
  3. Update routes_data with current week's data

No Data for Selected Week

Symptoms: Table is empty after selecting week

Check:

  1. Verify week has scheduled routes
  2. Check if orders exist for this week
  3. Confirm weekly_cycle_id is correct

Solutions:

  1. Select different week with known activity
  2. Verify routes are configured for this week
  3. Check if week is in future (no deliveries yet)

  • Driver Time Stats (driver-report-driver-details.php) - Driver-specific timing analysis
  • Route Stop Times (driver-report-route-details.php) - Detailed stop-by-stop timing
  • Route Management (admin-edit.php?table=routes) - Configure delivery routes
  • Driver Management (admin-edit.php?table=drivers) - Manage driver records
  • Weekly Schedule (week.php) - View/edit weekly delivery schedule

Typical Workflow:

  1. Driver Report → Identify problem route → View Stop Times → Adjust route order
  2. Driver Report → Low tips → Driver Management → Performance review
  3. Weekly Schedule → Driver Report → Verify completion and timing

Permissions & Access

Required Access Level: View access (implied from code - no explicit permission check)

Access Level Capabilities:

  • Customer Service: View delivery status for customer inquiries
  • Manager: Analyze driver performance and route efficiency
  • Administrator: Full access to all weeks and export features
  • Kiva Admin: All features plus database access and update functions

Best Practices

Regular Monitoring

  1. Review driver report every Monday for previous week
  2. Track time difference trends week-over-week
  3. Monitor tip averages as customer satisfaction indicator
  4. Export monthly for performance documentation

Driver Management

  1. Discuss time differences in weekly driver meetings
  2. Recognize drivers with negative time differences (ahead of schedule)
  3. Provide training for consistent late drivers
  4. Compare tips across drivers for service quality

Route Optimization

  1. Investigate routes with >20 minute time differences
  2. Review stop times for routes with timing issues
  3. Adjust estimated times based on actual performance
  4. Split routes showing 40+ orders regularly

Things to Avoid

  • ❌ Don't penalize drivers for positive time differences without investigation
  • ❌ Don't ignore consistent patterns in favor of single-week data
  • ❌ Don't compare drivers on very different route types (urban vs rural)
  • ❌ Don't forget to update route data after making changes

Quick Reference Card

Task Action/Location
View current week Select current week, click Submit
Go to previous week Click left arrow
Check driver timing Review Time Difference column
See stop details Click "View Stop Times"
Export week data Click CSV button
Compare drivers Sort by Tips Avg or Time Difference
Find problem routes Sort Time Difference high to low
Calculate weekly miles Sum Mileage column for driver
Check route capacity Review Orders column
Driver performance trend Use navigation to review multiple weeks

FAQs

What does a negative Time Difference mean?

Negative time difference means the driver finished the route ahead of the estimated time. This is generally good, indicating efficient route execution.

Why is Time Difference normalized by first stop?

This accounts for late starts. If a driver starts 15 minutes late but still finishes only 10 minutes behind, they actually made up 5 minutes during the route. Normalization shows true route efficiency independent of start time.

How is mileage calculated?

Mileage comes from the route planning system's distance calculation, converted from meters to miles. It represents the planned optimal route distance, which may differ from actual GPS tracking.

Why don't all routes show tips?

If Tips column is empty or zero, either no tips were collected on that route, or tip tracking wasn't enabled/recorded for those orders.

Can I see historical data for a specific driver?

Use the week navigation to review past weeks. For aggregated driver history across weeks, use the "Driver Time Stats" page linked in the header.


Change Log

2026-03-01

  • Initial documentation created
  • All sections completed based on driver-report.php code review
  • Documented Time Difference calculation methodology
  • Added DataTables integration details
  • Included week navigation features

End of Documentation

For additional help, contact your system administrator or Kiva Logic support.