Runs in your browser · OpenXML DrawingML · Zero files uploaded

Extract Embedded Images from Excel Cells to WooCommerce

The challenge: When suppliers send product catalogs in Microsoft Excel (.xlsx) with pictures pasted inside table cells, saving as CSV deletes every picture without warning. CSV cannot store binary graphics. CatalogDock solves this by parsing OpenXML DrawingML directly inside your browser: it calculates cell coordinates, maps each picture to its row's SKU, and exports a clean image ZIP and WooCommerce-ready import CSV.

Why Excel destroys pictures on CSV export

In Microsoft Excel, images pasted into cells or over rows are not stored as cell data. Instead, Office OpenXML stores them as independent drawing shapes inside an internal folder (xl/drawings/drawing1.xml) anchored to cell coordinates.

When you click File → Save As → CSV:

  • CSV (Comma-Separated Values) is a plain-text format that only understands textual strings and numbers.
  • Excel ignores the entire DrawingML subsystem during export.
  • Every single product photo is discarded silently, leaving your Images column completely empty.

Manually right-clicking and saving hundreds of product photos one by one takes hours and invites human error with SKUs and filenames.

How CatalogDock extracts and maps images in your browser

CatalogDock includes a dedicated OpenXML DrawingML parser running in a background Web Worker inside your browser tab.

1. OpenXML relationship parsingReads worksheet drawings (twoCellAnchor, oneCellAnchor, absoluteAnchor) and resolves media relationships in xl/media/.
2. Coordinate-to-SKU bindingCalculates the exact from.row coordinate for every picture anchor and pairs it with the product SKU in that row.
3. Structured ZIP exportBundles extracted images into a ZIP archive with filenames keyed by SKU, plus an images-manifest.csv pairing each file to its row.
4. Zero server uploadsYour commercial price lists and proprietary photos never leave your machine. Processing happens entirely in local memory.

Step-by-step: From Excel supplier sheet to live store

  1. Drop your Excel file: Open CatalogDock and drop your .xlsx or .xlsm workbook into the checker.
  2. Select sheet & map columns: Select your product sheet. The column mapper suggests matches for SKU, Title, Regular price, and Stock in 12 languages.
  3. Download repaired files: Download the corrected WooCommerce CSV alongside the extracted image ZIP.
  4. Upload media: Upload the images directly to your WordPress media library (via Media → Add New, FTP, or WP-CLI) or host them on your CDN.
  5. Import products: Run the built-in WooCommerce importer (Products → Import) with your prepared CSV. Every product links cleanly to its pictures.

Technical specifications & safety limits

Every capability and boundary is backed by automated tests against WooCommerce 11.1.2:

FeatureSpecification
Supported workbooksMicrosoft Excel .xlsx and .xlsm (Office OpenXML)
Extracted image formatsJPEG, PNG, WebP, GIF, BMP, TIFF, ICO (detected by magic bytes)
Maximum file sizeUp to 50 MB and 50,000 records per workbook
Unpack memory budgetStreamed extraction with zip-bomb protection up to 150 MB uncompressed
Privacy & compliance100% client-side Web Worker; no external HTTP requests for file contents
Formulas & macrosFormulas use saved values; macros (vbaProject.bin) are never executed

Note: In-cell rich data values and the Excel =IMAGE() formula (which links to external web URLs rather than storing image data in the file) are flagged as unextracted.

Extract your Excel pictures now

Test your supplier price list in CatalogDock for free. Get an instant audit of variations, columns, and embedded images before touching your store.

Check your Excel file — Free →

Runs in your browser · No files uploaded · Never connects to your store

Related troubleshooting guides

Explore other in-depth guides for WooCommerce imports: