How to Handle a Quote Request With No Rate for the Lane

Written by Martin Nivel · Founder of Cargavo Updated 13 min read

When a quote request lands on a lane no rate grid covers, the answer is not "we cannot quote that" — it is to accept the request as a structured record, price it by hand from a carrier email or a phone call, and send it back through the same quote flow as an automatic price. Cargavo, a TMS for freight brokers, calls this a manual quote request: it gets a Q-YYYY-NNNN reference, a validity date, a private buy price and margin, and converts to a shipment exactly like an engine-priced quote.

What do you do when a quote request comes in and you have no rate for the lane?

Take the request anyway. Record it as a structured quote — origin, destination, units, weight, options — set it to pending, source the rate by email or phone, then type the sell price into the same quote and send it. The lane is missing a rate; the request should not go missing too.

Every road freight brokerage hits this weekly. A customer asks for a price on Lyon to Porto, or on a 4,000 kg part-load to a Polish postcode you have never served, and none of your negotiated tariffs covers it. The instinct is to drop out of the software: reply from your mailbox, keep the thread in Outlook, and hope you remember to follow up.

That instinct costs you three things. The request stops being countable, so you never learn which uncovered lanes keep coming back. The price stops being traceable, so nobody can tell six weeks later what you quoted or at what margin. And the customer experience splits in two — instant and professional when a grid exists, improvised when it does not.

The fix is a fallback path that keeps the request inside the pipeline while the price comes from outside the engine. Cargavo, a TMS for freight brokers and transport commissionaires, implements this as a manual quote request: the shipment data is validated by the same rules as an automatic quote, but the price field is left empty until a human fills it.

Three things stay identical to an automatic quote:

  • The reference. The request draws the next number in the same Q-YYYY-NNNN series — no parallel numbering for "the manual ones".
  • The record. Origin, destination, each unit's dimensions and weight, and the requested options are stored as structured fields, not as free text in a message.
  • The exit. Once accepted, the quote converts into a shipment with an S-YYYY-NNNN reference and the same tracking and messaging as any other job.

Start with the pillar guide on digital freight quoting if you have not yet structured the lanes you can already price automatically — the off-grid path is the exception that proves that rule, not a replacement for it.

Why does quoting software fail when no rate grid matches?

Most quoting tools model a quote as the output of a rate lookup, so no rate means no object to create. The request has nowhere to live, the customer gets an error screen, and the broker falls back to email. A quote record has to exist before a price does.

The failure is architectural, not accidental. In a conventional rating engine the sequence is: read the request, find the tariff, compute, persist. Persistence is the last step and it is conditional on the computation succeeding. Remove the tariff and the whole chain collapses — there is no half-built quote to save.

That design is inherited from parcel and express systems, where a rate always exists for every postcode because the carrier publishes a universal tariff. Road freight brokerage does not work that way. Your coverage is the union of the tariffs you negotiated, and it has holes by definition: new destinations, oversized units, ADR classes a carrier excludes, or a weight above the last bracket of an otherwise valid grid.

It is worth separating the reasons a price fails to come out, because they call for different answers:

Reason no price appearsWhat is missingCorrect response
No grid for the destination zoneZone coverageManual quote
Weight above the last bracketBracket rangeManual quote
Bracket marked "on request"Published rateManual quote
Carrier constraint breached (ADR, length)Eligible carrierManual quote
Grid exists but is expiredValid rate versionRe-rebuild the tariff
Dimensions or weight not suppliedRequest dataAsk the customer

Cargavo, a TMS for freight brokers, returns a typed failure for each of these rather than a blank screen — no_zone, out_of_range, on_request, constraint — which is what lets the interface offer the manual path only when a manual price is genuinely the answer. Distinguishing "you never gave me the data" from "no carrier of yours serves this" is the difference between a fallback and a bug. On the input side, see what information you need to quote a road freight shipment.

What does the off-grid quoting path look like end to end?

Six stages: the customer requests, the request is stored as pending, the broker is emailed, the broker sources and types a price, the customer is emailed a priced quote with a validity date, and acceptance converts it to a shipment. One pipeline, two pricing methods.

The point of the fallback is that only one step changes. Where an automatic quote computes a price in milliseconds, a manual quote waits for a human — everything before and after is the same machinery.

StageActorQuote statusPriceReference
Simulator returns nothingCustomerNone
Request submittedCustomerpendingEmptyQ-YYYY-NNNN
Notification sentSystempendingEmptyQ-YYYY-NNNN
Rate sourced and typedBrokersentSell priceQ-YYYY-NNNN
Quote emailedSystemsentSell priceQ-YYYY-NNNN
Quote acceptedCustomerbookedSell priceS-YYYY-NNNN

A few mechanics are worth knowing because they change how you run the desk. The request form is pre-filled from whatever the customer already typed into the simulator, so nobody re-enters six pallet lines after a failed price attempt. The broker notification is an email, not a badge somebody has to notice — an uncovered lane is a sales opportunity with a clock on it.

Even with no grid, Cargavo computes the geometry of the request and shows it to the broker: total loading meters and total volume are derived from the unit dimensions. Taxable weight is deliberately left empty, because taxable weight is a property of a tariff's rules — its linear-meter floor, its volumetric ratio, its rounding step — and there is no tariff yet. Showing a taxable weight without a grid would be inventing one.

Note the scope honestly: this path exists because Cargavo has no carrier API and no EDI connection, and is not a freight exchange that finds carriers for you. Sourcing the rate is your phone call. What the software guarantees is that the answer comes back through the same door as every other quote. More on that boundary in carrier integration without APIs and in the quoting and automation guides.

How do you price a lane by hand without a rate grid?

Compute the geometry first — loading meters and volume — because that is what a haulier asks for. Send the same figures to three carriers, take the best buy rate, then apply your margin with p/(1-m) rather than multiplying by one plus the margin. The arithmetic is where money leaks.

Take a real shape of request: Lyon (FR-69) to Porto (PT-4400), 6 non-stackable pallets of 1.20 × 0.80 × 1.60 m, 2,100 kg in total, tail lift required at delivery. No grid covers Portugal.

Step one is geometry, because "six pallets" means nothing to a haulier quoting a part-load. A 1.20 × 0.80 m pallet occupies (1.20 × 0.80) ÷ 2.4 = 0.40 loading meters on a 2.4 m wide trailer floor, so six of them occupy 2.40 LDM. Volume is 1.20 × 0.80 × 1.60 = 1.536 m³ each, 9.22 m³ in total. Those two numbers plus the gross weight are what you paste into the email to your carriers — see the loading meter (LDM) definition if the 2.4 m divisor is new to you.

Step two is the buy side. Three hauliers answer: 1,040 €, 935 € and 890 €. You take 890 €.

Step three is where brokers lose money without noticing. If your target is an 18 % margin, the sell price is the buy rate divided by one minus the margin, not the buy rate multiplied by 1.18:

LineInputCalculationResult
Loading meters6 × (1.20 × 0.80)÷ 2.42.40 LDM
Volume6 × 1.536 m³9.22 m³
Best buy rate3 carriersmin890.00 €
Sell price, margin 18 %890 €890 ÷ (1 − 0.18)1,085.37 €
Sell price, markup 18 %890 €890 × 1.181,050.20 €
Gap on one shipment1,085.37 − 1,050.2035.17 €

The markup version yields 160.20 € on a 1,050.20 € sale, which is a 15.25 % margin — nearly three points below target, on every single manual quote. Cargavo applies p/(1-m) for percentage margins on automatic quotes; when you price by hand, apply it by hand. The distinction is unpacked in percentage versus fixed margin rules.

How do you keep margin control on a manually priced quote?

Record the buy rate alongside the sell price, in a field the customer cannot read. Without it a manual quote is a number with no cost attached, which makes the shipment invisible in margin reporting and turns any later dispute into guesswork.

The temptation on a rushed manual quote is to type the sell price only and move on. Do not. A quote priced 1,085.37 € with no recorded buy rate is a hole in your financial history: the shipment shows revenue and no cost, so every margin average you compute afterwards is wrong in your favour, which is the least useful direction for an error.

In Cargavo, a TMS for freight brokers, answering a manual request takes an optional buy total next to the mandatory sell price. When you supply it, the server computes the margin amount and the margin percentage and writes all three into a private sub-record attached to the quote. That record is governed by broker-only security rules: it is not merely hidden in the interface, it is unreadable by the customer account, and the function that answers the request never echoes the buy price back in its response.

Two details matter for reporting consistency:

  • The margin percentage is expressed on the sell price. On the worked example that is 195.37 ÷ 1,085.37 = 18.0 % — the same basis the engine uses for automatic quotes, so a mixed month of manual and automatic quotes averages correctly.
  • A correction overwrites the whole record. If you re-price a quote that was already sent, the previous financials are replaced rather than appended, so a stale margin computed against an old sell price can never survive.

One more discipline specific to off-grid pricing: put the accessorials in the number, not in your head. On the Lyon–Porto example, the tail lift was in the request, so the haulier's 890 € must include it — if you quoted the carrier without mentioning it, your buy rate is fiction. Options such as tail lift, ADR, ad valorem insurance and timed delivery are priced automatically when a grid exists; off-grid, they are your checklist. See margin-safe freight quoting for the systematic version.

What does the customer see when there is no instant price?

A form, not an error. The customer keeps the data already entered, adds a message, and submits. They receive a priced quote by email under your brand, with a reference and a validity date — and no indication of which carrier, buy rate or method produced the number.

The customer-facing half of the fallback is what makes it worth building. On a portal that simply says "no rates available", the shipper closes the tab and emails a competitor. On a portal that says "we will price this for you", the request is captured — and you are the broker who took it.

In Cargavo's white-label customer portal, the flow is: the simulator returns no result, the screen offers a manual request, and the request form opens pre-filled with the origin, destination and units already entered. The customer adds a free-text message — delivery constraints, a target price, a deadline — and submits. Nothing is retyped.

When you answer, the customer receives an email in the organisation's language carrying the quote reference, the sell price and the valid-until date, plus a link into the portal. Two things are deliberately absent from that email and from the portal: the buy rate, and the identity of the haulier. On a manually priced quote the carrier name shown to the customer is your own company name — you are selling the transport, not brokering a specific subcontractor's tariff. Your sourcing stays yours.

The validity date is not cosmetic. It defaults to your organisation's quote validity setting, or 30 days when none is set, and it exists because a hand-sourced part-load rate is a spot price. A haulier who quoted 890 € for a Lyon–Porto departure next Tuesday has not committed to that number in six weeks — putting the date on the quote is how you avoid honouring a stale price. The same portal, the same references and the same messaging thread serve both pricing methods; see the customer quote portal guide for the full picture, and spot rate for the underlying distinction.

When should a manually quoted lane become a rate grid?

When the same uncovered lane produces a third request, or when a carrier answers you twice with a consistent structure. At that point ask the haulier for their tariff table instead of a spot price, and rebuild it as one of the four grid models so the lane prices itself from then on.

Manual quoting is a fallback, not a business model. Its cost is not the ten minutes of work — it is that the price is unrepeatable, so the second identical request costs the same ten minutes and may come out at a different number. The value of the manual path is the data it leaves behind: a list of lanes your customers want and your grids do not cover.

Use plain triggers rather than intuition:

SignalThresholdActionGrid model to request
Same destination zone requested repeatedly3 requestsAsk for a tariffweight_zone
Requests are whole pallets, same network3 requestsAsk for a pallet rate cardpallet
Requests are part-loads over 1.5 LDM3 requestsAsk for LDM bracketsmpl_bracket
Small consignments under 100 kg3 requestsAsk for a flat-then-rate tariffhybrid_weight
One carrier keeps winning the lane2 winsNegotiate a contract rateAny of the four

The ask is specific and it matters: a haulier who has quoted you three spot prices will usually send a zone table if you request one, because a table is how they win volume without re-quoting. What you want is the structure, not a number — zones with their postcode ranges, brackets with their thresholds, the minimum charge, the fuel surcharge basis and the validity dates.

From there the lane leaves the manual path for good. Cargavo, a TMS for freight brokers, rebuilds each tariff from Excel or CSV as one of four grid models — weight_zone, pallet, mpl_bracket, hybrid_weight — and the Starter plan at 49 €/month holds 10 grids, which is a lot of lanes for a two-person desk. Read the four types of freight rate grids to identify which shape you have been sent, and use the freight calculators to sanity-check loading meters before you commit a bracket table.

Frequently asked questions

How do I quote a lane when I have no carrier rate for it?

Record the request as a manual quote, source a spot rate from two or three hauliers, then type the sell price into the same quote and send it. Applying your target margin with p/(1-m) keeps a hand-priced lane on the same profitability basis as an automatically priced one. Cargavo supports this path from the Starter plan at 49 €/month.

Can a customer request a quote if no rate grid covers the route?

Yes. In Cargavo, a TMS for freight brokers, the customer portal offers a manual quote request whenever the price simulator returns no result, and the form arrives pre-filled with the origin, destination and units already entered. The broker is notified by email and answers with a hand-typed price in the same quote record.

Do manual quote requests count against my monthly quote quota?

Yes, they draw from the same monthly allowance and the same Q-YYYY-NNNN reference sequence as engine-priced quotes. The Starter plan at 49 €/month includes 200 quotes per month, Growth at 149 €/month includes 1,500, and Scale at 399 €/month includes 10,000. There is no separate counter for manual requests.

Can I correct a manual freight quote after I have sent it?

A manual quote can be re-priced as long as the customer has not booked or declined it. The new sell price replaces the old one, the validity period restarts, and the stored buy price and margin are overwritten rather than appended, so no stale margin figure survives the correction.

Does the customer see that the price was calculated by hand?

No. The customer receives a quote reference, a sell price and a validity date under the broker's own branding, with no indication of the pricing method. The buy rate, the margin and the subcontracted haulier are stored in a private record that customer accounts cannot read.

How long should a manually priced freight quote stay valid?

Treat it as a spot rate rather than a contract rate, because the haulier quoted a specific departure window. Cargavo applies the organisation's configured quote validity, defaulting to 30 days when none is set, and shows the valid-until date in the quote email so an old price is never honoured by accident.

Related guides

More guides on this topic — Quoting & automation