Distance-Based Travel Fees (Travel Charges / Travel-to-Job Mileage Surcharge)
Distance-Based Travel Fees (also called Travel Charges, Travel-to-Job, mileage surcharge, trip charge, or fuel surcharge) lets you automatically add a travel fee to a quote, booking, or invoice based on the distance to the job.

This helps you recover fuel, vehicle wear, and drive time fairly—without overcharging nearby customers—by using a complimentary/free radius, a per-km/mi rate, and an optional maximum billable distance cap.

On this page
- What this is for
- What the feature does
- Travel-to-Job surcharge vs GPS mileage billing
- How it works (end-to-end)
- Requirements (important)
- Step 1: Enable & configure distance-based travel fees
- Step 2: Optional service-level overrides
- Where distance starts (origin address)
- How travel fees are calculated
- Admin: Review/edit travel fees on quotes & bookings
- Fieldworker App: On the way, SMS, navigation & live tracking
- Quotes, invoices & customer transparency
- Use cases & examples
- Best practices
- Troubleshooting
- FAQ
What this is for
Distance-based travel fees help you apply a consistent, transparent travel pricing policy across your team—so travel costs are calculated the same way on every quote, booking, and invoice, regardless of who creates or dispatches the job.
This feature is commonly used for:
- Call-outs & mobile services: plumbing, electrical, HVAC, cleaning, pest control, appliance repair, mobile beauty/massage, home maintenance, deliveries, and installations.
- Wide service areas: charge fairly for longer travel while keeping pricing competitive for nearby customers.
- Clear, dispute-free billing: customers can easily understand rules like “first X km free, then $Y per km, capped at Z km”.
- Accurate quoting & healthier margins: estimate travel costs upfront, avoid underquoting, and protect profitability before confirming the job.
- Operational consistency: reduce manual calculations, ensure new staff follow the same policy, and minimise admin errors.
Terminology note: In some OctopusPro accounts, the assigned fieldworker may be labelled Hero in the Admin portal. This guide uses “fieldworker (Hero)” where relevant.
What the feature does
When Travel-to-Job / Mileage Surcharge is enabled, OctopusPro automatically applies your travel pricing rules to each quote, booking, and invoice—based on the distance between your origin (dispatch hub/branch or fieldworker origin) and the service address.
| Setting / Action | How it works | Why it helps |
|---|---|---|
| Complimentary (Free) Radius | You set a free travel buffer (e.g., 20 km). Travel inside the free radius is not charged. Enter 0 if you want to bill from the first km/mi. | Nearby customers don’t get penalised, while longer-distance jobs remain profitable and fairly priced. |
| Rate per Km/Mi | You set the surcharge that applies beyond the free radius (e.g., $1.75/km). Some accounts may also support tiered or capped travel pricing structures. | Matches common industry pricing terms like travel fee, call-out/trip charge, or fuel surcharge—so customers recognise it and are less likely to dispute it. |
| Road-distance estimation (Google Maps) | When an address is entered during quoting/booking (admin or portal), OctopusPro can calculate real-road distance (not “as-the-crow-flies”) and prefill the travel fee (still editable). | Produces more realistic estimates and helps reduce under-quoting caused by straight-line distance assumptions. |
| Live GPS distance capture (Fieldworker App) | If tracking is enabled, mileage can be captured when the fieldworker taps En Route / On the way, and stops on Arrived (based on your workflow and permissions). | Improves accuracy for long trips, supports ETA tracking, and helps reconcile differences between estimated and actual route distance. |
| Maximum billable distance (Cap) | Set a maximum billable distance (e.g., 100 km). If the calculated/recorded distance exceeds the cap, the system bills using the cap value instead. | Keeps pricing predictable and avoids “sticker shock” on remote jobs. |
| Service-level overrides (Optional) | You can inherit company defaults or apply different travel values for specific services (e.g., after-hours call-outs vs routine maintenance). | Lets you align travel fees with the true cost of service delivery (urgent jobs, specialist vehicles, long setup time, etc.). |
| Invoice line item (Customer transparency) | The travel fee can appear as a separate line item on quotes/invoices (e.g., Travel Fee / Travel-to-Site / Mileage Surcharge). | Makes billing clearer, reduces disputes, and keeps travel revenue separate from labour/materials for reporting and accounting workflows. |
Travel-to-Job surcharge vs GPS mileage billing
OctopusPro supports two distance-based billing approaches. Choose the model that matches how your business charges customers:
| Method | Best for | How it charges |
|---|---|---|
| Travel-to-Job surcharge (most common) | Trades & mobile services that include local travel in pricing | Charges only the distance beyond a complimentary/free radius (optionally capped) |
| GPS mileage billing (door-to-door / “taximeter”) | Transport/logistics where driving is the service (towing, haulage, shuttles, courier line-haul, NEMT) | Charges all distance driven using an odometer-style meter |
This guide focuses on Travel-to-Job distance-based travel fees. For door-to-door mileage billing, see: GPS Mileage Billing Software.

How it works (end-to-end)
Travel-to-Job distance-based fees follow a simple workflow—from configuration, to estimating, to billing—so travel costs are applied consistently across quotes, bookings, and invoices.
- Set your company travel policy: Enable Travel-to-Job and define your default Free Radius, Rate per Km/Mi, and (recommended) an optional Max Billable Distance cap.
- Apply service-level rules (optional): For specific services, inherit company defaults or set different travel values (e.g., after-hours call-outs vs routine maintenance).
- Estimate travel at quote/portal stage: When a customer/service address is entered, OctopusPro can calculate road distance (recommended via Google Maps) and prefill a travel fee. Admin users can still override the values if required.

- Review on the booking (per appointment/service): Travel charges are typically stored per appointment/service inside a booking—useful for multi-day bookings, follow-ups, or bookings with multiple services.

- Dispatch & optional tracking: When the fieldworker taps On the way / En Route in the Fieldworker App, the system can:
- Prompt to notify the customer by SMS (ETA message),
- Prompt to start navigation (Maps), and
- Capture live GPS tracking/mileage (if enabled and permissions are granted) to improve accuracy.
- Invoice as a clear line item: The travel fee flows through to the invoice and is typically shown as a separate, clearly named line item (recommended) such as Travel Fee / Travel-to-Site / Mileage Surcharge.
Related guides (open in a new tab):
- Booking Settings, Flags & Permissions
- Google Maps API Integration
- On-the-Way SMS Notifications (ETA & Tracking)
- Fieldworker GPS Tracking (Live Tracking)
- Navigate to Customer Locations (Directions & ETA)
- Invoice & Quote PDF Template Customization
Requirements (important)
Distance-based travel fees rely on address and mapping data. To ensure your travel calculations, ETAs, and tracking work correctly, confirm the following:
- Valid, complete addresses (critical): Your service address and origin address (branch/depot or fieldworker origin) must be accurate and properly formatted. Missing street numbers, incorrect suburbs/postcodes, or incomplete addresses can cause incorrect distance calculations and travel fees.
- Google Maps integration (recommended for best accuracy): Enables real-road distance estimation during quoting and Customer Portal bookings (more accurate than straight-line distance). See: Google Maps API Integration.
- Fieldworker location permissions (optional): Required if you want live GPS tracking, improved ETA accuracy, or mileage capture when fieldworkers tap On the way / En Route. Ensure the Fieldworker App has location access enabled and the device isn’t restricting background location.
- Customer SMS setup (optional): If you use On-the-Way SMS notifications, confirm your SMS sending configuration is enabled and that customer mobile numbers are saved correctly (including country code where required).
Tip: If you manage multiple depots/branches or frequently reassign bookings, review travel fees after reassignment to ensure the distance is calculated from the correct origin.
Step 1: Enable & configure distance-based travel fees
Enable Travel-to-Job / Mileage Surcharge at the account level, then define your default travel pricing rules. These defaults can later be inherited by services (or overridden per service if needed).
- Go to Settings → General Settings → Booking Settings.
- Find and enable the Travel-to-Job / Mileage Charges option (the exact label may vary by account).
- Configure your default travel values:
- Free Radius (Km/Mi): the distance included at no charge (enter 0 if you bill from the first km/mi).
- Rate per Km/Mi: the amount charged per km/mi beyond the free radius.
- Max Billable Distance (Km/Mi) (recommended): caps the distance used for billing to keep travel fees predictable and prevent “sticker shock”.
- Click Save to apply your changes.

Tip: Even if you rarely travel long distances, setting a sensible Max Billable Distance helps avoid disputes and keeps pricing consistent for remote jobs.
Step 2: Optional service-level overrides
If certain services have different travel costs or pricing rules (for example, after-hours emergency call-outs vs scheduled maintenance), you can override your company travel settings on a per-service basis.
- Go to Settings → Service Settings → Services.
- Open the service you want to update (click Edit).
- Find the Travel-to-Job / Travel Charges section (wording may vary by account).
- Select one of the following options:
- Use account-wide settings: the service inherits your company defaults (free radius, rate, and cap).
- Custom for this service: enter a different Free Radius, Rate, and/or Max Billable Distance for this service only.
- Click Save.
Common reasons to use service overrides:
- Emergency / after-hours services: higher travel rate to reflect overtime, urgency, and availability.
- Specialist vehicles or equipment: higher operating cost (e.g., heavy vehicles, trailers, large tools).
- Different service areas: one service covers a wider radius than others.
- Low-margin services: adjust travel rules to protect profitability.
Tip: Keep your company travel settings as your baseline, then override only the services that truly need different travel pricing. This makes your pricing policy easier to maintain over time.
Where distance starts (origin address)
Distance-based travel fees are calculated using the distance between your origin and the customer’s service address. Your origin is the “starting point” OctopusPro uses to measure travel distance.
Depending on your account configuration and workflow, the origin may be:
- Assigned fieldworker’s origin address: common for mobile teams (e.g., technician home base, vehicle yard, or where the day starts).
- Company/branch depot (dispatch hub) address: common for multi-branch businesses where travel is measured from the nearest office/warehouse.
Best practices:
- Keep origin addresses current: outdated origins lead to incorrect travel fees and inaccurate ETAs.
- Review after reassignment: if you reassign a booking to a different fieldworker (or move it to another branch), re-check the travel fee so it reflects the new origin and route.
- Use consistent rules: decide whether travel should be measured from a depot or from the assigned technician, and apply that approach consistently across the business.
How travel fees are calculated
Travel-to-Job fees are calculated per appointment/service using a simple formula: OctopusPro takes the job distance, applies your free radius, and then multiplies the remaining (billable) distance by your rate. If you’ve set a maximum billable distance (cap), the system will never bill beyond that cap.

Inputs used in the calculation (per appointment/service):
- Distance (Km/Mi): the distance used for pricing. This may be:
- Estimated road distance at quote/portal stage (recommended via Google Maps), and/or
- Recorded travel distance from tracking (if enabled) when the fieldworker is En Route/On the way.
- Free Radius (Km/Mi): complimentary distance included at no charge (enter 0 if you bill from the first km/mi).
- Rate per Km/Mi: the charge applied per km/mi beyond the free radius.
- Max Billable Distance (Km/Mi) (optional): caps the distance used for billing to keep fees predictable.
Typical calculation logic (conceptually):
- BillableDistance = min(Distance, MaxBillableDistance)
- ChargedDistance = max(0, BillableDistance − FreeRadius)
- TravelFee = ChargedDistance × RatePerKm/Mi
Important notes:
- Inside the free radius: if Distance is less than or equal to the Free Radius, the Travel Fee is $0.
- Cap behaviour: if Distance exceeds the Max Billable Distance, OctopusPro bills using the cap value instead (helps avoid “sticker shock”).
- Estimates vs actuals: the estimated distance at quote stage can differ from the route actually driven (detours, traffic, road closures). Review/edit the travel fee if your policy requires it.
Need to bill all mileage door-to-door? If your business charges for every km/mi driven (common in towing, haulage, transport, and logistics), use GPS Mileage Billing instead of a “free radius” travel-to-job model.

Admin: Review/edit travel fees on quotes & bookings
Admins can review and adjust travel fees at both the quote and booking stage. Travel fees are typically stored per appointment/service inside a booking—this is especially helpful for multi-day jobs, follow-up visits, or bookings with multiple services.

To review or edit travel fees:
- Open the relevant Quote or Booking in the Admin portal.
- Locate the appointment/service block (the same section that shows the assigned fieldworker (Hero)).
- Expand Travel Charges / Travel-to-Job (label may vary).
- Review the fields and adjust if required:
- Distance (Km/Mi): the distance being used for the calculation (estimated and/or recorded).
- Free Radius (Km/Mi): complimentary distance included at no charge.
- Rate per Km/Mi: the amount charged beyond the free radius.
- Max Billable Distance (Km/Mi): the cap applied to prevent excessive travel fees (if enabled).
- Click Save to apply the updated travel values.

When should you edit travel fees?
- Address changes: the service location was updated after the quote/booking was created.
- Reassignment: the booking was assigned to a different fieldworker or branch (origin changed).
- Known detours or access constraints: toll roads, road closures, remote access routes, or customer-requested alternate routes (based on your policy).
- Special approvals: waiving travel for VIPs, fixed-price contracts, or commercial accounts with agreed terms.
Best practice: Review travel fees before sending the quote and again before invoicing, so customers see the charge upfront and disputes are minimised.
Fieldworker App: On the way, SMS, navigation & live tracking
When a fieldworker is ready to travel to a job, the Fieldworker App typically shows an action such as On the way, En Route, or Leave now (labels may vary by account). Tapping this status can trigger a workflow that improves customer communication and travel accuracy:
- Optional customer SMS notification (ETA message)
- Navigation prompt (open the job address in Maps)
- Optional live GPS tracking (improves ETA visibility and can support mileage capture, depending on your settings)

Fieldworker step-by-step
- Open the booking in the Fieldworker App.
- Tap On the way / En Route / Leave now.
- If prompted to Notify Customer, choose:
- Send (recommended) to notify the customer by SMS (often includes ETA, if enabled).
- Cancel to skip sending an SMS.
- If prompted to Start Navigation, choose an option such as:
- Enable Live Tracking (recommended): shares progress/ETA (requires location permission and may run in the background).
- Open Maps: launches turn-by-turn navigation (Google Maps or your device’s default maps app).
- Cancel: proceed without navigation/tracking.
Location permissions (important): For best results, fieldworkers should allow location access for the Fieldworker App and keep location services enabled while travelling. If background location or battery optimisation restricts the app, tracking/ETA updates may be delayed or incomplete.
Control “On the way” customer SMS (Admin)
You can turn on-the-way SMS notifications on/off and customise the message customers receive.
Enable/disable the on-the-way SMS prompt:
- Go to Settings → Booking Settings → Fieldworker Permissions.
- Toggle the option similar to: Notify customers by SMS when fieldworkers are on their way.
Customise the SMS template (branding + placeholders):
- Go to Settings → Communications → Templates & Canned Responses.
- Open the SMS tab.
- Edit the “On the way” template (name may vary).
- Insert placeholders (merge fields) such as customer name, fieldworker name, and ETA where available.
Related guides (open in a new tab):
- On-the-Way SMS Notifications (ETA & Tracking)
- SMS Templates (Create/Edit)
- Template Placeholders (Merge Fields)
- Navigate to Customer Locations (Directions & ETA)
Quotes, invoices & customer transparency
To reduce disputes and increase trust, present travel charges as a separate, clearly labelled line item on quotes and invoices. This makes the fee obvious, measurable, and easy for customers to understand (instead of feeling like it was “hidden” in labour or materials).
Recommended line item names: Travel Fee, Travel-to-Site, Travel-to-Job, Mileage Surcharge (choose one and use it consistently).
Recommended customer-friendly wording (use on quotes, confirmations, or your website pricing policy):
- Simple policy: “First 10 km free, then $1.75/km, capped at 100 km.”
- Expectation setting: “Travel fees are calculated based on distance from our dispatch hub (or your assigned technician’s origin) to your service address.”
- Optional clarification: “If the service address changes after booking, travel fees may be recalculated.”
Best practice: Show the travel fee at the quote stage whenever possible. Customers are far more comfortable approving a travel fee upfront than seeing it added for the first time on the final invoice.
Tax note: Travel fees typically follow your account’s tax rules (based on how the line item is configured in your invoice settings/templates). If you’re unsure how travel charges appear on PDF quotes/invoices, review your template configuration.
Related guide (open in a new tab): Invoice & Quote PDF Template Customization
Use cases & examples
Below are common distance-based travel fee setups used across industries. These examples assume a Travel-to-Job model (charge only beyond a free radius). If your business bills all mileage door-to-door (e.g., towing/haulage), you may prefer GPS Mileage Billing.
| Industry | Typical settings | Example travel fee |
|---|---|---|
| Pool Maintenance | Free radius 10 km Rate $1.75/km |
Distance 25 km → (25 − 10) × 1.75 = $26.25 |
| HVAC Service | Free radius 25 km Rate $2.00/km Cap 50 km |
Distance 40 km → (40 − 25) × 2.00 = $30.00 (cap not reached) |
| Mobile Veterinary | Free radius 15 km Rate $1.00/km |
Distance 42 km → (42 − 15) × 1.00 = $27.00 |
| Courier / Last-Mile Delivery | Free radius 0 km Rate $2.50/km |
Distance 7 km → 7 × 2.50 = $17.50 |
| Mobile IT Support | Free radius 20 km Rate $1.00/km |
Distance 45 km → (45 − 20) × 1.00 = $25.00 |
| Furniture / Specialty Movers | Free radius 20 mi Rate $3.10/mi |
Distance 55 mi → (55 − 20) × 3.10 = $108.50 |
| Snow Services / Seasonal Call-outs | Free radius 25 mi Rate $2.50/mi Cap 100 mi |
Distance 60 mi → (60 − 25) × 2.50 = $87.50 (cap not reached) |
| Photography (Weddings / Events) | Free radius 30 mi Rate $0.45/mi |
Distance 75 mi → (75 − 30) × 0.45 = $20.25 |
| Towing / Haulage (often door-to-door) | Often billed as full mileage + optional base/hook fee (separate line item) | If you bill every mile/km driven, use GPS Mileage Billing instead of a “free radius” model. |
Tip: If you want travel fees to appear as a separate line item on invoices (recommended), name it clearly (e.g., Travel Fee / Travel-to-Site / Mileage Surcharge) and show the policy in your quote/booking confirmation.
Best practices
Use these best practices to keep travel fees fair, predictable, and easy to manage—while minimising billing disputes.
- Set a maximum billable distance (cap): This keeps fees predictable and prevents “sticker shock” on long-distance jobs.
- Show travel fees early: Display travel charges at the quote stage (best), and repeat them in booking confirmations and your website pricing policy.
- Use one consistent label everywhere: Pick a name such as Travel Fee or Mileage Surcharge and use it consistently on quotes, invoices, and templates.
- Keep addresses accurate and complete: Incorrect street numbers, suburbs, or postcodes lead to incorrect distance calculations, ETAs, and travel fees.
- Standardise your origin rules: Decide whether travel is measured from a depot/branch or the assigned technician’s origin, and apply that approach consistently.
- Use service-level overrides sparingly: Keep company defaults as your baseline, then override only services that genuinely need different travel rules (after-hours, specialist vehicles, low-margin services).
- Train fieldworkers on “On the way / En Route”: If you use ETA SMS or live tracking, consistent usage improves customer communication and tracking accuracy.
- Review travel values after changes: Re-check travel fees whenever the service address changes, the job is reassigned to a different fieldworker/branch, or a major route constraint is known.
Troubleshooting
If travel fees, distance estimates, or on-the-way notifications don’t behave as expected, use the checks below.
Travel fees are not showing on quotes or bookings
- Confirm Travel-to-Job / Travel Charges is enabled under Settings → General Settings → Booking Settings.
- Confirm the service is configured to use travel fees (either Use account-wide settings or a custom service override is enabled).
- If you have multiple services in the booking, check each appointment/service block—travel fees may be stored per appointment/service.
Distance is 0, missing, or looks wrong
- Validate the job address: confirm street number, street name, suburb/city, state, and postcode are correct.
- Validate the origin address: confirm the correct branch/depot or assigned fieldworker origin is set (outdated origins are a common cause of wrong distance).
- Check Google Maps integration (recommended for road-distance estimates): Google Maps API Integration.
- Recalculate after changes: if the booking address or assigned fieldworker changed, re-check the travel values—distance may need to be refreshed based on the new origin/address.
Customer didn’t receive the On-the-Way SMS
- Confirm the customer mobile number is saved correctly (including country code where required).
- Ensure the fieldworker tapped Send when prompted to notify the customer.
- Confirm the permission/setting is enabled under Settings → Booking Settings → Fieldworker Permissions (option similar to “Notify customers by SMS when fieldworkers are on their way”).
- If your account uses a connected SMS provider/number, confirm it is configured and active.
Travel fee seems too high (or higher than expected)
- Review your Free Radius and Rate per Km/Mi (company defaults and any service overrides).
- Set (or reduce) the Max Billable Distance cap to keep charges predictable.
- Confirm the booking was not reassigned to a different fieldworker/branch (origin change can increase distance).
- Check for address errors (wrong suburb/postcode often causes large distance changes).
- If your policy differs from the recorded route (detours, toll roads, customer-requested alternate routes), adjust the travel fields on the booking to match your approved policy.
Live tracking/ETA is not updating
- Ensure the fieldworker has granted location permission to the Fieldworker App and location services are enabled on the device.
- On Android, check that battery optimisation is not restricting background location updates for the Fieldworker App.
- Confirm the fieldworker used On the way / En Route (this commonly triggers tracking workflows).
FAQ
Can I override travel fees on a specific quote or booking?
Yes. You can edit travel fee fields per appointment/service (Distance, Free Radius, Rate, and Max Billable Distance) before saving and invoicing.
Is the travel fee applied per booking or per appointment?
Travel fees are typically applied per appointment/service inside a booking. This is useful for multi-day work, follow-up visits, or bookings that include multiple services.
What’s the difference between Travel Charges and service areas (travel radius)?
Travel Charges affects pricing (a fee shown on quotes/invoices). Service areas / travel radius affects operations (where customers can book and how dispatch/availability rules work).
Do I need live GPS tracking for distance-based travel fees?
No. Travel fees can be estimated using the service address and your travel rules, then reviewed/edited by Admin users. Live tracking is optional and is mainly used to improve ETA visibility and mileage accuracy (depending on your workflow and permissions).
Does Travel-to-Job bill one-way or round trip?
Travel-to-Job is commonly based on the one-way trip to the job (for example, the segment between En Route and Arrived). If your pricing policy bills round trip, apply a consistent rule (for example, doubling the distance or rate) and communicate it clearly to customers.
Why should I set a Max Billable Distance (cap)?
A cap keeps travel fees predictable, reduces disputes, and avoids “sticker shock” for customers in remote areas.
When should I use GPS Mileage Billing instead?
Use GPS Mileage Billing when you bill all mileage door-to-door (common in towing, haulage, transport, and courier line-haul)—where driving distance is a core part of the service.
To stay updated, please subscribe to our YouTube channel.
