Convert to CSV. Watch your data break.
Save as CSV and your leading zeros go, your accented letters turn to mojibake, your formulas become errors, and your quoted commas split rows. Excel's own export does this. Then you re-key by hand.
Bulk-import posts, pages and products straight from Excel.
Drop an .xlsx file in. Map the columns. Hit import. The plugin reads Excel directly, so no CSV conversion, no broken UTF-8, no formulas turning into errors. Posts, pages, custom post types, WooCommerce products and variations, ACF, Yoast, Rank Math, WPML, images from URL - all in one pass. $49.99/yr or $149 once.
| A | B | C | D |
|---|---|---|---|
| SKU | Title | Price | Image |
| TSH-001 | Cotton tee | 24.00 | tee.jpg |
| HAT-014 | Wool cap | 18.50 | cap.jpg |
| MUG-009 | Ceramic mug | 9.99 | mug.jpg |
| BAG-022 | Canvas tote | 32.00 | tote.jpg |
Most "import" plugins ask you to convert your Excel file to CSV first. That's where everything breaks: encoded characters scramble, leading zeros disappear from SKUs, formulas turn to #REF!, and the columns your Yoast or ACF fields rely on don't survive the trip. Or worse, you skip the import entirely and type 200 products in by hand.
Save as CSV and your leading zeros go, your accented letters turn to mojibake, your formulas become errors, and your quoted commas split rows. Excel's own export does this. Then you re-key by hand.
A storefront launch, a catalogue refresh, a CMS migration. Manual data entry was never the right tool for it, and every hour the new agency intern spends pasting price values is an hour you paid for typing.
Most importers handle the WordPress core fields. The custom-field layer that holds your SEO, your product specs, your ACF panels, your translations, that's where they quietly give up. So you finish "importing" and still have a week of clean-up.
Four jobs: read your .xlsx directly (no CSV), map columns to any WordPress or WooCommerce field including ACF/Yoast/Rank Math, preview the result, then commit in background batches. Re-run later and existing rows update instead of duplicating.
Reads .xlsx, .xlsm and .xls natively. Leading zeros stay, accented characters stay, formulas resolve to their values, quoted commas don't split rows.
One import per sheet. A site full of CPTs, a Woo catalogue with 500 variations, a blog migration of 200 posts: same plugin, three separate runs.
Save mappings as templates. Next month's import re-uses the same template and goes from upload to commit in two clicks.
If the field is registered as post meta or taxonomy meta, the plugin can write to it. SEO migrations, ACF-heavy templates and multilingual sites all import in one run.
One URL or local path per row, or comma-separated for product galleries. Featured image, gallery images and per-variation images all supported.
Every import runs a validation pass first: which rows create, which update, which fail and why. Fix the Excel and re-upload, or commit.
Match by SKU, post ID, or slug. Price-list refreshes, inventory updates and content edits done in Excel by a non-developer.
Each variation gets its own row, linked to the parent by SKU or slug. Attributes are column values. The plugin builds parent + all variations in one pass.
Upload the .zip from Plugins → Add New, then activate. A new "Content Importer" menu appears in your wp-admin sidebar.
Drag the Excel file into the upload box. No conversion. The plugin reads the sheet, lists every column, and shows you the first 5 rows so you know it parsed correctly.
Tell the plugin which Excel column goes to which WordPress field. Save the mapping as a template so next month's catalogue is two clicks away.
See how many rows will create vs update vs error out. Fix anything that looks wrong, then commit. Imports run in background batches, your site stays online.
WooCommerce native · CSV only |
WP All Import from $149/yr · $1,299 lifetime |
WP Ultimate CSV Importer from $199 · lifetime available |
WPFactory $49.99/yr · $149 once |
|
|---|---|---|---|---|
| core: file format & content | ||||
| Reads .xlsx directly (no CSV conversion) | ✕ | ✕ | ✓ | ✓ |
| Posts, pages, custom post types | posts only | ✓ | ✓ | ✓ |
| WooCommerce simple products | ✓ | Pro tier only | ✓ | ✓ |
| WooCommerce variable products + variations | limited | Pro tier only | ✓ | ✓ |
| meta layer · the part most importers skip | ||||
| ACF + ACF Pro (incl. repeaters) | ✕ | ✓ | ✓ | ✓ |
| Yoast SEO bulk import & edit | ✕ | ✓ | ✓ | ✓ |
| Rank Math / All in One SEO | ✕ | via add-on | ✓ | ✓ |
| WPML / Polylang multilingual | ✕ | add-on | ✓ | ✓ |
| workflow | ||||
| Drag-and-drop field mapping | ✕ | ✓ | ✓ | ✓ |
| Saved mapping templates | ✕ | ✓ | ✓ | ✓ |
| Preview / dry-run before commit | ✕ | ✓ | limited | ✓ |
| Bulk update existing content via re-upload | ✕ | ✓ | ✓ | ✓ |
| Images from URL or local file path | URL only | ✓ | ✓ | ✓ |
| pricing & ownership | ||||
| Free version on .org | - | basic, no Woo | ✓ | ✓ |
| WooCommerce included in entry tier | - | Pro tier $299+ | ✓ | ✓ |
| Lifetime tier | - | $1,299 once | ✓ ~$299+ | ✓ $149 unlimited sites |
| Multi-store licensing | - | tier-capped | ✓ unlimited | ✓ unlimited sites |
| 10-year cost | $0 | $1,299 | ~$299 | $149 |
| 50+ plugins (All Access) | - | ✕ | ✕ | ✓ $499 |
|
Ready to drop in an Excel file and walk away? ↓
Jump to pricing
|
||||
A UK homewares store launching on WooCommerce. The supplier sent an Excel sheet: 800 SKUs, attributes (size, colour, material), per-variation pricing, image URLs hosted on the supplier's CDN. Without this plugin, that's a junior employee for two weeks.
Catalogue live in 40 minutes (mostly waiting for images to fetch). Store opened on schedule. The same template re-runs every Monday with a fresh stock snapshot.
A publication moved from Drupal to WordPress. 1,200 articles in three languages, every article had 8 ACF fields (author bio, related links, custom hero) and Yoast metadata. The export from Drupal landed as one big Excel sheet with a "language" column.
Cutover happened on a Friday night. Zero SEO data lost. WPML linked each article to its translations using the language column. Editorial board signed off in week one.
A wholesale distributor receives an updated Excel price list from their vendor every Monday. Same columns, different numbers. Before the plugin: their ops manager spent half a day editing prices in WooCommerce by hand. After: the saved import template re-runs in 4 minutes.
Weekly price-list refresh dropped from 4 hours to 4 minutes. The ops manager moved that headcount to bigger problems.
Using the plugin? Leave a review on WordPress.org.
"I needed to import 100 posts. This plugin made it as simple as putting everything in an Excel sheet and hitting one button."see review →
"I needed to import from Excel and it works really well. This helped me a lot."see review →
"I was given a 250-page HTML site built with Dreamweaver templates. This plugin worked like a charm and I didn't even need the Pro version."see review →
Every WPFactory plugin ships with the same eight guarantees. Here's what running this one looks like in practice.
Background-batched imports so the frontend isn't blocked. PhpSpreadsheet under the hood for native .xlsx parsing. Filters and actions exposed for every step of the import lifecycle.
Every supported field is documented with the meta-key the plugin writes to. Mapping syntax for ACF repeaters, Yoast schema fields, WPML translation linking, all in the docs.
Edge-case spreadsheets are normal here. Send a sanitised sample, get an answer within a working day. Real-world fixes ship as releases within days, not quarters.
14-day refund on yearly and lifetime, 30 days on All Access, no questions asked. If your particular spreadsheet shape isn't supported, support helps; if it still doesn't fit, you walk away whole.
All Access is $499 once for all 50+ plugins, lifetime, unlimited sites, and it includes every plugin we release later. Three lifetime licenses at $199 already cost $597, so the bundle usually wins by your third plugin.
v6.0.2 shipped recently. Tested against the latest WordPress and WooCommerce within days of every release. HPOS-ready, PHP 8.3 compatible.
Compatible with ACF/ACF Pro, Yoast SEO, Rank Math, AIOSEO, WPML, Polylang, Meta Box. Filters exposed at every stage so custom schemas slot in cleanly.
The person mapping columns is usually the ops manager, not the engineer. Drag-and-drop interface, plain-English field names, saved templates so they only learn the mapping once.
This is what you see inside WordPress once the plugin is activated.
14-day refund on yearly and lifetime, 30 days on All Access. Lifetime pays for itself by year 3. All Access pays for itself with any 2nd plugin you'd ever use. Yearly auto-renew can be turned off in your account.
Buy once. Owns itself by year 3. Use on every site you own.
This plugin + 49 others, lifetime updates, unlimited sites - for $350 more than Lifetime alone.
If yours isn't here, our support replies fast. Or read the docs.
Popular guides
Posts, pages, custom post types, WooCommerce products and variations. ACF, Yoast, Rank Math, WPML. Images from URL or local path. Preview before commit. Re-run to update existing content. 600+ stores already running it. 14-day refund if it's not for you.
600+ stores · 4.0★ across 5 reviews · WordPress.org plugin · 14-day refund