Rate Management

Apply the right rate to every job without rebuilding a spreadsheet.

Four rate structures. Client-specific rate cards. Effective dating for future rate changes. Separate client charge and subcontractor pay rates on the same job. Rates attach automatically at job creation — no manual lookup required.

Per-tonne, per-load, hourly, fixedClient rate cardsEffective datingSub pay vs client chargeXero-connected
4 rate typesper-tonne, load, hourly, fixed
Per-clientindividual rate cards
Effective datesfuture rate changes
Dual ratesclient charge + sub pay
Auto-applyat job creation
Xero syncrate on invoice
Why Haulage Rates Are Different

Bulk haulage rates do not fit parcel pricing models. This one is built for bulk.

Parcel TMS platforms charge per consignment or per stop. Bulk haulage pricing is based on weight moved, loads completed, hours worked or fixed job rates — and the same job type might carry a different rate for Client A versus Client B. A construction aggregate client on a long-term contract gets a different per-tonne rate to a one-off civils project. When you also use subcontractors, you need to track what you charge the client and what you pay the sub — on the same job record.

HaulageOps rate management is built for this. It handles four rate structures, supports individual client rate cards, allows rate changes to take effect on future dates without breaking historical records, and stores the client charge rate and subcontractor pay rate separately on every job.

The four rate structures

  • Per-tonne: charge based on weight delivered — the most common bulk haulage rate type for aggregates, fill, and construction materials
  • Per-load: flat rate per trip completed — useful for standard runs where load weight is consistent
  • Hourly: rate based on time — used for plant movements, standby, site work or variable-duration jobs
  • Fixed-fee: agreed fixed price per job regardless of weight, time or loads — used for project-based pricing or long-distance one-off movements

A single client may use different rate types across different job types — per-tonne for aggregate delivery, hourly for site preparation support, fixed-fee for a one-off long-haul move. All are managed within the same rate card for that client.

HaulageOps — Client Rate Card+ Add Rate

Client: "Balfour Beatty Civil Engineering"

Rate TypeDescriptionUnitClientSub PayEffectiveStatus
Per-TonneType 1 Crushed Aggregatetonne$18.50$14.0001 Jan 2026Active
HourlyPlant Supporthour$145.00$110.0001 Jan 2026Active
Per-LoadStandard 10-tonne Runload$210.00$165.0001 Mar 2026Scheduled

Scheduled row shown in a different colour to indicate it is not yet active.

Client Rate Cards

Different clients, different rates. Managed per client — not per job.

Maintaining different rates for different clients on a spreadsheet requires either a separate tab per client or a lookup formula that breaks whenever the structure changes. HaulageOps stores rate cards at the client level. When a job is created for a client, the applicable rates are available from the client's rate card and applied automatically — no manual lookup, no chance of applying the wrong rate.

Rate card per client

Each client company in HaulageOps has their own rate card. Rates are set per job type and rate structure for that specific client. Client A's per-tonne aggregate rate has no bearing on Client B's rate for the same service.

Rate confirmation before dispatch

Before a job is dispatched, the rate applied to that job is confirmed in the system. Dispatchers can see what rate has been attached. This prevents a job from being dispatched without a rate — which would create billing problems downstream.

Client sees their rate card

The rate card set for a client in HaulageOps is the same rate card visible to that client in their portal. There is no separate version to maintain — the rate in the system is the rate the client sees. Rate disputes caused by emailed spreadsheets going stale are eliminated.

Effective Dating

Rate changes in future without breaking historical records.

When you negotiate a new rate with a client that takes effect from the first of next month, you do not want to edit the current rate and accidentally apply the new price to jobs already completed at the old rate. Effective dating in HaulageOps lets you set a future start date on a new rate. Until that date, the existing rate applies. From that date, the new rate activates automatically.

How effective dating works

  • Create a new rate with a future effective date — old rate remains active until then
  • On the effective date, the new rate becomes the active rate for new jobs
  • Jobs completed at the previous rate retain the rate at which they were created
  • Historical financial records are not affected by rate changes made after the job is completed
  • Rate history is visible in the rate card — you can see when each rate was active

This is important for financial integrity. An invoice for a job completed in January must reflect the rate active in January — even if you are raising that invoice in March and a new rate has since been set.

Practical use cases

  • Annual rate review: set new rates before the end of the current period, effective 1st of the new year
  • Project-based pricing: set a specific rate for the duration of a construction project with a defined end date
  • Fuel levy adjustments: create a new rate with updated per-tonne pricing from the applicable date
  • Contract renewals: update rates when a contract is renewed without disturbing historical billing records

See how contracts connect to rates: Contract Management — contracts in HaulageOps can carry their own rate schedules and auto-expiry alerts.

Dual Rate Management

Client charge rate and subcontractor pay rate — separated on every delegated job.

When you delegate a job to a subcontractor, two commercial transactions are happening simultaneously: you are charging your client, and you are paying your subcontractor. The difference between these two figures is your margin on that job. HaulageOps stores both rates on the same job record, keeps them completely separate, and ensures neither party sees the other's rate.

Client charge rate

The rate you charge the client for the job. Comes from the client's rate card. Applied to the invoice generated for the client. Visible to your admin and finance team. Visible to the client in their portal. Never visible to the subcontractor.

Subcontractor pay rate

The rate you pay the subcontractor for completing the job. Set in the subcontractor's rate or agreed at job delegation. Visible to the subcontractor in their portal. Used for your cost tracking and margin reporting. Never shown in the client-facing invoice or client portal.

Margin in the system

The margin between client charge and subcontractor pay is tracked within HaulageOps financial reporting. It never lives in a spreadsheet column, never requires mental arithmetic, and is never at risk of being accidentally disclosed to either party through a shared document or email.

Excel Rate Sheets vs HaulageOps

What rate management on a spreadsheet actually costs you.

Rate management scenarioExcel rate sheetHaulageOps
Different rate per client for same serviceSeparate tab or lookup formula — breaks on restructureSeparate rate card per client, auto-applied at job creation
Rate change taking effect next monthEdit cell now, hope no one applies it to current jobsSet new rate with effective date — old rate stays active until then
Subcontractor pay vs client chargeTwo columns in a spreadsheet someone emails aroundDual rates on every job — isolated per portal, private by default
Check what rate was applied to a past invoiceFind the version of the spreadsheet from that dateRate is stored on the job record — visible in invoice and audit trail
Dispatcher applies wrong rate to jobPossible — rate is looked up manuallyRate auto-applied from client rate card — requires deliberate override
Client queries their rateEmail them the spreadsheet — which may be outdatedClient views live rate card in their portal — always current
Rate feeds through to Xero invoiceManual re-entry into Xero or export stepRate on job record flows through to invoice, synced to Xero
Related Platform Features

Rate management connects to these platform areas.

Billing & Invoicing

Rates set in the rate management module flow directly into invoice generation. When a job is completed, the invoice is built using the rate attached to the job record — no re-entry, no rate lookup, no manual calculation.

Xero Integration

Invoices carrying the job rate sync to Xero via OAuth2. The rate, quantity and job detail go across with the invoice. Payment events from Xero update the job record back in HaulageOps. No double-entry of rate information.

Contract Management

Contracts in HaulageOps can carry rate schedules. When a contract is set up with a client, the rates in that contract can be linked to the client rate card. Contract expiry alerts ensure rate cards are reviewed when contracts come up for renewal.

Also see: Rate & Contract Management — the operational case for keeping rates in the system rather than on a spreadsheet.

Common Questions

Frequently asked about HaulageOps rate management.

Can I have different rates for the same service type across different clients?

Yes — this is the core design of the rate management module. Each client has their own rate card. You set the rate for each service type (per-tonne aggregate delivery, hourly plant support, etc.) independently for each client. There is no global rate that all clients share — every rate card is client-specific. This means Client A's per-tonne aggregate rate has no effect on Client B's rate for the same service.

What happens if a rate changes halfway through a long project?

Use effective dating to handle this. Create a new rate with an effective start date matching the point at which the new rate applies. Jobs created before that date use the original rate. Jobs created on or after the effective date use the new rate. Historical jobs and their invoices retain the rate that was active when they were created — no retroactive changes occur. This is important for invoices already raised and for financial record integrity.

How does Xero see the rate on an invoice?

When an invoice is generated from a completed job in HaulageOps, it carries the rate, quantity and calculated value from the job record. This invoice is then pushed to Xero via the OAuth2 integration. The rate type, unit and amount appear as line items on the Xero invoice — no manual re-entry required. If a job is per-tonne, the tonnage and per-tonne rate appear as the invoice line. If hourly, the hours and hourly rate appear. The Xero invoice is built from the job record, not manually constructed.

Can a dispatcher change the rate on a job before dispatch?

Rates are applied automatically from the client rate card when a job is created, but the system allows the rate to be reviewed and adjusted before dispatch confirmation if a job requires a different rate. Any rate override is logged in the audit trail with the user identity and timestamp. This creates an auditable record if a rate is ever queried — you can see whether the rate on a completed job matches the client rate card or was overridden at dispatch.

Does the subcontractor see the rate I charge the client?

No. The client charge rate and the subcontractor pay rate are stored separately on the job record, and each portal shows only the relevant rate. The subcontractor portal shows the subcontractor pay rate only — the client charge rate and your margin are never visible to the subcontractor. The client portal shows the client charge rate only — the subcontractor pay rate is never visible to the client. Both rates are visible internally to your admin, dispatch and management users.

What rate types does HaulageOps support?

HaulageOps supports four rate structures: per-tonne (charge per unit of weight), per-load (flat rate per completed trip regardless of weight), hourly (rate multiplied by time worked), and fixed-fee (an agreed price for the job regardless of weight, loads or time). A single client rate card can include multiple rate types for different service categories — per-tonne for aggregate delivery, hourly for plant support, fixed-fee for a specific one-off project movement.

See rate management in a live demo.

Book a 20-minute session and see how client rate cards, effective dating, dual rates and Xero connection work together — with your rate structure as the example.