Blog · Board and management reporting · Shipping and logistics
How a forwarder measures the time from shipment delivery to invoice issued, per customer and per branch, from the shipment milestones and the billing ledger: the median days, the shipments delivered and still unbilled past a stated age, the value waiting, the branches and customers where the cycle is longest and why, disputed accessorials, missing carrier costs, customer billing rules, and the working capital the delay ties up.
A forwarder delivers a shipment and invoices it six weeks later, because the carrier's cost had not arrived, or an accessorial was disputed, or the customer is billed monthly. The milestones and the billing ledger measure the six weeks, per customer and branch, and say which of the three it was. This guide sets out the cycle, the ageing list, the causes, and the working capital.
Per shipment:
Cycle days = invoice date − delivery date Unbilled if delivered and no invoice; age = today − delivery date Cause, from status fields: carrier cost pending, dispute, customer batch rule, other
Per customer, per branch, per mode:
Median cycle days; unbilled shipments past the stated age; value waiting by cause
Customer identifiers only.
delivered shipments = invoiced + unbilled, per period
A shipment invoiced before its delivery milestone is listed; it is a pre-billing arrangement or a milestone error, and it is excluded from the cycle.
| Branch | Mode | Shipments | Median cycle | Company median | Unbilled past 30 days | Value waiting |
|---|---|---|---|---|---|---|
| Branch A | Ocean | 1,840 | 14 | 12 | 41 | $190,000 |
| Branch B | Ocean | 1,210 | 38 | 12 | 310 | $1.4m |
| Branch B | Air | 2,300 | 9 | 6 | 22 | $60,000 |
Branch B's ocean cycle is three times the company's and it has one point four million dollars of delivered, unbilled freight.
| Cause | Shipments | Value waiting | Fix |
|---|---|---|---|
| Carrier cost pending | 190 | $860,000 | Bill on estimated cost; true up |
| Accessorial dispute | 40 | $220,000 | Bill the undisputed portion now |
| Customer batch rule | 60 | $270,000 | By rule; confirm the rule is current |
| Other | 20 | $50,000 | Review |
Most of it is waiting for carrier invoices before the file can be closed, which is a process the branch can change tomorrow.
| Customer | Shipments | Median cycle | Unbilled value | Cause |
|---|---|---|---|---|
| 2207 | 410 | 44 | $380,000 | Carrier cost pending, mostly one carrier |
| 4471 | 220 | 31 | $270,000 | Batch rule: monthly |
Cycle measured company-wide. Branch B's thirty-eight days inside a median of twelve.
Unbilled with no cause. A list with no fix.
Ocean and air blended. The air branch looks fine and ocean looks bad, or the reverse.
Batch rules unrecorded. A customer billed monthly by agreement looks like a backlog.
Mapped once, the milestones, the billing ledger, the file status and the billing terms produce the cycle per branch and customer, the ageing list by cause and the value waiting every week. Covirage builds this from the exports as they are. The shipping and logistics page describes the setup, and the detention and demurrage guide covers the other billing leak on the same files.
Every day between delivery and invoice is a day of working capital the forwarder funds, and a shipment unbilled for ninety days is one the customer will query when the invoice finally arrives. The cycle is a cash measure and a revenue assurance measure at once.
The forwarder's own median per branch and mode, from its history; a branch well above the company median is the finding. Air cycles are shorter than ocean; the comparison is like with like.
From the file status fields: carrier invoice received or not, accessorial dispute flag, customer billing terms. A shipment past age with no carrier cost is waiting on the carrier; one with a dispute flag is waiting on resolution; one on a customer with monthly batch billing is waiting by rule.