What Buyers Put in a Battery Pack RFQ So MOQ Bids Compare

by Cobalt & Current

A battery pack RFQ only returns comparable minimum-order bids when the bid package itself fixes the volume assumptions and forces every supplier to break its minimum into parts. That means stating expected annual volume, first-order quantity, and the ramp between them; asking separately for per-release, per-shipment, and annual minimums; requiring one-time and recurring costs on separate lines; pricing lead time at each quantity tier; and scoring the minimum terms as their own category rather than letting a low piece price absorb them. Miss any one of those and each supplier quietly answers a different question, and the quote that looks cheapest is usually just the one that assumed the most volume.

I learned that the slow way, staring at a comparison sheet with four quotes on it and no two of them answering the same question. Tooling sat inside the piece price on one bid, on its own line on the second, and nowhere at all on the third, which meant it was either absorbed or forgotten and I had no way to tell which. Lead time was a single number with no hint of the quantity it assumed. The unit prices spread wide enough that the ranking wouldn't survive a change in the volume assumption underneath it. I had already told my manager there was a front-runner. I spent the next day on the phone reconstructing facts that should have been columns in the response template.

So here is what I put in the document now, and why each line earns its place.

One volume number is not a volume assumption

An RFQ that says "estimated annual volume: 5,000" has told the supplier almost nothing. One bidder reads that as 5,000 units spread across four releases and prices setup accordingly. Another reads it as a first order of 500 with a slow build behind it, and quotes a piece price built on small-lot manufacturing. A third assumes the number is aspirational and prices at a run rate it can actually tool for. Three piece prices come back, all "against 5,000 units," and none of them comparable.

What goes in instead is a small volume table, filled in by the buyer before the RFQ goes out:

  • First production order quantity, stated as a number
  • Quarterly build quantities for the first four quarters, so the ramp is visible
  • Full-rate annual volume with the quarter it's expected to be reached
  • A downside case — half the planned volume, or a six-month slip — with a straight question attached: what changes in your quote if this is what actually happens

That last row is the one people skip, and it's the one that saves arguments. Any supplier can price a fantasy. Pricing the floor of the scenario tells you who is planning for the program you actually have.

I don't publish a range like "3,000 to 8,000 per year" and call it flexibility. Ranges invite anchoring at the top and planning at the bottom. A specific first-order quantity plus an honest ramp curve is harder to misread.

Ask for three minimums, not one

"What's your MOQ?" is the wrong question because it has at least three answers, and the supplier will pick the one that flatters the bid. Ask for all three, in separate fields:

  • Minimum order quantity per release
  • Minimum shipment quantity or minimum invoiceable value per shipment
  • Minimum annual commitment before the supplier will hold capacity or run the line

Those are different floors with different causes, and the gap between them is where POs go wrong. A supplier whose release minimum is small but whose annual commitment is large is telling you something about line scheduling. One whose annual floor is low but who needs a full pallet per shipment is telling you about logistics. Knowing both up front means you find out at bid evaluation instead of at the first release.

If the program covers more than one pack variant, add the question that most RFQs never ask: does the minimum apply per part number or across the program? Three SKUs at a 500-piece minimum each, versus three SKUs sharing one 500-piece minimum, changes the pilot build plan more than the piece price does.

"What sets the floor?" is the most useful question in the package

Every minimum has a driver, and the driver tells you whether the floor is structural or a preference. I ask suppliers to name it and give the quantity at which it disappears. In a custom pack, it's almost always one of these:

  • Cells. The cell maker sells in packaging multiples — a box, a reel, a tray — and the pack supplier can't buy below that without eating the remainder. Sometimes there's also a date-code or allocation constraint sitting on top.
  • Tooling. A stamping die for busbars, an injection mold or thermoform for the enclosure, a weld fixture. These are one-time builds with a setup cost, and the minimum is whatever batch amortizes the setup to a number somebody can defend.
  • BMS. Board-level minimums at the BMS vendor, plus configuration and firmware setup time that only gets spent once per variant.
  • Test setup. End-of-line fixtures, ICT fixtures, first-article builds, and the test articles and chamber time that go with qualification testing. This is frequently the real reason a pilot lot costs what it costs.

Once a supplier names the driver, you can push on it intelligently. If the floor is a fixture build, a larger first lot spreads it. If it's cell packaging, there's a specific quantity that unlocks the next break, and asking for that number is a fair question rather than a haggle. If the driver is "engineering time," you've learned that the floor is a scheduling decision, and those move.

I also ask for the next break quantity — the volume at which the piece price drops again. That one line tells you whether you're looking at a real cost cliff or a round number somebody likes.

One-time money and recurring money on separate lines

Nothing wrecks a comparison faster than a supplier who buries NRE inside the unit price. Two bids can look forty cents apart and be identical in total at your actual volume, or look identical and be twenty percent apart, depending on how each one amortized.

The response template splits them. One table for one-time: tooling, fixtures, test setup, first-article builds, any engineering charge. Another for recurring: piece price per unit at each quantity tier, packaging, and the freight basis. And a required field for each one-time item stating whether it's invoiced separately or absorbed into piece price, and at what cumulative volume it's fully absorbed.

That last field is what makes the two tables join up. Without it, a lower piece price just means a supplier amortized over a number it chose.

Lead time only means something next to a quantity

A single lead-time figure in a quote is decoration. I want it as a column, repeated for every row of the volume grid: lead time for the pilot lot, lead time for the first production order, lead time for a full-rate release. Then a second question, which is the one that actually matters for scheduling — first-build lead time versus steady-state lead time. The first build carries fixture time and first-article time. Steady state is cycle time plus cell lead time, and those are not the same number, and quoting the second one while you're planning the first is how programs slip.

Once both are on the page, the trade becomes visible instead of theoretical. A smaller first order with a long first-build lead time is a legitimate choice if the schedule allows it. It's the wrong choice if it isn't, and the RFQ is where you find that out — not three weeks into tooling.

Put samples and pilot lots in the first RFQ

Sample quantities, sample lead time, and pilot lot quantity and price belong in this document. If they're negotiated later, you're negotiating them after design freeze, with one supplier already tooled and the schedule already committed. That is the worst possible moment, and the leverage only runs one direction.

So the volume grid gets its own pilot lot row, above the first production order row, and the sample request sits beside it with a quantity and a date. Suppliers price these happily when they're competing. They price them very differently when they aren't.

Quote validity is a comparison tool, not a formality

A six-week evaluation plus a sourcing review plus a design review can run into the next quarter. If one bid carries a 30-day validity and another carries 90, the 30-day bid quietly stops being a bid halfway through and you end up comparing a live number to a stale one, or re-baselining your whole comparison off a phone call.

I ask for the validity period as a required field, plus a short statement of what would force a reprice. That second part isn't about locking anything down — it's so I know whether a number is firm or indexed, before I rank it against a number that is.

Score the minimums separately, or the piece price wins by default

This is the part that makes the whole package work. If evaluation boils down to a cost column, the supplier with the lowest unit price wins regardless of whether it can build the pilot lot without a fight.

The scoring sheet I use has cost, capability, quality, and capacity as separate weighted categories, and — this is the key move — quantity terms, minimum order quantities, and lead time each get their own score rather than being folded into cost. That way a bid with a great piece price and a three-times-higher release floor takes the hit it deserves, and a bid with a slightly higher piece price and a floor that fits my ramp can actually win.

Cost gets scored on total landed cost at my planned volumes, not on the headline unit price. Capacity gets scored on whether the supplier has line time and cell allocation for the full-rate number, with a question in the RFQ asking them to state it. A quote at 20,000 units a year with no allocated capacity behind it is a promise, not a plan.

Where this still breaks

A tightly structured RFQ costs the supplier estimating time, and a long volume grid can thin the bidder pool — especially the smaller shops that would build an excellent pilot lot and don't have a full estimating department. On a genuinely early program, three tiers and one downside case is usually the right size. Ten tiers is a filter that removes the suppliers you wanted.

And none of this fixes an uncompetitive situation. If one supplier can build the pack, the minimums are whatever they say they are, and a well-designed RFQ just makes the single bid legible instead of mysterious. That's still worth something, but it's not leverage.

What the formula does buy is speed. On the last program where I rebuilt the response template this way, the returns came back as filled grids with signed assumptions and a named driver for every floor. I could rank them in an afternoon and I could defend the ranking, because every bidder had answered the same question. That's the whole point of an RFQ, and it's a design problem, not a negotiation problem.

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