CSVwise

What CSVwise does.

One tool, one job. Every capability shipping at v1.

01

AI column mapping

Our AI provider reads your CSV's columns and sample row values, then maps each one to Shopify's product schema, even if your column names don't match Shopify's exactly. Every suggestion comes with a confidence rating.

why it mattersManual column mapping is the tedious gate at the start of every import. Supplier exports have inconsistent names: "Product Title" vs "title" vs "Name" vs "Item Description." Doing it by hand is the slowest step in the workflow.

column mapping · 6 of 14
your csv
shopify schema
Product Title
high
Title
item_handle
high
Handle
Retail Price
high
Variant Price
wt_grams
medium
Variant Grams
Category
low
Product Typereview
available
medium
Status
02

13 deterministic auto-fixes

CSVwise automatically fixes the routine issues every Shopify CSV needs cleaned. All default-on, all toggleable per category.

why it mattersWithout CSVwise, merchants find-and-replace in Excel for an hour per file. Same dozen issues every import.

  • 01Generate missing handles from Title
  • 02Normalize handle format (lowercase, hyphens)
  • 03Truncate handles over 255 characters
  • 04Strip currency symbols from prices
  • 05Convert EU decimal format
  • 06Round prices to 2 decimals
  • 07Extract weight units from values
  • 08Normalize booleans (Y, 1, yes → TRUE)
  • 09Normalize tag separators
  • 10Truncate tag lists over 250 tags
  • 11Trim whitespace on key fields
  • 12Round decimal inventory quantities
  • 13Normalize Shopify enum values
03

Live store handle-collision check

Pro+

After AI mapping, CSVwise checks your CSV's handles against your live Shopify store and shows every match in its own Store matches section. Keep those rows if you intend to update the products you already sell, or remove them from the cleaned CSV to leave your catalog exactly as it is.

why it mattersA matching handle changes what Shopify does at import: with “Overwrite products with matching handles” ticked it updates the existing product, and unticked (the default) it skips the row entirely. Either outcome is one you want to choose on purpose, not discover afterward.

store matches3 store matches
3 rows match products that already exist in your store.Shopify updates them only if you tick Overwrite products with matching handles when you import, otherwise it skips them.
blue-t-shirtexistsAlready in your store
navy-capexistsAlready in your store
linen-toteexistsAlready in your store
red-hatnewNew product
04

Problem detection: 40+ checks

We scan your CSV against Shopify's documented rules and flag every row that would fail import, across prices (including compare-at and cost per item), weights, handles, variant and option structure, product category vs. Type, status and enum values, and file encoding. Results land in four groups: Store matches (rows that match products you already sell, a choice for you to make), Errors (CSVwise can't fix these, so they block the download), Warnings (never block, and auto-fixed where a matching fix is on), and Notes (informational).

why it mattersShopify's importer reports row-level errors but without surfacing the row number directly in the failure message. CSVwise tells you exactly which row, exactly what's wrong, and what to do about it.

problem detection · 37 issues + 1 store match
matchrow 18Matches a product already in your storecollision.exists
errorrow 42Missing Title. Required fieldtitle.required
errorrow 87Price not parseable: "call for price"price.invalid
warnrow 103Negative price: -19.99price.negative
warnrow 156Duplicate Handle. Shopify treats these rows as variantshandle.duplicate
noterow 201Variant grouping detected: 4 rowsvariants.grouped
12 errors 18 warnings 8 notes
05

Remove-rows escape hatch

Some rows have errors CSVwise cannot fix: missing Title, garbage data. Instead of forcing you back to Excel, remove those rows individually or in one click and generate the cleaned CSV without them. Your source file is unchanged, and removed rows stay visible in the preview so you can restore them.

why it mattersWithout this, a merchant with 1,000 good rows and 5 broken rows has to either fix all 5 in Excel or skip the import entirely. CSVwise ships the 995.

remove unfixable rows · 2 of 1,247
blue-tshirtBlue T-Shirtclean
red-hatRed Hatclean
{missing}{missing}Missing title + handle
linen-toteLinen Toteclean
{missing}[garbage row]Unparseable
2 rows marked for removal · 1,245 in the cleaned CSV
06

Live cleaned-CSV preview

See the exact cleaned output before you download. Toggle any auto-fix off and watch the preview update live.

why it mattersTrust. Merchants are nervous handing their product data to a tool. Seeing the output before commit removes the "is this going to mangle my data?" anxiety.

live preview
auto-fixes
Strip currency symbols
Normalize EU number formats
Extract weight units
Generate missing handles
Round decimal inventory
Normalize booleans
TitleHandlePrice
Blue T-Shirt{missing}1299.00
Red Hat{missing}29.95
Linen Tote{missing}40.00
07

Variant grouping detection

If multiple rows share a Handle, Shopify merges them into one product with multiple variants. We surface that explicitly so you can confirm it's what you meant.

why it mattersLots of bug reports in Shopify forums of "my products didn't import as separate products!" Same-Handle rows got merged. This surfaces the structure before download.

variant grouping detected
handle: linen-shirt3 rows → 1 product, 3 variants
Option 1: Size = S$48.00
Option 1: Size = M$48.00
Option 1: Size = L$52.00

On the roadmap.

Shipping in our next tier after launch.

Coming soon

AI repair

Our AI provider proposes repairs for values deterministic fixes can't safely handle: "2 for 24.99" → 12.50, "about 1.5 kg" → 1500 + kg.

Coming soon

Semantic / fuzzy handle collision

Catches blue-tshirt ↔ blue-shirt (typo), v-neck-blue ↔ blue-v-neck (reorder), BT-001 ↔ blue-tshirt (SKU drift).

ready when you are

Try CSVwise free.

3 cleanups. No credit card. Install in under a minute.