WooCommerce product CSV cleanup
A WooCommerce product CSV (Products → Export) with SKU, Regular price and Sale price columns, before you import it again.
Processed locally in your browser. File contents are not uploaded. No account needed.
Before and after
Made-up rows from the sample file, run through the same code Rote Workspace runs, when this page was built. Removed rows are struck through; changed cells are highlighted — point at one for its old value.
Original
| Row | SKU | Name | Regular price | Sale price |
|---|---|---|---|---|
| 2 | esp-bar-01 | Espresso Machine | $1,299.00 | $1,149.00 |
| 3 | GRN-BURR | Burr Grinder | $189.00 | $159.00 |
| 4 | milk-jug (has spaces at its edges) | Milk Frothing Jug | $24.00 | $19.50 |
| 5 (removed) | ||||
| 6 (removed) | ESP-BAR-01 | Espresso Machine (copy) | $1,299.00 | $1,149.00 |
| 7 | TAMP-58 | 58 mm Tamper (has spaces at its edges) | $39.00 | $34.00 |
Result
| Row | SKU | Name | Regular price | Sale price |
|---|---|---|---|---|
| 2 | ESP-BAR-01 (changed) | Espresso Machine | 1299.00 (changed) | 1149.00 (changed) |
| 3 | GRN-BURR | Burr Grinder | 189.00 (changed) | 159.00 (changed) |
| 4 | MILK-JUG (changed) | Milk Frothing Jug | 24.00 (changed) | 19.50 (changed) |
| 7 | TAMP-58 | 58 mm Tamper (changed) | 39.00 (changed) | 34.00 (changed) |
4 rows × 7 columns after the fixes · was 6 × 7 · 14 cells changed
3 more columns are not shown; they pass through unchanged.
· marks a space at the start or end of a value. The dots are not in the data; they show spaces you would otherwise not see.
What it does
- Remove empty rowsOn the sample: 1 row removed
- Trim spaces in every columnOn the sample: 2 cells changed
- UPPER-case "SKU"On the sample: 2 cells changed
- Read "Regular price", "Sale price" as numbers (decimal mark: dot, 1,234.56); values that are not numbers are left as they areOn the sample: 10 cells changed
- Remove duplicates: rows with the same "SKU" (blank keys never match), keeping the first of each groupOn the sample: 1 row removed
Your file needs these columns, spelled exactly: SKU, Regular price, Sale price. If one is missing or renamed, the workflow tells you which step it breaks and does not run.
How to use it
Download the workflow
A small .json file with the steps above — no data. Want to try it first? Use the sample file (made-up rows).
Open your export
In the Data Workspace, choose your file. It is processed in your browser, not uploaded.
Import, review, run
Workflow → Import, choose the file — or skip the download: under Workflow → Templates, press Check & open. Each step is checked against your columns; press Run on this file, then Download.