Beta
Back to the blog
Product

From messy CSV to publish-ready catalog: what normalization really does

Your supplier's CSV is a minefield: EANs broken by Excel, columns that change names, products with no identifier, duplicates. Here's what the least glamorous and most important stage of all does, step by step: normalization.

3 min readNoobit team

You open the CSV your supplier sent you, expecting a clean list of products. What you find is something else: columns named differently from last time, barcodes turned into something like "5.01E+12", products with no identifier at all and the same item listed three times at three prices. Before you can enrich or publish anything, that mess has to be fixed. That's normalization's job: the most boring and most decisive stage in the catalog.

Why the supplier's CSV is always messy

It isn't bad faith; it's entropy. Every supplier exports in their own way, every export goes through an Excel that "helps" by breaking things, and the data has been handled by several people with different criteria. The result is that two files from the same supplier are almost never the same, and none of them is ready for your store.

The real problems (not the textbook ones)

  • EANs in scientific notation: Excel turns 5012345678901 into "5.01E+12" and, if it saves it truncated, you lose the code.
  • Leading zeros that vanish: an EAN that starts with a zero ends up one digit short, and a SKU "00123" becomes "123".
  • Columns that change name and order with every export.
  • Products with no EAN or SKU: they can't be identified or matched to your catalog.
  • Duplicates: the same item several times, sometimes with contradictory data.
  • Formats and categories done their own way: decimal commas in one file and decimal points in the next, and categories that look nothing like yours.

What normalization does

01
Detect and map columns

Recognizes which column is the title, which is the EAN, which is the price… even when they change names, and suggests the mapping.

02
Fix and validate identifiers

Undoes the scientific notation, restores the missing leading zeros on the EAN and validates it with its check digit. If an EAN is broken beyond repair, it flags it instead of letting it slip through.

03
Deduplicate

Spots the same item repeated and merges it, instead of creating three products where there's only one.

04
Understand the formats

Reads Spanish-style decimals ("17,45", "1.234,56") and recognizes whether the file is separated by commas, semicolons or tabs.

05
Map your taxonomy

Translates the supplier's categories into yours, which almost never match.

EAN or SKU: the identity rule

A decision that seems minor and changes everything: how you identify a product. Not every product has an EAN — in fact, a good share of a retail catalog doesn't — so requiring one leaves half the warehouse out. The sensible rule is "at least an EAN or a SKU, EAN preferred": match by EAN, then by SKU, and if there's neither, flag it. What you should never do is match on an empty EAN: it would match any other product without an EAN and mix up items that have nothing to do with each other.

The scientific notation case
It's so common it deserves its own rule: when an EAN arrives as "5.01E+12", it has to be rebuilt. If Excel saved it truncated, the check digit won't add up and the system should reject it instead of making up the missing code.

Why such a boring stage matters so much

Because everything that comes after is built on top of it. If normalization fails, enrichment writes from bad data, images get assigned to the wrong product and publishing sends garbage to your store. It's the classic "garbage in, garbage out". Normalization doesn't shine in a demo, but it's the foundation that a catalog you can trust stands on.

Put your catalog on autopilot

See Noobit working on your own catalog, with no strings attached.