Get all 14 · $49

How to Compare Supplier Price Lists in CSV

Compare old and new prices on the same unit basis, keeping pack changes, missing rows, and duplicate IDs visible.

Start with comparable columns from both price lists

Keep a copy of each file before editing it. Make a working table with the supplier item code, product description, price, currency, pack quantity, and unit of measure. Record which list is older and which date the new prices take effect. If a supplier publishes separate price tiers, identify the tier you can actually buy at and use it consistently across the comparison.

Import the SKU or item code as text. A spreadsheet may otherwise change 00142 to 142 or automatically convert a code to a date. Microsoft’s guide to keeping leading zeros explains how to preserve codes during import. Keep the raw code in its own column so you can see which original record was matched.

Match by SKU and divide pack price by pack quantity

Identify duplicates before pairing rows. If the same item code occurs multiple times with different pack counts, currencies, or tiers, verify which fields together define the product offer. A match by description alone can accidentally pair different sizes or finishes. Trim extra whitespace if needed, and normalize case only if the supplier treats case as equivalent.

Compare each matched SKU using pack price divided by the number of comparable underlying units. Use the same currency and price basis on each side. Convert case or bulk counts to sheets, boxes, labels, or whichever unit reflects what your business consumes. A foreign-currency quote or a switch from per-sheet to per-ream needs explicit handling before calculating a change.

Worked example for three SKUs

Old and new supplier CSV rows, normalized by unit
SKUOld packNew packResult
00142$48 / 500$44 / 400$0.096 to $0.110 per sheet, up 14.58%
00210$20 / 100MissingConfirm availability
00318Missing$32 / 200New row, $0.160 per unit

SKU 00142 has a lower pack price but a higher unit price. The percentage change is the new unit cost minus the old unit cost, divided by the old unit cost. If the old price is zero, report the dollar change and flag the percentage as unavailable. For the missing row, check whether the product was discontinued, moved to a different file, or replaced with a new item code.

Review exceptions before updating your estimates

Keep new, missing, duplicate, and invalid rows visible rather than burying them in the same list of matched updates. Compare a few matched SKUs back to the supplier sheets. Check freight, quantity thresholds, and price effective dates before changing your costing table. If a description has changed along with the pack size, confirm that the physical product still meets the specifications your shop needs.

Common comparison mistakes

Do not treat an empty price as zero. Confirm decimal punctuation and the delimiter when importing. Keep packs, cases and individual units distinct, and preserve enough decimal places to see small but meaningful unit changes.

Keep the comparison result dated alongside the source files. If another person approves the change, record the SKU and effective date they approved, then update the costing system from that dated comparison.

Frequently asked questions

Can I match two suppliers by SKU?

Their internal codes may differ. Use a verified common product identifier or maintain a mapping between the suppliers’ SKUs.

What does a missing row mean?

It means the comparison found no matching row. Ask the supplier before assuming the item is discontinued.

Do I need to include freight?

Include it when evaluating what your business pays to receive the items. Use a consistent allocation on both sides.

When should I round unit costs?

Keep precision for comparisons and quote calculations. Round the displayed values only after computing the changes.