Backhaul Freight: Fill Empty Miles With AI Load Matching

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Backhaul Freight: Fill Empty Miles With AI Load Matching.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Backhaul Freight: Fill Empty Miles With AI Load Matching.

A small carrier finds backhaul loads by combining three sources: regular shippers near the delivery point, load boards searched before the truck unloads, and a sheet of its own lane history. AI can realistically rank the options by pay per day and check the arithmetic. It cannot see live boards or book anything for you.

A backhaul is the load that brings the truck home, or towards the next headhaul, after the main delivery. Empty miles are called deadhead. The commonly repeated mistake is to compare backhauls by rate per mile. A 300-mile load at a high rate that leaves the truck stuck for a day can pay worse per day than a short one that gets it back for the next job.

Follow me on Instagram@sagnikteaches

What an empty mile actually costs you

Before searching anything, put a number on the empty run. Take your cost per mile, which includes fuel, driver pay, insurance, truck payments, tyres and maintenance, and multiply by the empty miles. Then add the day the truck is not earning.

Connect on LinkedInSagnik Bhattacharya

Here is the main worked example. An illustrative fleet of four trucks. A truck delivers a full load 420 miles out and must return 420 miles. The owner's running cost is $1.85 a mile all-in, an assumed figure that you should replace with your own. The empty return costs 420 × 1.85 = $777. If the headhaul pays $1,260 (about $3.00 a mile), the round trip makes $1,260 − $777 − $777 = a loss of $294 before any margin. The empty leg is not a small leak. It is the difference between a profitable lane and a losing one.

Subscribe on YouTube@sagnikteaches

Now suppose a backhaul of 380 miles, 40 miles from the drop-off, pays $760. The truck then runs 40 empty miles to pick up, 380 loaded, and about 40 more on to the yard, so about 80 empty miles. The simplest sum is total income minus total cost. Total miles: 420 out + 40 to pickup + 380 loaded + 40 home = 880 miles at $1.85 = $1,628. Income: $1,260 + $760 = $2,020. Result: +$392. A load that pays only $2.00 a mile moved the trip from a $294 loss to a $392 profit. That swing of $686 is what you are searching for.

The sum shows why the rate per mile alone misleads. What matters is the extra income the backhaul adds, less the extra miles and hours it costs. A job that adds $760 of income and $0 of extra cost is excellent. A job that adds $900 and $700 of extra cost is not.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Source one: the shippers and receivers you already know

The cheapest backhaul is the one you did not have to search for. Every receiver you deliver to ships something out, or sits near a business that does. Before the truck unloads, ask the dock or the receiving contact two questions: what do you send out of here, and who does that for you now?

Turn the answers into a lane history sheet. It needs one row per trip with these columns: date, origin, destination, loaded miles, deadhead miles before and after, rate, fuel, tolls, days out, and a note on how the load was found. After three months the sheet shows which lanes keep working and which return legs you keep running empty. Those empty legs are your target list.

A short illustration. A refrigerated carrier delivers produce to a distribution centre weekly and returns empty. A conversation at the dock reveals that a packaging supplier two miles away ships pallets back towards the carrier's home yard twice a week, currently with a broker who adds a margin. A direct arrangement might cover a third of the return leg every week without any board search. Nothing in that example needed software; it needed a question asked at the right door.

Keep a "backhaul contacts" list with the company, what they ship, equipment needed, the days they ship and who answers the phone. A dozen names with dates on them are worth more than a daily scroll through a board.

Source two: load boards, searched before the truck is empty

Load boards list freight posted by brokers and shippers. The big names include DAT and Truckstop, and there are smaller ones. Prices and features change: on 5 November 2026 DAT's carrier plans on its own page ran from $59 to $339 a month, with the tiers differing in rate data and tools, so check the current plan before choosing. Boards let you narrow a search to loads that fit your truck, and DAT's Load Match Alarms tell you when a new load matches your search, which saves refreshing the screen all morning.

Two habits improve results. First, search from where the truck will be, not where it is: if it unloads at 2pm, search at 10am for pickups near the drop-off between 3pm and the next morning. Second, search widely around the origin but narrowly around the destination. A pickup 50 miles from the drop-off is acceptable; a delivery that strands the truck 300 miles from your next headhaul is not.

Posted rates are asking prices. Treat the first number as an opening position, and have your minimum written down before you call. A written floor, for example "not under $1.95 a loaded mile or $480 net of fuel, whichever is higher", stops you accepting a poor load because the clock is ticking.

Avoid loads that look attractive for the wrong reason. A very high posted rate on a short lane with a long unpaid wait at the shipper is a familiar one. Check the broker's payment terms, and use your normal credit checks. Chasing late invoices and missing proofs of delivery is its own job, and slow-paying brokers erase the gain from a good rate.

Source three: your own lane sheet, read by AI

This is where AI helps most, and it needs no special software. Export or type your last three to six months of trips into a spreadsheet. Then ask a chat assistant to find the patterns you cannot see by scrolling.

Below is my trip history (CSV): date, origin, destination, loaded_miles, empty_miles_before, empty_miles_after, revenue, fuel, tolls, days_out, how_found.
1. For each destination I deliver to more than twice, show the share of return trips that ran empty.
2. List the three destinations with the most empty return miles in total.
3. For loads found through brokers on the return leg, show average revenue per day out compared with loads from regular shippers.
State how many rows you read. Do not guess missing values; list rows with blanks.

An illustrative output: of 64 delivery trips, 29 returned empty (45 per cent). Three destinations accounted for 18 of those 29, and two had a regular receiver who might ship out. Loads from regular shippers averaged $410 revenue per day out; board loads averaged $330. These are made-up numbers, but the shape is typical: the sheet tells you where to put sales effort, which an owner's memory rarely does.

What to fix in the output: the assistant may treat days out as whole days when some trips were part-days, and may mix up trips with the same destination but different shippers. Ask it to show its grouping and correct the labels. For a general method of uploading a sheet safely, see what to upload and check when AI analyses a spreadsheet.

Ranking backhaul options by pay per day

Once you have three to eight candidate loads for the return leg, rank them. A rate per mile ranking favours long loads. A pay-per-day ranking asks the question that matters: how much does the truck earn between unloading here and being ready for the next job?

Use this formula for each option: (revenue minus fuel minus tolls minus extra driver cost) divided by days from drop-off until the truck is free at the next headhaul origin. Add the empty miles to pickup and from the delivery to the next origin, and charge them at your running cost.

An illustrative table for a truck that unloads on Tuesday at noon and needs to be at its next headhaul origin, 420 miles away, by Thursday morning. Empty miles include the run to the pickup and the run from the delivery on to that origin:

OptionRevenueLoaded milesEmpty milesCost at $1.85 a mileNetDays usedNet per day
A: regular shipper, 300 miles$900300125$786$1141.0$114
B: board load, long$1,25052090$1,129$1212.5 (late for headhaul)$48
C: broker load, medium$76038080$851-$911.5-$61
D: run empty$00420$777-$7771.0-$777

Option A wins here even though B nets $7 more in total, because B ties the truck up for two and a half days and makes it late for Thursday's headhaul, which would cost far more than $7. Option C is the backhaul from the main worked example: it loses $91 on a full-cost basis, yet it beats running empty by $686, because the truck has to get to its next origin either way. This is the second sum to do: the truck's fixed costs are paid whether it earns or not, so the useful comparison is often the extra income against the extra cost, not the full cost. Use both views. The full-cost view tells you whether the lane is healthy; the extra view tells you whether to take today's load.

Give the assistant the table as text and ask it to rank by net per day and flag any option that makes the truck miss the next pickup. Ask it to show the arithmetic for each row. Then check two rows yourself. If a chat assistant is wrong anywhere, it is usually in the sums, as covered in why AI gets sums wrong and what to check. A pasted formula in your own spreadsheet is more reliable than a typed answer.

A prompt to rank this afternoon's options

I run one flatbed. It unloads at [drop-off town] at 12:00 Tuesday. It must be at [next headhaul origin] by 08:00 Thursday. My cost is $1.85 per mile, empty or loaded. Driver hours: [the daily driving limit my drivers are bound by] a day maximum.
Here are the return options (lane, loaded miles, deadhead miles to pickup, deadhead miles from delivery to next origin, rate, pickup window, delivery window, fuel and tolls estimate):
[paste 3-8 options]
For each option, calculate revenue minus (miles × cost per mile) minus tolls, and the hours needed. Rank by net per day. Mark any option that cannot meet the Thursday deadline within the driving-hours limit. Show every calculation. Finish with the one question I should ask the broker before accepting the best option.

The final line of that prompt is worth keeping. Typical answers: "Is the delivery appointment fixed, and what is detention pay after two hours?" or "Does the rate include the fuel surcharge?" A sample output from the assistant would list the four options, show that D is worst by far, and ask whether A's pickup window is firm. That is a useful answer, because it points to a phone call, not a decision.

Driver hours are a legal limit in many places and the rules vary. Do not trust a chat assistant to know the rule that applies to your drivers; give it the limit you are bound by, and confirm it with your compliance source.

Where AI load matching helps and where it does not

Load boards now build some of this in. DAT's page says its Load Recommendations learn how you run and put best-fit freight at the top of your list, and its TriHaul tool suggests triangle routes, where a third leg fills the gap between the drop-off and home. Truckstop promotes AVA, a voice assistant for searching loads and checking rates on its Advanced and Pro plans, and describes AI-powered matching on its broker side. These features work from your searches, postings and history. I have not tested them, so test any of them the way you would test a new driver: with one truck, for one month, with a written measure of success.

What a chat assistant does well: rank the options you paste in, check arithmetic you ask it to show, draft the short message to a broker or shipper, and summarise a lane history. What it does badly: know today's market, read live boards, judge a broker's reliability, or know your driver's remaining hours. What it must not do: decide.

A realistic limit is data freshness. Loads posted this morning may be gone by lunchtime, so a ranking built on stale listings is useless. Use the assistant at the end of the process, on options you have already filtered and called.

For software that does hold the loads and paperwork together, what to check in AI software for a small fleet is the right next read. For the paperwork after the load is booked, using AI on load paperwork without retyping covers the rate confirmation and the bill of lading.

Messages that win the return load

Many backhauls come from a message sent at the right moment. Three templates:

To a regular receiver, before the delivery: "Hi [first name], we deliver to you on [day]. Our truck goes back towards [area] empty. If you have anything for that direction in the next week, send me the details and I'll quote it directly. [your name]."

To a broker, about a posted load: "Is the [lane] load still open? Truck is empty at [location] from [time], 53ft dry van (or your equipment). Rate to cover is $[floor] all-in. Pickup and delivery appointments firm or flexible? Detention after how many hours?"

To a shipper whose load you have carried once: "We moved [item] for you on [date] and the driver reported it went smoothly. We run that lane [days]. Do you have a regular return or outbound requirement we could take weekly?" Use real information in the message. An assistant can polish the wording, but keep it to the facts you can stand behind.

Checks before you commit the truck

A short list, run through every time, in the order that rejects the worst loads fastest:

  • Does the pickup time fit the hours your driver has left today, including loading time?
  • Does delivery leave the truck able to reach the next headhaul on time?
  • Is the weight and equipment as described, and is there any special handling such as tarps, straps or temperature control?
  • Has the broker or shipper passed your credit check, and what are the payment terms?
  • What is detention and what happens if the receiver is late or closed?
  • Is the posted rate all-in, with fuel surcharge and any accessorial charges stated in writing?

An assistant is useful for one more thing here: turning that checklist into a half-page you keep next to the dispatch phone, with your own thresholds filled in. Review it every quarter against what actually went wrong.

When a rate looked good and the week went badly

An illustrative case. A two-truck carrier took a return load at a strong rate per mile, 480 miles for $1,150. The pickup was a drop-yard with a late appointment, the shipper loaded slowly, and the driver waited four hours without detention being agreed in writing. The truck delivered a day late for its next headhaul, which paid $1,260 and was given to another carrier. The week's net was worse than if the truck had run home empty and been ready.

The fix was two lines in the checklist: confirm detention terms before accepting, and never accept a pickup whose window ends within four hours of the truck's next commitment. The lane sheet then recorded "waited, no detention" against that shipper, so the next search could exclude them. Writing the lesson down in the sheet is what turns an unlucky week into a rule.

A second case is the opposite. A carrier ranked options only by net per day and always took the short regular-shipper load, then noticed it had never built a relationship with any broker. When a regular shipper paused for a month, there was nothing to fall back on. Keep two or three broker contacts warm with an occasional load, even if the pay per day is slightly lower.

How to tell your routine is working

Measure three numbers from the lane sheet each month: the share of delivery trips that returned empty, the average empty miles per trip, and net revenue per day out. If the first two fall and the third rises, the routine works. If empty returns fall but revenue per day does not rise, you are taking loads that cost as much as they bring in, and the ranking needs a stricter floor.

An illustrative first-quarter target, to set your own against rather than a benchmark: move from running empty on about 45 per cent of return legs, as in the sample sheet above, to about 30 per cent, by working the repeat-shipper list and searching before unloading. On a fleet of four trucks making six deliveries a week that is a few more loaded return legs a week, each worth a few hundred dollars in extra income by the sum above.

The time cost is about ten minutes a day to rank options and send messages. If it takes longer, simplify: fewer options, a stricter floor, and the same prompt every time. A short routine you actually run beats an elaborate one that stops after two weeks.

Backhaul questions from small carriers

What counts as a good backhaul rate?

One that beats your cost of running the truck home empty, not one that matches the headhaul rate. A load paying less per mile can still win if it adds fewer days off the road. Work out your cost per mile and your target pay per day, then judge every option against both.

Can AI book loads for me automatically?

Some load-board and brokerage tools offer automated matching or alerts, but the decision to commit a truck should stay with a person. A chat assistant cannot see live boards unless you paste the listings in, so its job is ranking and checking, not booking.

Is a backhaul worth taking if it only covers fuel?

Sometimes. If the truck would otherwise run empty for the whole return leg, any load that pays fuel, tolls and a margin over wear is better than none. It stops being worth it when it delays the next headhaul or leaves the driver short on hours.

How do I find repeat shippers for the return leg?

Start with the places you already deliver to. Ask each receiver what they ship out, look at the lane history for loads you turned down, and note brokers who keep calling on the return lane. A small list of regular names beats an hourly scan of the open board.

Should I paste load-board listings into a chat assistant?

Listings are usually public to subscribers, but check your load-board terms before pasting at volume, and leave out shipper contact details. Paste the lane, weight, equipment, rate, pickup window and deadhead distance. That is all the ranking needs.

Further reads

Sources: DAT and Truckstop carrier load-board pages (plans and features checked 5 Nov 2026); general freight terms (deadhead, headhaul, backhaul). The figures in the examples are illustrative and not market rates.

Want your return legs earning, not idling?

On a 1:1 call we'll look at your lane history, work out what an empty return costs you per day, and set up a ranking routine you can run in ten minutes.

Book a 1:1 call with me