A single freight bill can hide the true margin of every SKU in a shipment. The fix is to match each cost to the driver that caused it, then apply that rule consistently. This guide shows how to allocate freight cost across multiple SKUs for Amazon FBA, Shopify, and WooCommerce, using spreadsheets or SupplyAutomate.
What Freight Cost Allocation Means for eCommerce Inventory
Freight cost allocation means splitting one shared shipping charge across the products inside a shipment. Each SKU then receives its share of freight, duty, broker fees, and other costs that help make the inventory saleable.
That share becomes part of the SKU's landed cost. Landed cost is the full cost of getting a product ready for sale, not just the supplier invoice. It affects pricing, gross margin, reorder choices, and cost of goods sold.
Imagine an Amazon FBA shipment with a small, dense accessory and a large, light storage item. An equal split makes both products look as if they consumed the same freight. That may be far from true. The bulky item may take more carton space, while the dense item may drive the carrier's weight charge.
Amazon sellers also need clean carton data before the goods leave the supplier. Record the SKU count inside each carton, the carton weight, and its dimensions. If one shipping plan goes to more than one fulfillment center, keep each destination's costs separate. Mixing those charges can make later margin checks hard to trust.
For a fuller unit-cost formula, see Landed Cost per Unit: Formula and Examples. The same idea applies to Shopify and WooCommerce stock. A freight bill should follow the inventory it helped move.
SupplyAutomate uses AI-powered document processing to capture shipment costs and provide real-time landed-cost insight. That helps replace a loose stack of invoices with a traceable cost record for each SKU.
Choose the Right Freight Allocation Method
To allocate freight cost across multiple SKUs well, first ask what caused the charge. Weight may drive a line-haul fee. Cubic volume may drive a dimensional charge. Product value may better fit duties or taxes.
Use the table below as a decision guide. It is better to use two sensible rules than one easy rule that hides the real cost driver.
| Method | Best fit | Formula | Main risk |
|---|---|---|---|
| Weight-based | Freight tied to shipment weight | Total freight × SKU weight ÷ shipment weight | It can misstate duties calculated from value |
| Volume-based | Bulky goods or dimensional billing | Total freight × SKU volume ÷ shipment volume | It ignores density when actual weight drives price |
| Value-based | Similar products or value-led duties | Total cost × SKU value ÷ shipment value | High-value compact items may absorb too much freight |
| Quantity-based | Nearly identical units | Total cost ÷ total units | Mixed SKUs appear equally expensive to ship |
| Discount-price | Fees tied to discounted item value | Total fee × SKU discount price ÷ total discount price | It may not reflect carton space or weight |
| Hybrid | Shipments with several cost types | Use a driver for each cost line | It needs better data and system rules |
Weight is a sound choice when transportation cost rises with weight. Volume is better when a carrier bills by dimensional weight. Value works well when duties and taxes make up much of the landed-cost mix.
Quantity is the simplest option, but it has a narrow use case. If every item has a similar size, weight, and value, divide the shared cost by unit count. Mixed products need more care.
A hybrid method may assign freight by weight, duty by product value, and a warehouse handling fee by quantity. Research on activity-based cost allocation describes a similar idea: trace resources to the activities that consume them, then assign those costs to products. See this activity-based cost allocation overview for additional context.
Key Takeaway: Choose the driver that matches each charge. Do not force freight, duty, and handling through one allocation rule. Allocation is one step of the wider landed cost method.
Step-by-Step: Allocate Freight Cost in a Spreadsheet
A spreadsheet works for a small shipment when the source data is clean. Set up one row per SKU and keep the original invoice values beside the calculated allocation.
Step 1: Gather the shipment inputs
Start with the freight invoice and purchase order. Record the total freight charge, shipment reference, currency, supplier, destination, and receipt date.
Then add these fields for every SKU:
- SKU code
- Units shipped
- Unit purchase price
- Total SKU value
- Unit weight
- Total weight
- Unit length, width, and height
- Total cubic volume
Check that the SKU totals match the purchase order. Check that all carton weights match the supplier's packing data. A formula cannot repair missing or wrong inputs.
Step 2: Pick the allocation driver
Use weight when the carrier invoice is weight-led. Use volume when cartons are large relative to their mass. Use value for a duty line that is assessed against product value.
For a simple weight method, calculate each SKU's share:
SKU freight share = total freight × SKU total weight ÷ shipment total weight
For volume, replace weight with cubic volume. For value, replace it with product value. If your sheet contains several charges, apply the matching formula to each charge rather than adding all charges first.
Step 3: Calculate the unit landed cost
Add the allocated freight to the SKU's product cost. Then add any allocated duty, tax, broker fee, or approved handling charge.
Unit landed cost = product cost + allocated shared costs ÷ SKU units
Keep the allocation amount and the per-unit result in separate columns. That makes a later audit much easier.
Step 4: Reconcile the totals
Sum the allocated freight column. It must equal the freight invoice total, apart from a clearly documented rounding difference. Repeat that check for duty and every other shared charge.
Use a final check row. If the result is not zero, stop and find the missing SKU, wrong unit count, or duplicated charge before posting the receipt.
For an Amazon-specific example, see How to Calculate Amazon FBA Landed Cost. A bulky but light item may need volume allocation, while a dense item may need weight allocation.
The weak point is manual upkeep. One changed carton count or late accessorial fee can leave the spreadsheet out of sync with the accounting record. Use a versioned file and assign one owner to approve changes.
Handle FOB Terms, Accessorial Charges, and Financial Reporting
FOB terms affect whether freight belongs in your inventory cost. Under FOB origin, ownership transfers when the goods leave the seller, so the buyer normally bears freight in transit. Under FOB destination, ownership transfers when the goods arrive and are accepted, so the seller normally bears that freight.
Read the purchase contract before adding a freight bill to inventory. The invoice alone does not tell you who owns the goods in transit.
Accessorial charges need their own review. These may include storage, fuel adjustments, customs service, detention, inspection, or delivery fees. Do not automatically spread every charge by quantity. Ask what caused each line.
A delivery charge caused by carton weight may use weight. A customs fee tied to declared value may use value. A fixed receiving fee may use units or purchase orders.
Correct treatment affects inventory valuation and cost of goods sold. If freight that belongs in inventory is posted straight to a freight expense account, current margin may look worse while inventory cost looks too low. If a seller capitalizes a charge that should be expensed, the opposite problem appears.
For accounting-system workflows, connect freight and duty bills to inventory records. Set a clear general-ledger rule for each charge type, then review exceptions instead of coding every bill by hand.
Automate Allocation Across Warehouses, 3PLs, and Accounting Systems
Automation becomes useful when one shipment feeds several warehouses or sales channels. Amazon FBA may split a shipping plan across fulfillment centers. Shopify and WooCommerce stock may arrive at a 3PL, while the accounting system holds the purchase order.
The key is a shared shipment ID. Use it to connect the supplier invoice, freight bill, receiving record, SKU list, destination, and accounting entry.
A good allocation workflow should:
- Extract data from freight invoices and duty receipts.
- Match charges to the correct purchase order.
- Apply a saved rule by charge type.
- Show the calculation behind each SKU cost.
- Send approved values to inventory and accounting records.
SupplyAutomate is built for Amazon FBA and Shopify sellers that need this work handled across supplier documents and landed-cost records. Its AI-driven process supports real-time cost insight, which means a manager can ask, “What did this shipment really cost?” without rebuilding the sheet first.
Warehouse distribution adds another layer. Moving stock across multiple 3PL sites can reduce outbound shipping spend, but the transfer itself has a cost. Track that transfer by origin, destination, units, and shipment date. Otherwise, the saving from shorter customer delivery may be overstated.
Rule-based GL coding still needs review. A rule can identify “ocean freight,” but it may not know whether the bill belongs to inventory, an intercompany transfer, or an expense accrual. Keep an approval queue for unusual charges.
Here is the right operating model: automate capture and routine math, then reserve human review for missing data, unusual fees, and changes to the allocation policy.
For Shopify-specific cost work, keep freight, duty, tax, and broker charges tied to the product cost record.
Pro Tip: Save the allocation rule with the shipment record. A future reviewer should see why weight, volume, value, or quantity was used.
Frequently Asked Questions
How do you allocate freight cost across multiple SKUs?
Allocate freight by dividing each SKU's driver by the shipment total, then multiplying that share by the freight bill. Use weight for weight-led freight, volume for dimensional charges, and value for value-led duties. If one shipment has several charge types, assign each line with its own driver.
What is the best freight allocation method for Amazon FBA?
The best method depends on the shipment data and charge type. Weight may fit dense goods, while volume may fit large cartons. A hybrid method is often better when freight, duty, and handling all appear on one shipment. Keep Amazon destinations separate when a shipping plan splits across fulfillment centers.
Should freight be included in inventory cost?
Freight should be included in inventory cost when the buyer owns the goods in transit and the charge helps bring inventory to a saleable location. FOB terms help determine that responsibility. Confirm the contract, then apply the same accounting policy across purchase orders and receipts.
Can I use quantity to split freight?
Yes, quantity can split freight when the SKUs are nearly identical in size, weight, and value. Divide the shared charge by total units, then assign the same amount to each unit. Avoid this method for mixed shipments because it hides the products that consume more space or weight capacity.
How can software automate freight allocation?
Software can capture invoice data, match charges to purchase orders, apply saved allocation rules, and update landed-cost records. SupplyAutomate focuses on eCommerce workflows for Amazon FBA and Shopify sellers. Automation reduces repeated entry, but unusual charges still need a human approval step.
Conclusion
Match each freight line to the cost driver that caused it. For a few consistent shipments, a controlled spreadsheet is enough. For Amazon FBA, Shopify, or WooCommerce operations with many documents and destinations, use SupplyAutomate to automate capture and landed-cost calculation. Start with your next freight bill, list every charge, and document the rule before posting the receipt.
