Freight quote automation: how forwarders quote from email
How an inbound rate request becomes a priced draft reply, with a worked 2 x 40HC example and the checks that stop an automated quote going out wrong.
Most quote requests still arrive the way they did twenty years ago: an email with a port pair, a container count and a date, if you are lucky all three. The forwarder who answers first with a real price usually wins the booking, and almost all of the time between the email landing and the reply going out is manual work. Someone reads the request, finds the rate, adds the surcharges, works out the margin and types it up.
Freight quote automation does that middle part in software, from your own rates, while a person still decides what goes to the customer. Below is how it works step by step, a worked FCL example, what to set up first, and the ways automated quotes go wrong.
Key takeaways
- Freight quote automation turns an inbound rate request into a priced draft reply: read the email, match a valid rate, add surcharges, apply margin, draft.
- It is only as good as your rate data. Carrier contracts, spot sheets and surcharge tables need validity dates and one way of naming lanes.
- The safe version prices only from rates you loaded and hands anything it cannot price to a person instead of estimating.
- Keep a person on the send button until the drafts go out unedited most of the time, and hold any quote below your margin floor.
- Measure time to first reply, the share of requests priced without edits, and margin per quote, before and after.
What freight quote automation is
Freight quote automation is software that prices an inbound quote request without anyone doing the lookups by hand. The input is usually an email: free text, a forwarded thread, sometimes a spreadsheet attached. The output is a priced quote and a drafted reply, built from the same rate cards and margin rules your desk uses today.
It is a different thing from an instant-quote widget on your website. A widget asks the customer to fill in a form. Quote automation starts from the email the customer already sent, which is where most forwarding business still arrives.
The manual process it replaces
For a single FCL request, a pricing coordinator typically:
- reads the email, works out the lane, equipment, commodity, Incoterm and cargo-ready date, and writes back if something is missing;
- opens the carrier contract or spot sheet for the lane and checks it is valid for the sailing;
- adds the surcharges: BAF, THC at whichever end the Incoterm puts on you, PSS in peak season, documentation;
- applies the markup for that customer and checks it against the floor;
- types the reply, often with two or three carrier options, and logs the quote somewhere.
None of it is hard. It is repetitive, it happens dozens of times a day, and every step is a chance to use last month's rate or forget a surcharge.
How an automated quote is built, step by step
A well-built system runs the same six steps on every request and logs what each one read and decided, so any price can be traced back to the rate and rule that produced it.
How an automated quote is built
- Screen the email
Inbound email is untrusted input. Before any AI reads it, the message and its attachments are checked for instructions hidden in the text, and anything suspicious is logged for review, never followed.
- Read the request
Pull out the lane, equipment and quantity, commodity, weight and volume, Incoterm and cargo-ready date. A detail that is missing is flagged in the draft, not guessed.
- Match a valid rate
Look up the rate ledger for the lane, mode and equipment and keep only rates valid on the cargo-ready date. If nothing is valid, there is no price: the request goes to a person.
- Build the quote
Add the surcharges that apply from your tables, per container, per CBM, per kg or flat, and the door leg when the Incoterm calls for one.
- Check the margin
Apply the margin rule for the customer, lane or mode. A quote under your floor is held for approval instead of drafted as ready.
- Draft the reply
Write the reply with the price, validity and any assumptions, and leave it for a person to review and send.
A worked example: 2 x 40HC, Shanghai to Rotterdam
A request lands at 09:41: "Need pricing for 2 x 40HC, electronics, Shanghai to Rotterdam, FOB Shanghai, cargo ready Friday." Here is what an automated quote does with it. The rates are illustrative.
| Line | Basis | Buy (USD) | Sell (USD) |
|---|---|---|---|
| Ocean freight, Maersk contract | 2 x 40HC at 1,850 buy, 2,125 sell | 3,700 | 4,250 |
| BAF | 2 x 40HC at 310 | 620 | 620 |
| THC Rotterdam | 2 x 40HC at 285 | 570 | 570 |
| Documentation | Per bill of lading | 45 | 75 |
| Total | 4,935 | 5,515 |
The Maersk contract rate matched because it is valid on Friday. An MSC spot rate that expired on the 12th was skipped rather than used. BAF and destination THC come from the surcharge table, and there is no origin THC because under FOB Shanghai the seller pays it. The margin rule for this lane adds USD 275 per container on ocean freight, passes surcharges through at cost and charges documentation at list price. That gives USD 580, or 10.5% of the sell price, above an 8% floor, so the quote does not need approval.
The draft reply gives the all-in price, the carrier, the rate validity and one assumption worth stating: the price is subject to space and equipment at booking. A coordinator reads it, changes nothing or one line, and sends it.
What to set up before you automate
Automation reads your data exactly as it is. Most of the work is getting that data into shape once, and it pays off whether or not you automate.
Before you automate quoting
0/7Where automated quotes go wrong
Invented or estimated rates
A general-purpose AI assistant will happily produce a plausible number. For a forwarder that is worse than no answer. The price has to come from a rate you loaded, and when there is none, the right output is an exception for a person, not an estimate.
Stale rates
Spot rates on the main east-west lanes can change from one week to the next. Every rate needs a validity window, and matching should use the cargo-ready date, not the date the email arrived.
Missing charges
The Incoterm decides which charges belong on the quote. DAP to a door in Utrecht needs the destination delivery leg; a quote to a seller on CIF terms needs insurance. A completeness check should catch an Incoterm that promises charges the quote does not include, FOB without a named port, dangerous goods without a DG line, reefer cargo on a dry rate, and air or LCL quotes without both weight and volume.
Sending without review
Some tools send quotes with no person in the loop. That can work on simple repeat lanes, but one wrong price on a 40-container tender costs more than a week of fast replies earns. Start with drafts, track how often they go out unedited, and let that number decide how much you automate.
How to measure it
- Time to first reply: from the email landing to a priced reply going out.
- Straight-through share: requests priced and sent without edits.
- Exceptions by reason: no valid rate, missing detail, below the floor.
- Margin per quote and win rate by lane: faster replies should not cost you margin.
Take a baseline for a few weeks before you switch anything on, so the comparison means something.
How Fretie handles quote automation
Fretie is built on this model. It reads quote requests in Gmail or Outlook, prices them only from your rate ledger with your margin rules, runs the completeness check, and leaves a drafted reply for your team to send. Every run is logged step by step, so you can see which rate and which rule produced each price. See how the quoting agent and email automation work, or book a demo and bring one of your own requests.
FAQ
What is freight quote automation?
Software that turns an inbound quote request into a priced quote without manual lookups. It reads the request, matches a valid rate from your rate cards, adds surcharges and margin, and drafts the reply.
Can AI quote freight accurately?
Only if the price comes from your own rates. A language model is good at reading the email. The number should come from a rate ledger lookup and your margin rules, with anything that cannot be priced sent to a person.
Does quote automation replace the pricing team?
No. It removes the lookups and the typing. Your team still owns the rates, the margin rules, the exceptions and the decision to send.
How long does it take to set up?
It depends on your rate data. If contracts and surcharges already sit in spreadsheets with validity dates, a first lane can be quoting the same day. Cleaning up messy rate sheets takes longer than the software does.
Does it work for air freight and LCL?
Yes, when the rates are loaded per kg or per CBM. Air and LCL need both weight and volume to confirm the chargeable basis, so a good system flags any request that is missing one of them.