Shopify catalog cleanup for migrations and imports

Your supplier's spreadsheet, ready for Shopify.

Send the CSV you got from your supplier or your old platform. You get back a file prepared for Shopify import, with unresolved decisions clearly flagged, plus your original untouched and a report of every change.

  • Original file never modified
  • Every change logged
  • Fixed price before work starts
BEFORE
SKU-009 | City backpack   | 45,00 EUR | 1,5 kg
AFTER
SKU-009 | City backpack | 45.00 | 1500

The problem is not bad data. It is what bad data breaks on import day.

Most catalog files look fine in a spreadsheet. Shopify disagrees. These are the issues that stall a migration or quietly corrupt a live store:

BLOCKER

Two products, one handle

A handle identifies one product. If two different products share it, their rows can be treated as the same product. Repeating a handle for the sizes of one product is normal: that is how variants are grouped.

BLOCKER

Broken variants

One row says "Size", the next says "Talla", the third says nothing. Inconsistent option names need a decision before import. On updates, missing option columns can replace existing variants with a default variant.

WARNING

Weights like "1,5 kg"

Shopify’s weight column expects a whole number of grams, without units. Incorrect weights can affect carrier-calculated shipping or fulfillment.

WARNING

Prices with symbols and commas

Shopify’s price column needs a number such as "12.95", without a currency symbol. Ambiguous amounts are flagged rather than guessed.

AUTOFIX

The boring stuff

Trailing spaces, repeated tags, mixed separators. Fixed automatically and listed in your report, line by line. Capital letters in sizes or colours are flagged, not changed.

See what changes in your free sample.

Every cleanup comes with a change log and a risk list. The change log records the row, the field, the old value, the new value, and the rule that produced the change. If a change looks wrong, you can trace it back to the original.

BEFORE
SKU-009 | City backpack   | 45,00 EUR | 1,5 kg
SKU-009 | City backpack   | 45,00 EUR | 1,5 kg
AFTER
SKU-009 | City backpack | 45.00 | 1500
(row 11 removed: exact duplicate of row 10)
CHANGE LOG

Swipe horizontally to see all columns. You can also focus the table and use the arrow keys.

RowFieldBeforeAfterRule
Row 10Title"City backpack ""City backpack"trim-whitespace
Row 10Variant Grams"1,5 kg""1500"weight-to-grams
Row 10Variant Price"45,00 EUR""45.00"price-normalize
Row 11(all fields)duplicate of row 10removedexact-duplicate

In this example, a repeated row is removed, the title is trimmed, the price format becomes 45.00 and 1.5 kg becomes 1,500 grams. No price or product identity is chosen for the customer.

Nothing in your file is rewritten silently. A row is only removed when it matches another row in every field after the logged normalizations. If a value needs a human call, it goes on the risk list instead.

What lands in your inbox

  1. A cleaned CSV, prepared for Shopify import, with unresolved decisions clearly flagged.
  2. Your original file back, untouched, for the record.
  3. A change log: row, field, before, after, and the rule applied.
  4. A risk list: rows I did not touch because they need your decision, each with a plain-English explanation.
  5. Revision rounds: one with the Pilot, two with Standard, one a month with Catalog care. If your import flags something the cleanup got wrong, send it back and it gets fixed. Rounds cover errors in the cleanup, not values still waiting for your decision on the risk list.

From messy file to import day in four steps

  1. Send a sample

    Upload the whole file or just 25 rows. The free sample covers 25 rows. You get a sample cleanup and a fixed quote based on the real state of your data, not a guess from your product count.

  2. Approve the quote

    One price, agreed before work starts. No hourly billing, no surprise invoice because your file was worse than expected.

  3. Cleanup and report

    Your file goes through a set of validation rules, then a manual review of everything the rules flagged. You receive the cleaned CSV, the change log, and the risk list. Usual turnaround is 3 to 5 business days.

  4. Revision round

    Import the file. If Shopify or you find something the cleanup got wrong, send it back and it gets fixed at no charge, within the revision rounds of your plan. Values still waiting for your decision on the risk list are not part of a round.

Fixed prices, scoped to your file

Each plan is priced by catalog size. A product counts once, however many variants it has; each variant is one row in the file. Prices exclude VAT where applicable. Above 1,000 products, or for unusually messy files, you get a written quote after the free sample – never a bigger invoice halfway through.

Sample

Free

25 rows, one file format.

The cleaned rows, the change log, and a fixed quote for the full job.

Request the free sample

Standard

from EUR 549

For full catalogs and agency projects.

  • Up to 1,000 products
  • Mixed supplier formats mapped to Shopify
  • Two revision rounds
  • Priority delivery for migration deadlines (timeline agreed in the quote)
Scope my catalog

Agencies: all deliverables can carry your branding. Ask about white-label terms.

Honest scope

A good fit if

  • You are migrating to Shopify or importing a supplier file.
  • Your team is small and your catalog fits a Pilot or Standard scope.
  • You want a record of what changed, not just a file that "seems fine".
  • You are an agency that runs migrations repeatedly and wants the same checklist applied every time.

Probably not a fit if

  • You want product descriptions written or translated.
  • You need ongoing SEO, ads, or store design.
  • You want someone to change prices, stock, or merge products without your approval. I flag those decisions; I do not make them.

Questions before you send a file

Gabriel Bootello

Who you are hiring

ImportReady is one person: me, Gabriel. I study mathematics and computer science, and I built this service around a simple observation – catalog imports fail on the same dozen problems every time, and those problems can be checked systematically. The rules engine does the repetitive checking. I do the judgment calls. You get a file you can defend in front of a client, because every change in it has a reason attached.

Send your file, get a fixed quote

The fastest way to know what your catalog needs is the free 25-row sample. You will get the cleaned rows, the change log, and a quote for the full job within two business days.

If you are not sure, leave it blank and the report will ask.

25 rows is enough for the sample. Send only supplier product data you are allowed to share. Do not include customer data, passwords or store credentials.

Files up to 7.5 MB (7,500,000 bytes), leaving room for the form within the 8 MB upload limit. Larger catalog? Email me a link instead.

Your file is used only to produce your sample and quote. Files and reports are deleted 30 days after a project closes, or 30 days after your sample request if no project follows, or sooner on request. From the change log I keep only row numbers, field names and the rules applied – never your data. Privacy notice.