Warehouse Cost per Order: Building the Number From Activities
For supply chain analysts, dc managers and logistics finance controllers · Compare approaches

Warehouse Cost per Order: Building the Number From Activities: Illustrative customer activity and logistics cost-to-serve review beside a fulfilment floor; not a client facility.
Quick answer: warehouse cost per order
Warehouse cost per order equals the month's fulfilment cost divided by orders shipped, built activity by activity: receiving, storage per pallet-day, picking per line, packing, packaging materials, labels, returns handling, WMS and IT, then supervision and overhead. Each activity carries its own driver, so the figure rises with lines and units per order.
TL;DR — what you’ll learn
- Build the figure from nine activity pools, each with its own driver such as labour hours, pallet-days or lines picked, instead of dividing the total warehouse P&L by orders.
- In the illustrative US example, $272,360 of monthly cost over 60,000 orders gives $4.54 per order; the India book fulfilment example gives ₹51.95.
- Order profile matters: in the US example a one-line order costs about $4.26 and a six-line order in a larger carton about $5.66.
- Most of these costs are period expenses, not inventory: ASC 330-10-30-8 excludes selling expenses and Ind AS 2 paragraph 16 excludes storage and selling costs.
Topics: warehouse cost per order · fulfilment cost per order india · warehouse labour cost per order · storage cost per pallet day · packaging cost per order
All quantities, amounts, product codes and events are illustrative teaching examples.
The board pack says warehouse cost per order rose from $4.10 to $4.90 last quarter. Operations blames a new client with bulky items, finance blames overtime, and the site manager points out that the building is fuller than it has ever been. All three may be right, and the single number cannot tell them apart, because it was produced by dividing the warehouse cost centre total by the order count.
An activity-based build-up fixes that. When each cost pool, receiving, storage, picking, packing, materials, labels, returns, systems and supervision, is matched to its own driver, the same total explains itself: which part moved, by how much and why. The calculation fits in a spreadsheet, uses data most WMS and general ledgers already hold, and can be refreshed in an afternoon at month-end.
- Inside this guide: which costs belong in the numerator, how each activity is measured and costed, a worked US ($) build-up for a general-merchandise DC and an India (₹) build-up for a book fulfilment centre.
- Also covered: how lines and units per order change the result, how to restate your own cost in a 3PL's billing units, and the data checks that keep the monthly figure honest.
Why a single warehouse cost per order figure misleads planners
Total cost divided by orders is accurate arithmetic and poor management information. The quotient mixes costs driven by inventory, by order lines, by units and by time, so any change in order mix or stock level moves it even when the floor is working exactly as well as before.
Our supply chain KPI dictionary defines many metrics side by side and how each ties to the ledger. This article goes deeper on just one of them: it builds cost per order from the bottom up, activity by activity, so that the figure can be explained, forecast and compared with an outsourcing quote.
The build-up has two inputs. Cost pools come from the general ledger for the month: wages and agency labour, rent and utilities, packaging purchases, software subscriptions and so on. Drivers come from operational systems: labour hours by task from the WMS or a labour management system, pallet-days from location snapshots, and counts of lines, units, orders and returns. Every pool needs a named owner for both halves.
Scroll horizontally to see all columns.
| Activity pool | Cost source in the ledger | Driver and its source | Driver owner | Monthly sign-off |
|---|---|---|---|---|
| Receiving and putaway | Direct wages, agency labour, dock equipment lease | Task hours from RF scan logs | Inbound supervisor | Site operations manager |
| Storage | Rent, building utilities, racking depreciation, insurance on the building | Pallet-days from end-of-day location snapshots | Inventory control lead | Site finance analyst |
| Picking | Picker wages, pick-cart and scanner costs | Lines picked and pick hours from the WMS task log | Outbound supervisor | Site operations manager |
| Packing | Packer wages, pack-station equipment | Orders packed and pack hours | Outbound supervisor | Site operations manager |
| Packaging materials and labels | Cartons, mailers, void fill, tape, label stock | Material issues by SKU from consumption records | Stores or consumables owner | Site finance analyst |
| Returns handling | Returns labour, inspection and rework | Returns received and graded | Returns lead | Site operations manager |
| WMS, IT and supervision | Software fees, devices, network, supervisors and site management | Spread by labour hours, not by orders | Site manager | Logistics finance controller |
Which costs belong in the numerator and which stay outside it
Include every cost the warehouse incurs to receive, hold and ship customer orders, and exclude transport after the parcel leaves the dock. Outbound carrier charges matter, but they vary by destination and service level, so keeping them separate stops a change in delivery mix from distorting warehouse performance.
The accounting treatment explains why the number is a management measure rather than an inventory value. ASC 330-10-30-1 limits inventory cost to the charges incurred in bringing an article to its existing condition and location, and ASC 330-10-30-8 states that selling expenses form no part of inventory costs. KPMG's inventory handbook notes that, in practice, warehousing costs are generally treated as period costs.
Warehouse cost per order for a finished-goods DC is built from period costs, not inventoried costs: ASC 330-10-30-8 excludes selling expenses from inventory, and Ind AS 2 paragraph 16(b) and 16(d) exclude storage and selling costs, so the monthly activity pools should reconcile to the warehouse P&L within 0.5%.
India follows the same logic. Ind AS 2 paragraph 16 lists storage costs, other than those needed in production before a further stage, and selling costs among the costs excluded from inventory and expensed. ICAI's educational material on Ind AS 2 adds that secondary packing material, such as the carton used to ship an order, is a selling cost, and that distribution costs remain outside inventory.
- Retail exception to check: KPMG reports that SEC staff have informally accepted retailers capitalising off-site warehousing and warehouse-to-store distribution costs. If your entity does this, some storage cost sits in inventory, and the cost per order build-up must use the same costs before capitalisation to stay comparable.
- Primary packaging: packaging that makes the product saleable, such as a bottle, is part of the product; only the shipping carton, mailer and void fill belong in this calculation.
- Outbound freight: report it as its own per-order line next to warehouse cost, never inside it.
Labour activities measured in hours: receiving, picking and packing
Cost labour by task hours, not by headcount. A loaded hourly rate multiplied by the hours spent on each task gives a pool that follows the work, and the WMS task log gives those hours almost for free if every task starts and ends with a scan.
The loaded rate should include wages, employer payroll taxes and benefits, agency mark-up and paid non-productive time such as breaks and briefings. Productive hours come from scan logs; the gap between paid hours and scanned hours is indirect time, which belongs to supervision and overhead rather than being spread silently across tasks.
- Receiving and putaway: hours from first scan at the dock door to the putaway confirmation, divided over the month's orders as an average; the true driver is inbound pallets or cartons, which you should also record.
- Picking: hours on pick tasks divided by lines picked gives cost per line; this is the rate most sensitive to slotting and to batch or zone picking choices.
- Packing: hours on pack stations divided by orders packed; add a per-unit element if multi-unit orders take visibly longer to pack.
- Value-added work: gift wrap, kitting or inserts get their own pool, because they are usually billed or recovered separately.
Planning the labour itself is a separate exercise; our guide to warehouse labour capacity planning turns expected workload into shifts and headcount. Here the hours are historical facts used to cost activities, and the same scan data should feed both, so the plan and the cost model never disagree about rates.
Storage cost per pallet-day and how it reaches each order
Storage is driven by stock held, not by orders shipped, so cost it per pallet-day first and allocate to orders second. Reporting it as a separate component of cost per order stops a stock build-up from looking like a fall in fulfilment productivity.
The storage pool is rent, building utilities, racking depreciation, building insurance and security for the storage area. Divide it by occupied pallet-days, taken from a daily location snapshot, to get cost per pallet-day. Shelving or bin locations for small items can be converted to pallet equivalents by cubic capacity so that one rate covers the building.
CPO = ( Σ_a C_a ) / N
C_a = cost of activity pool a in the month (labour, space, materials, systems, overhead)
N = orders shipped in the same month
r_pd = C_storage / Σ_d P_d (P_d = occupied pallet positions on day d)
CPO_p = F + r_line × L_p + r_unit × U_p + m(carton_p)
F = per-order fixed share (receiving, storage, labels, returns, IT, overhead)
L_p, U_p = lines and units in order profile p; m() = carton and fill cost
Allocating storage to orders needs a choice. The simplest is an equal share per order; a better one, where SKU-level data exists, assigns pallet-days to the SKUs held and then to the orders that shipped them. For a 3PL, storage is usually billed separately; our article on 3PL pallet-day storage billing explains how billing units and cut-off rules are set.
Packaging, labels and returns as per-order material costs
Materials are the most direct per-order cost and the easiest to get wrong, because cartons are bought in bulk and expensed when received. Cost them on consumption: cartons, mailers, void fill, tape and labels issued in the month, not purchased in the month.
- Carton and mailer cost: record which carton each order used, from the pack station or a cartonisation rule, and price it at current purchase cost.
- Void fill and tape: usually too small to track per order; spread by carton volume or as a flat amount per order based on monthly consumption.
- Labels and documents: shipping labels, packing slips and invoices printed per order; include printer consumables and label stock.
- Returns handling: receiving, inspection, regrading and restocking labour for returned orders, divided over all shipped orders so that the return rate shows up in the per-order figure.
Carton choice has a second effect outside the warehouse: a larger carton raises dimensional weight on many parcel services. Our article on cartonisation and dimensional-weight control covers that trade-off; in this model, record only the material cost of the carton and keep parcel charges in the separate outbound freight line.
WMS, supervision and building overhead without arbitrary spreading
Shared costs should follow the labour they support, not the orders they eventually touch. Spreading supervision and systems by labour hours keeps them proportional to work, so a labour-heavy activity such as packing carries more of the supervisors' time than storage does.
The overhead pool holds WMS licences or subscriptions, handheld devices, network, site management, supervisors, cleaning, health and safety, and site administration. Some of it is fixed for the month, which is why cost per order falls in peak and rises in quiet months; show the fixed share separately when comparing months so a seasonal dip is not mistaken for a productivity gain.
Warehouse overhead allocation for cost per order spreads WMS fees, supervision and site management across activities by scanned labour hours from the WMS task log, keeps outbound carrier charges outside the pool, and reports the fixed share separately so seasonal volume swings above 20% do not distort the monthly figure.
A worked month for a US DC and an Indian book fulfilment centre
The example uses illustrative figures chosen to make the arithmetic easy to follow, not benchmarks. The US site is a general-merchandise DC shipping 60,000 orders a month at 2.4 lines and 3.1 units per order; the Indian site is a book fulfilment centre shipping 40,000 orders at 1.3 lines and 1.5 units per order.
Assumptions: US loaded labour at $24 per hour, storage at $0.55 per pallet-day, pick rate 120 lines per hour, pack rate 45 orders per hour, 6% returns at $3.10 each. India loaded labour at ₹180 per hour, storage at ₹14 per pallet-day, pick rate 90 lines per hour, pack rate 40 orders per hour, 8% returns at ₹35 each.
Scroll horizontally to see all columns.
| Activity | US driver | US cost ($) | India driver | India cost (₹) |
|---|---|---|---|---|
| Receiving and putaway | 1,400 hours | 33,600 | 900 hours | 1,62,000 |
| Storage | 120,000 pallet-days | 66,000 | 45,000 pallet-days | 6,30,000 |
| Picking | 144,000 lines, 1,200 hours | 28,800 | 52,000 lines, 577.8 hours | 1,04,000 |
| Packing | 60,000 orders, 1,333.3 hours | 32,000 | 40,000 orders, 1,000 hours | 1,80,000 |
| Packaging materials | $0.62 per order | 37,200 | ₹9 per order | 3,60,000 |
| Labels and documents | $0.06 per order | 3,600 | ₹1.50 per order | 60,000 |
| Returns handling | 3,600 returns | 11,160 | 3,200 returns | 1,12,000 |
| WMS and IT | Monthly fees | 18,000 | Monthly fees | 1,50,000 |
| Supervision and site overhead | Monthly cost | 42,000 | Monthly cost | 3,20,000 |
| Total | 60,000 orders | 272,360 | 40,000 orders | 20,78,000 |
| Cost per order | Total ÷ orders | 4.54 | Total ÷ orders | 51.95 |
The two sites have different shapes. In the US example, storage is about 24% of the total and labour for receiving, picking and packing about 35%. In the Indian book centre, storage is about 30% and packaging about 17%, because books are dense, slow-moving titles occupy space for months, and almost every order needs its own protective mailer.
Check the arithmetic both ways: the pools must sum to the warehouse P&L for the month, and the driver counts must match WMS totals. If the India centre's storage looks high, the question is stock depth per title, not picking productivity, and only the split by activity makes that visible.
How lines and units per order move the cost of each order
Average cost per order is a blend of very different orders. Splitting the US example into per-order, per-line and carton components shows that a six-line order costs roughly a third more to fulfil than a one-line order, which matters for pricing, minimum order values and free-shipping thresholds.
From the US build-up, picking is $0.20 per line ($28,800 ÷ 144,000 lines), and the other pools average $4.06 per order before picking. A six-line order is assumed to need a larger carton costing $0.40 more than the average. The table uses those rates; it is illustrative, and a real model should measure pack time and carton use by profile.
Scroll horizontally to see all columns.
| Order profile | Lines per order | Picking at $0.20 per line ($) | Carton adjustment ($) | Cost per order ($) |
|---|---|---|---|---|
| Single-line order | 1 | 0.20 | 0.00 | 4.26 |
| Site average | 2.4 | 0.48 | 0.00 | 4.54 |
| Multi-line order in a larger carton | 6 | 1.20 | 0.40 | 5.66 |
The same split helps when a customer or channel changes its pattern. If a marketplace channel moves from single-unit orders to bundles, the model shows the expected change before the month closes, and finance can set a per-unit or per-line surcharge that reflects the extra handling rather than raising every customer's rate.
Comparing your own cost per order with a 3PL fulfilment quote
A 3PL quote and an in-house cost per order are only comparable after you translate one into the other's units. Most fulfilment quotes bill receiving, storage, pick and pack, materials and account fees separately, so restate your nine pools in those units before comparing totals for the same month's volume.
- Receiving: convert your receiving pool to a rate per inbound pallet or carton, matching the unit the quote uses.
- Storage: compare cost per pallet-day or per pallet per month, and check the quote's cut-off and minimum billing rules.
- Pick and pack: express your picking and packing pools as a per-order fee plus a fee per additional unit or line.
- Materials: confirm whether cartons are billed at cost, at cost plus a margin or included in the pick fee.
- Fixed charges: add account management fees, minimum monthly charges, system integration and transition costs before judging the difference.
Include the costs that do not disappear when you outsource: the people who manage the 3PL relationship, inventory you still own and insure, and any building lease you cannot exit. A per-order quote that looks cheaper on fulfilment alone can be more expensive once those retained costs and the 3PL's minimums are counted at low volume.
Data checks and automation limits for a monthly cost per order
A cost per order figure is only as reliable as the joins between ledger and WMS. Automate the counts and the arithmetic, keep judgement for the few allocation choices that genuinely need it, and record each choice so next month's figure is built the same way.
Scroll horizontally to see all columns.
| Step in the monthly build | Calculation rule applied every month | Assistance a model or tool can offer | Who decides |
|---|---|---|---|
| Counting orders, lines and units shipped | WMS ship-confirm transactions within the calendar month | Not used | Not needed; the count is a query |
| Assigning scan gaps to tasks | Gaps under five minutes go to the next task | Model flags pickers whose gap pattern changed sharply | Shift lead reviews the flag |
| Estimating pack time for oversized books or sets | Standard pack time per carton size | Video or sensor data suggests a revised standard | Industrial engineer approves the change |
| Splitting a shared supervisor between two clients | Split by scanned labour hours per client | Not used | Site manager can override with a note |
| Valuing material consumption | Issues × current purchase price | Anomaly check on carton use per order | Site finance analyst |
One timestamped example shows how a single late posting can swing the monthly figure and how the build-up exposes it.
- 31 October, 23:40, ship-confirm cut-off: the Bhiwandi centre closes the month with 41,260 orders confirmed in the WMS, including a festive-sale surge in the last week.
- 3 November, 10:15, ledger close: the agency labour invoice INV-AG-2210 for the last two weeks of October has not arrived, so October labour cost is understated by about ₹2,40,000.
- 4 November, 16:00, first report: cost per order shows ₹46.10, well below September, and loaded labour cost per scanned hour falls far under the ₹180 standard while the WMS pick rate is unchanged.
- 5 November, 11:30, variance review: the analyst sees labour cost per hour falling while lines per hour stay flat, finds the missing invoice, and books an accrual from agency timesheets.
- Corrected result: after the accrual, cost per order is restated at ₹51.92; the control now compares paid labour hours with scanned hours before the figure is published.
Monthly warehouse cost per order publication should wait until paid labour hours in the payroll and agency ledger agree with scanned task hours in the WMS within 3%, so that a late agency invoice cannot lower the reported figure by 10% or more for one month and reverse the next.
Scroll horizontally to see all columns.
| Check | Pass condition | Evidence |
|---|---|---|
| Cost pools reconcile | Sum of pools equals the warehouse P&L within 0.5% | Reconciliation sheet |
| Driver counts reconcile | Orders, lines and units match WMS ship-confirm totals | WMS query output |
| Labour hours agree | Paid hours and scanned hours within 3% | Payroll and scan log comparison |
| Storage separated | Storage shown as its own component per order | Report layout |
| Outbound freight excluded | No carrier charges in any pool | Account mapping |
| Profiles reported | At least single-line, average and multi-line costs shown | Profile table |
| Method recorded | Allocation choices and rates written down with an effective month | Method note |
Cost per order is one of several warehouse measures in our logistics and supply chain collection, and it is most useful next to service measures such as on-time shipping and order accuracy. If you want help setting up the data feeds, the activity model or an outsourcing comparison for your network, you can outline your sites and volumes through our request for proposal page.
Discuss this workflow
Describe your current systems, the recurring exception and the outcome you need. Keep shipment, customer and financial records out of the initial message.
Common operational questions
Practical answers for operations, engineering, and finance teams working on warehouse cost per order in logistics & supply chain.
What is the formula for warehouse cost per order?
Should storage cost be included in cost per order?
Is warehouse cost per order part of inventory value?
How do I compare my cost per order with a 3PL quote?
References
Sources checked 13 November 2026. US and India statutory authorities and vendor documentation support platform facts; the worked examples and diagrams are original.
- FASB - Accounting Standards Codification 330-10-30-1 and 30-8 (Inventory cost basis; selling expenses)Paragraph text checked against the verbatim excerpt reproduced in the KPMG Inventory handbook (2023), because the Codification site requires sign-in. Accessed 13 November 2026.
- KPMG - Handbook: Inventory (2023), Questions 3.2.60, 3.2.70 and 3.2.90 on warehousing and storage costsInterpretive view, citing AICPA TQA 2140.01, that warehousing costs are generally treated as period costs in practice. Accessed 13 November 2026.
- Ministry of Corporate Affairs - Ind AS 2 Inventories, paragraphs 10 and 16MCA blocks automated access; paragraph text checked against a reproduced copy and ICAI's Educational Material on Ind AS 2. Accessed 13 November 2026.
- ICAI - Educational Material on Ind AS 2 Inventories (Questions 3 and 4: packing material and distribution costs)Secondary packing material treated as a selling cost; distribution costs excluded from inventory. Accessed 13 November 2026.
- ASC X12 — EDI Supply Chain & Transportation Transaction Sets (204/210/214/856/940/945)US standard for electronic data interchange across shippers, 3PLs, and motor carriers.
- FMCSA — 49 CFR Part 395 Hours of Service & Electronic Logging Devices (ELD)US federal motor carrier dispatch and driver duty-status compliance mandate.
- ULIP & NIC GST E-Way Bill Portal — Unified Logistics & Rule 138 ComplianceIndian statutory goods-in-transit and multi-modal logistics verification framework.
