How to Compare Factory Quotes Without Spreadsheet Drift
A merchandiser opens four factory quotes on a Tuesday morning. One is in USD per piece FOB Shanghai. One is in EUR per piece DDP Los Angeles. One is in USD but with a minimum of 800 units per color, where the others quoted 500. One includes trims, two assume the brand supplies trims, and one is silent on trims entirely. She drops all four into a spreadsheet, normalizes what she can in her head, picks the lowest number, and emails the production lead. Six weeks later the PO lands 14 percent over the quoted cost because the lining was upgraded, the duty was not in the quote, and the MOQ tier triggered a surcharge nobody read.
That is the costing drift problem in one paragraph. It is not a vendor problem. It is a comparison problem, and it sits squarely inside Breakpoint 2 of the 6 Breakpoints framework: production and supply execution drift from the plan because the plan was built on incomparable inputs.
What does it mean to compare apparel factory quotes correctly?
To compare apparel factory quotes correctly is to normalize every quote to a single, shared cost structure before any number is ranked. That structure has to specify the unit of measure, the Incoterm, the MOQ tier, the fabric and trim ownership, the sample and development charges, the payment terms, and the lead time. A quote that is missing any of these fields is not a quote. It is a starting position for a negotiation, and treating it as a quote is how brands pick the wrong factory on landed cost.
The word that matters here is landed. The number you compare is never the FOB unit price. It is the all-in cost to get one finished, sellable unit into your warehouse or 3PL, with duty paid, freight allocated, sample amortization included, and a defensible assumption for second-quality and short-ship rates.
Why does spreadsheet drift happen in factory comparisons?
Spreadsheet drift happens because the cost sheet is a snapshot and the quote conversation is a moving target. A merchandiser builds version one of the comparison on Monday. On Wednesday a factory updates the lining grammage. On Friday a second factory clarifies that the MOQ is per color, not per style. By the following Tuesday the spreadsheet has four tabs, three of them outdated, and nobody can tell which version the production lead is working from.
The drift is rarely a single big error. It is fifty small ones that compound. A unit conversion. A trim assumption. A duty rate that was right last quarter and wrong this one. A freight estimate from a forwarder that is no longer the forwarder. By the time the PO is cut, the cost sheet has diverged from the actual sourcing decision by a margin that shows up in gross margin three months later.
Across the comparison conversations I have run this quarter, the same pattern keeps surfacing: the brands that lose the most margin to drift are not the ones with the worst factories. They are the ones whose costing lives in email attachments and shared drives, with no version control and no assumption locks. Their factory partners are not the problem. The comparison architecture is.
What should a factory quote actually contain?
A usable quote has nine fields and they are not optional. If a factory will not give you these in writing, the quote is not comparable.
- Unit of measure (per piece, per dozen, per kilo for trims)
- Currency and the date the FX assumption was made
- Incoterm (FOB, FCA, DDP, EXW), with the named port or address
- MOQ at the style, color, and size level, with the surcharge schedule for tiers below MOQ
- Fabric ownership (factory-sourced, brand-supplied, or nominated mill) with the specific construction, weight, and finish
- Trim ownership with the same level of detail, including labels, hangtags, polybags, and cartons
- Sample charges and whether they are credited against production
- Payment terms (deposit percentage, balance trigger, days net)
- Lead time from approved PP sample to ex-factory, with the buffer for fabric lead time called out separately
If one quote includes trims and another does not, the trim line is not zero on the second quote. It is whatever your trim sourcing costs, and it has to be added before the comparison.
How do you normalize quotes that arrive in different shapes?
Normalization is mechanical once the structure is in place. Build one master cost sheet per style. Every factory’s quote becomes a column. Every cost component becomes a row. The rows that the factory did not quote get filled in from your own assumptions, with a flag that says the number is brand-supplied rather than factory-quoted.
The rows that matter, in order: FOB unit cost, fabric (if brand-supplied), trims (if brand-supplied), freight allocated per unit, duty by HTS code, brokerage and clearance, sample amortization across the production run, and a second-quality allowance based on the factory’s historical rate or 2 percent if you have no history. The sum of those rows is the landed unit cost. That is the only number you compare.
The two columns that buyers forget: the cash-flow cost of payment terms, and the opportunity cost of lead time. A factory quoting 30 percent deposit at PO and 70 percent at shipment, with 90-day lead time, ties up cash differently than a factory quoting net 60 with 60-day lead time. For a $15M brand, the difference across a season can be six figures in working capital. It belongs on the comparison.
When does the spreadsheet stop working?
The spreadsheet stops working at the point where you are comparing more than five quotes per season, or more than two factories per style, or running more than one currency, or working with more than one merchandiser on the same sourcing calendar. At that point the version control problem overwhelms the comparison.
This is the BP2 signature in the 6 Breakpoints framework. Production execution drifts from plan, and the root cause traces back to a planning layer that could not hold its own assumptions still. The PO is cut against an outdated cost sheet. The factory bills against a different one. The reconciliation happens in accounts payable, six weeks late, and the variance shows up as a margin surprise rather than a sourcing decision.
The brands in the $10M to $20M band feel this first. Below $10M the volume is low enough that a careful merchandiser can hold the comparison in her head. Above $20M the volume forces a system. In between is where the drift does the most damage, because the brand is operating at a scale that exceeds the spreadsheet but has not yet committed to the structure that replaces it.
What does the right comparison architecture look like?
The right architecture has four properties. First, every cost component is a structured field, not a free-text cell. Second, every assumption is versioned, so you can see what changed between Monday and Friday and who changed it. Third, the comparison is computed, not typed. The landed cost is the sum of the rows, not a number the merchandiser enters by hand. Fourth, the cost sheet that the PO is cut against is the same cost sheet the comparison was made from. There is no copy-paste step where the assumptions can diverge.
When I am sitting across from a buyer comparing vendors, the question I ask is not which tool has the best costing module. It is whether the costing module is connected to the PO module. If the costing lives in one system and the PO lives in another, the assumptions drift in the handoff. The 6 Breakpoints framework calls this out specifically: BP1 (product data fragmentation) and BP2 (production drift) are usually the same problem viewed from two sides. The cost sheet is product data. The PO is production. If they are not the same record, they will disagree.
Is the cheapest quote ever the right answer?
No, and the brands that pick on FOB unit price alone are the ones that learn this the hard way. The cheapest quote is rarely the lowest landed cost, and the lowest landed cost is rarely the best sourcing decision once you account for lead time, payment terms, second-quality rate, and the cost of supervising a new factory through its first season.
The defensible rule is this: pick the factory whose landed cost is within 3 percent of the lowest landed cost, and whose lead time, payment terms, and quality history give you the most flexibility against your sell-through forecast. If the cheapest factory is 8 percent below the next option but adds 30 days to lead time, the savings evaporate the first time you miss a delivery window into a wholesale account. Retailer chargebacks for late shipment, plus markdown allowance on the missed window, will eat the gap and then some.
This is the same logic that applies to channel architecture decisions. Wholesale should not run through Shopify’s native flow because the systems are not built for it, and the cheapest factory should not anchor your sourcing because price alone is not built to carry the decision. The comparison has to include everything the decision actually depends on.
How do you keep the comparison honest over a season?
The comparison has to live as a single record per style, updated as quotes change, with a clear audit trail of what was quoted, what was assumed, what was negotiated, and what the PO was cut against. When the goods land and the invoice arrives, the variance between quoted landed cost and actual landed cost goes back into the same record. That variance becomes the input for the next season’s quote review with the same factory.
For a $15M brand running wholesale and DTC simultaneously, the reconciliation cost of getting this wrong is roughly 6 to 9 hours per week of someone’s time, often a merchandiser or production coordinator who should be on fit calls or PP sample review. That is one FTE doing data plumbing, and the work is invisible until it stops. When the brand finally moves the costing into a connected production module, that time comes back, and the margin surprises stop showing up in the month-end review.
What this means for an apparel operations team
The brands that win on margin are not the ones with the best factory relationships. They are the ones with the cleanest comparison architecture. Their cost sheets are structured records, not spreadsheets. Their assumptions are versioned. Their POs are cut against the same record the comparison was built from. Their variance is tracked back to the quote, and the quote conversation for the next season starts from that variance.
The practical move, if you are reading this and recognize your own process in the opening scene, is not to redesign your costing template. It is to ask whether your costing template should be a template at all, or whether it should be a connected production record that holds its assumptions still, versions its changes, and feeds the PO directly. The 6 Breakpoints assessment is the fastest way to see where this is hurting you today, and the BP2 questions in particular surface the costing drift most clearly.
The goal is not better spreadsheets. The goal is to stop comparing quotes in a place where the comparison cannot defend itself a week later.
Where is your operation on the 6 Breakpoints curve?
The assessment scores your apparel operation across all six breakpoints (product data, production, inventory truth, order flow, warehouse execution, reporting) and identifies which one is hurting you most.
Frequently asked questions
Shubham writes about evaluating ERP fit, assessing operational complexity, and how apparel brands can tell whether their current systems are helping or holding them back. As a Solutions Consultant at Uphance, he runs discovery conversations and fit assessments for apparel brands moving off patchwork stacks of PLM, PIM, inventory, and B2B tools. His articles cover ERP selection, vendor RFPs, comparison frameworks, and the operational signals that tell a brand it has outgrown spreadsheets and point solutions. He focuses on how mid-market apparel teams evaluate connected platforms against the cost of staying with what they have.
Ronnell writes about onboarding, adoption, and operational readiness for apparel brands moving to a connected platform. His articles focus on what it takes to go live with confidence and sustain strong execution across channels, warehouses, and teams. As Head of Customer Success and Onboarding at Uphance, he leads the implementation phases that turn a software signature into running operations. He writes about kickoff scoping, data migration, sandbox cutover, change management patterns, and the stakeholder alignment work that determines whether a connected platform actually changes how a brand runs, or just adds another login to the existing chaos.
