The Cheapest Battery Pack Quote Rarely Costs Least Delivered

by Cobalt & Current

The cheapest battery pack quote rarely costs least delivered, because the number on the quote covers only the supplier's half of the shipment. Incoterms choice, dangerous-goods handling, duty and customs entry, brokerage, inland drayage and chassis time, incoming inspection, and the carrying cost of safety stock held against a long ocean transit all sit on the buyer's side of the ledger, and none of them appear on the PDF the supplier emails over. Landed cost is not a number a supplier gives you. It is a stack you build, one decision at a time, and the unit price is only the bottom layer.

I was on our receiving dock at 6:40 on a Tuesday morning because the program manager wanted a photo of the packs sitting on our floor, and I wanted to read the labels. The driver already had the liftgate coming down. Two pallets, shrink-wrapped, misting rain, and the lithium battery mark staring up from every carton. The receiver asked for the safety data sheet. The driver handed over a clipboard with a signature line and a fistful of paper, and I stood there reading the hazardous materials declaration while the forklift idled behind me.

UN 3481, packed with equipment. State of charge written out in a field near the bottom. Engineering had re-flashed those packs down the week before so the airline would accept them, and nobody in that meeting had asked what the re-flash cost, or what it would cost us to bring the packs back up before they could go to the line.

That shipment moved because we paid it to move. An expedite is the easy case, since everyone in the room already knows it is expensive. The hard case is a three-year program running on the quote that looked cheapest in the bid tab.

Three quotes, one column

We had a bid tab with three suppliers on it. One at the lowest unit price, FOB origin. One in the middle, DDP to a US airport. One at the highest unit price, DDP to our dock, with the dangerous-goods paperwork done and a forwarder named in the response. The tab had a single column: unit price at volume. The low one won by a margin that made the meeting short.

Everything that happened over the next eighteen months was arithmetic we could have done in that same meeting.

What FOB actually hands you

Under FOB, the supplier's invoice stops at the ship. Everything downstream arrives later as separate invoices from parties you picked, or parties you didn't. Ocean or air freight, insurance, destination terminal charges, the customs entry, the bond, the broker, the drayage, the chassis, the inland leg to your plant. None of it vanishes. It just moves off the supplier's paper and onto yours.

Under DDP, the supplier pays those things and rolls them into the unit price, plus a margin for the risk and a buffer for the variability. You get one number and no visibility into how it was built. That is fine until finance asks you to explain why delivered cost per pack moved in a quarter when the unit price didn't. It is also fine until you realize your DDP supplier is optimizing the routing for their freight cost, not for your line-down date, and that a consolidation decision made in their office shows up as three extra weeks of inventory on your balance sheet.

Neither term is wrong. But the term you choose determines which column the cost lands in, and a buyer who doesn't know that is comparing numbers that were never comparable.

The state-of-charge field decides your mode

Packs don't get to choose air or ocean. The charge level in the box chooses for them. Standalone cells and packs packed with equipment are capped on state of charge for air movement, and once a pack is above that threshold the booking goes away and you are on the water whether you planned to be or not.

So the mode is a consequence of a specification. If your program needs packs at a shipping charge level that only flies, you are buying transit time at air prices. If it ships at the lower level to keep the ocean option open, then somebody has to bring those packs back up to a usable charge before the line can build them. That means a charger, a bench, a technician, floor space, and a schedule slot. I have never once seen that step quoted.

UN 3480 and UN 3481 are not interchangeable on a booking form

The same cell inside the same housing can ship under a different entry depending on whether it travels alone or packed with equipment. The declaration entry drives the packing instruction, the label, the carrier's acceptance check, and the handling charge. Your forwarder books against whatever the supplier wrote on the paperwork.

When those two documents disagree, the shipment stops. Usually at the origin hub. Occasionally at yours, after you have already promised the build line a date. I have watched a single pallet sit for four days over a mismatched entry, and the fix was a reissued document and a phone call. Four days of program schedule for a clerical field. The shipper signs the declaration, and if the shipper is your supplier then the error is theirs, but the delay is still yours.

The invoices that show up after the first container

Nobody puts these in a bid tab, and everybody pays them.

Drayage from the terminal to the yard. Chassis, charged per day, on a clock that starts when the box hits the ground and does not care about your receiving hours or a holiday weekend. Terminal and port fees. The importer security filing, which has to be in before the cargo loads. The customs entry itself. A bond, single entry or continuous. Brokerage as a separate service line. And if the container gets pulled for an exam, the exam fee and the days it spends sitting in the yard waiting for a slot are yours too.

Then the inland move to your dock. A pallet of battery packs is not a pallet of t-shirts. Weight, class, and handling change which carriers will touch it and what equipment has to show up, and that shows in the rate even before anyone adds a dangerous-goods surcharge.

I build the landed-cost model on the calendar, not on the invoice. Every one of those charges has a trigger date, and the dates are where the money hides. A chassis that clears the gate on Friday afternoon is a different cost than one that clears Monday morning, and the only way to see it is to draw the shipment as a timeline with a cost attached to each handoff.

Duty, entry, and the number you own

The classification you assert on the entry drives the duty. Cells, finished packs, and the assemblies they go into are not the same thing for that purpose, and the broker files what you tell them to file. Brokerage is a service fee and duty is a tax and freight is neither, and all three arrive on different paperwork. I will not tell anyone how to classify a pack. I will say that the classification decision belongs in the RFQ, written down and agreed, because a correction later is a reconciliation project with your finance team, not a line edit.

Safety stock is the cost with no invoice at all

Add up the weeks: ocean transit, port dwell, inland transit, receiving, inspection, plus whatever buffer your planner insists on. That total is inventory you own. Multiply the average units held by the unit cost and by whatever carrying rate your company uses for capital, storage, insurance, and handling. Then add obsolescence, which for batteries is not theoretical. Cells carry a calendar life. A pack that sits nine months is worth less than one that ships in month two, and if the program revs the enclosure, it is worth scrap.

This is the line that flips rankings. A supplier with a shorter transit, a domestic buffer, or a consignment arrangement can quote a higher unit price and still win the program by a wide margin once the inventory is priced honestly.

One caution: the carrying rate is a policy number, not a discovered fact. Pick one, write it down, and use the identical rate for every supplier in the comparison. The moment it becomes a knob you turn, the model stops being a model and starts being an argument with arithmetic bolted on.

Receiving inspection is a cost of the supplier's paperwork

When the end-of-line test records arrive complete, with serials, limits, and dates that match the cartons, we sample. When they arrive as a PDF of a spreadsheet with half the serials missing, we inspect everything, and now I am paying technicians to do work the supplier's quality system was supposed to have done before the pallet was wrapped.

Then add the rework: relabel, re-test, re-flash, repack, and the chargeback conversation that recovers maybe a third of the labor. Per unit it looks like rounding. Per program it is a headcount.

Build the columns before you build the comparison

The fix is unglamorous and it happens before the RFQ goes out. Make every supplier answer the same question in the same shape: same Incoterm, same delivery point, same dangerous-goods entry, same state of charge at shipment, same packaging, same documentation set, same inspection records. When the responses come back aligned, the comparison is arithmetic instead of negotiation.

My current tab has these columns, and I add to it every time a charge surprises me: unit price; packaging and palletization; origin inland; main leg; insurance; entry, bond, and brokerage; duty; terminal, drayage, and chassis days; destination inland; dangerous-goods handling; charge reduction or restoration at destination; receiving inspection hours; rework; carrying cost of safety stock; obsolescence reserve; and a risk line I fill in by hand for the things I can't price.

The lowest quote is not wrong. It is a partial answer to a question that was asked badly. Ask it in the shape of the whole shipment and the winner is often a supplier who never had the lowest unit price at all.

Cobalt & Current
Written by Cobalt & Current

Cobalt & Current is the shared byline of a group of US sourcing and quality professionals working in custom lithium-ion pack procurement. Between them they have handled cell sourcing, pack assembly audits, and dangerous goods documentation for OEM programs.

More about us