Version 1.0 · July 2026 · Applies to HaulDesk web and phone app · Available in English, Somali, and Spanish
1. What HaulDesk is
HaulDesk manages the work that happens after you find a load: recording the load, checking whether the rate covers your cost, tracking it to delivery, filing the paperwork, invoicing the broker, and following the money until it is paid.
It runs in a web browser on a phone or a computer. Nothing needs to be installed and no hardware goes in the truck.
HaulDesk does not search load boards. You keep finding loads wherever you find them today (DAT, broker relationships, dispatch service); HaulDesk takes over once you have a rate in front of you.
Languages. The whole interface works in English, Somali (Af-Soomaali), and Spanish (Español). Change it anytime with the language selector in the top bar — nothing is lost when you switch.
2. First-time setup
Do these four things once, in order. It takes about 15 minutes.
Choose your language. Top bar → language selector.
Enter your company details. Go to Settings → Company. Enter your company name and account initials. The name appears in the header and on invoices.
Enter your cost per mile. Go to Settings → Cost per mile. This is the most important step — see section 3 for how to work out each number.
Add your brokers. Go to Brokers → + New broker for each broker you regularly haul for. Enter how many days each one typically takes to pay.
Do not skip step 3. Every profit number in the app is calculated from your cost per mile. If it is not set, the profit column and the load checker have nothing real to compare against.
3. Cost per mile — the number everything uses
Your cost per mile is what it costs your company to move one truck one mile, before any load pays you. HaulDesk splits it into six parts. Work each one out from your own records:
Item
How to calculate it
Example
Fuel
Last month's total fuel spend ÷ miles driven that month
$0.62
Truck payment
Monthly truck payment ÷ miles driven per month
$0.34
Insurance
Monthly insurance premium ÷ miles per month
$0.21
Maintenance
Yearly repair + tire spend ÷ 12 ÷ miles per month
$0.19
Driver pay
What the driver earns per mile (or wage ÷ miles)
$0.42
Other
Permits, phone, parking, tolls, accounting ÷ miles
$0.14
The total updates automatically at the bottom of the card and is used everywhere in the app: the profit column on every load, the load checker, and the dashboard tile.
Keep it current. Update the fuel figure monthly (it moves the most) and the rest quarterly, or whenever a payment changes. A stale cost per mile quietly makes every profit number wrong.
4. Dashboard
The dashboard is the first screen. It answers four questions at a glance:
Revenue this week — the sum of this week's load rates, with the load count underneath.
Loaded miles — total miles across this week's loads, with your average revenue per mile.
Your cost per mile — the current total from Settings.
Unpaid invoices — everything billed and not yet paid, with the overdue count. If this tile is large and red, go to the Invoices tab.
Revenue by day
The bar chart shows this week's revenue by pickup day. Hover or tap a day to see the exact figure.
Trucks
Each truck shows its current status: Available, In transit, or Unloading. Change a truck's status with the dropdown at the end of its row — do this whenever a truck picks up, delivers, or frees up, so the board answers "where are my trucks?" without a phone call.
5. Loads
5.1 Check a load before you book it
When a broker quotes you a rate, check it before you say yes:
Open Loads. The checker is the first card.
Enter the rate offered, the total miles — loaded miles plus the empty (deadhead) miles to reach the pickup — and confirm the cost per mile (it fills in from Settings).
Read the verdict:
Book it — the rate clears your cost with margin to spare.
Thin margin — above cost, but with less than $75 of room. One delay or extra deadhead makes it a loss.
Walk away — the rate is below your cost. The exact shortfall is shown; use it to counter-offer.
Counting deadhead matters. A load that pays $2.50/mi loaded can still lose money if you drive 120 empty miles to get it. Always enter total miles, not just loaded miles.
5.2 Add a load
Press + New load.
Fill in origin, destination, broker (existing brokers appear as suggestions), pickup day, miles, rate, and the truck assigned.
Press Save load. The load appears at the top of the table with its profit already calculated.
5.3 Track the load's status
Each load has a status dropdown: Booked → In transit → Delivered. Update it as the load moves. When a load is marked Delivered, a Create invoice button appears on its row — that is your cue to bill it (section 6).
5.4 Read the profit column
Profit = rate − (miles × your cost per mile). Green is money made; red means the load ran below cost. Red rows are worth a minute of review: was it deadhead, a low rate, or a cost increase you haven't entered in Settings?
6. Invoices and getting paid
6.1 Create the invoice the same day the load delivers
Mark the load Delivered on the Loads tab.
Press Create invoice on that load's row. The invoice takes the load's broker and rate automatically.
Confirm the POD is in Documents (section 8). Brokers do not pay without proof of delivery.
Why same-day matters. Broker payment terms (usually 30 days) start when they receive the invoice, not when you deliver. A week of delay in invoicing is a week added to every payment.
6.2 Read the aging board
The four boxes at the top of the Invoices tab group your unpaid money by how long it has been outstanding:
Bucket
Meaning
What to do
Current
Invoiced within 15 days
Nothing — normal terms.
16–30 days
Approaching the due date
Nothing yet, but watch it.
31–60 days
Past normal terms
Send a reminder. Call if no response in 5 business days.
60+ days
Seriously late
Call the broker's accounting department. Consider stopping new loads for this broker until it clears.
6.3 Chase and close
Send reminder appears on any invoice past 30 days.
When money arrives in the bank, press Mark paid. This clears it from the unpaid total and the aging board.
7. Brokers
The Brokers tab is your memory of every broker you work with:
Pays in X days — how long this broker actually takes to pay you. The bar is green up to 30 days, gray to 40, red beyond. Check this before accepting a load: a good rate from a 60-day payer can be worth less to you than an average rate from a 20-day payer.
Loads YTD and volume — how much business you have done together. Useful when negotiating: volume is leverage.
Notes — write down what you learn: the contact who answers, quick-pay terms, lanes they cover well, problems you had. Read the note before every booking call.
Add a broker with + New broker: name, typical days to pay, and a note.
8. Documents
Every paper that matters lives here, filed to its load: rate confirmations, bills of lading (BOL), proofs of delivery (POD), and company papers like the insurance certificate.
Press + Add document and pick the file — on a phone, this opens the camera or gallery, so you can photograph the paper at the dock.
Choose the type (Rate con, BOL, POD, Company, Other).
Choose the load it belongs to, and save.
The POD rule. Photograph the signed POD before the truck leaves the receiver. A lost POD usually means an unpaid invoice — this single habit protects the whole payment.
9. Compliance calendar
The Compliance tab holds every filing, renewal, and expiration date your company must not miss. Missing these costs real money: late IFTA filings and lapsed registrations bring fines, and an expired medical card can park a driver.
9.1 What belongs on the calendar
IFTA fuel tax filing — quarterly (due the last day of the month after each quarter ends).
Form 2290 — heavy vehicle use tax, annually (typically due August 31).
IRP registration renewal — annually, on your state's schedule.
UCR registration — annually, by December 31.
Insurance renewal — so you can shop rates before it auto-renews.
Driver medical cards — one entry per driver.
The standard items are pre-loaded; confirm the dates match your company's during setup.
9.2 How the statuses work
Upcoming — more than 30 days away. No action needed.
Due soon — 30 days or fewer. Start the filing or renewal now.
Overdue — the date passed without being marked done. Handle it today.
Done — completed. Press Mark done when you file or renew.
9.3 Adding an item
Press + Add item.
Name it, pick the category (Company, Truck, or Driver), and set the due date.
Save. It sorts into place by date automatically.
Recurring dates. When you mark a quarterly or annual item done, add the next occurrence right away — file the Q2 IFTA, add the Q3 entry. Thirty seconds now saves a fine later.
10. Settings
Cost per mile — the six cost components (section 3). Every change immediately updates the profit column, the load checker, and the dashboard.
Company — company name and account initials shown in the header and on invoices.
Language — the same control as the top bar selector.
11. Daily and weekly routine
Daily (5 minutes)
Update load statuses and truck statuses to match reality.
Photograph and file any signed paperwork from today's pickups and deliveries.
Create the invoice for every load delivered today.
Weekly (20 minutes, same day each week)
Open Invoices. Send reminders on everything past 30 days; call on everything past 60.
Mark paid whatever arrived in the bank this week.
Review red (below-cost) loads from the week — note which broker and lane, and add a broker note if needed.
Open the Compliance tab — handle anything marked Due soon or Overdue, and add the next occurrence of anything you completed.
First week of the month: update the fuel figure in cost per mile.
12. Troubleshooting
Problem
Cause and fix
Profit numbers look wrong
Almost always the cost per mile. Open Settings and check each of the six components — especially fuel after a price change.
No "Create invoice" button on a load
The load is not marked Delivered yet, or an invoice already exists for it (check the Invoices tab).
An invoice shows the wrong amount
The invoice takes the load's rate at creation. If the rate changed (detention, lumper), contact support to adjust — or record the difference in the broker note until adjustment ships.
The interface is in the wrong language
Use the language selector in the top bar. The setting is saved on your device.
My data disappeared on another device
Your workspace is tied to your account sign-in. Make sure you are signed in to the same account; contact support if it still looks empty.
Anything else
Contact support from the channel in your welcome message. Include the tab you were on and what you pressed.