A Guide to Import Products in WooCommerce for Divi Users
Editorial Note We may earn a commission when you visit links from this website.

Importing products into WooCommerce isn't just a technical task—it's a critical skill for running an efficient and scalable online store. The ability to bulk upload hundreds or even thousands of items with a CSV file is what separates a hobby from a real business. It saves countless hours of manual data entry, cuts down on costly mistakes, and is an absolute lifesaver for store migrations or syncing up with supplier inventories.

Why Mastering Product Imports Is a Game Changer

Let's be real: manually adding products one by one is a huge bottleneck. If you're launching a new store with a big catalog, moving over from another platform like Squarespace, or just trying to manage seasonal inventory from a supplier, data entry will quickly become your worst enemy. This is where a solid import workflow stops being a nice-to-have and becomes a core business asset.

Having an efficient process to import products in WooCommerce frees you up to focus on what actually grows your business—like designing incredible customer experiences with Divi and marketing your products. Instead of getting bogged down in repetitive tasks, you can put that time toward conversion optimization, creating great content, and talking to your customers. We've got a whole guide on combining WooCommerce with Divi that shows just how a well-managed backend supports a beautiful front-end design.

Before we dive into the how, it’s important to pick the right tool for the job. Not every import requires a heavy-duty plugin, and sometimes the built-in tool is all you need.

Choosing Your WooCommerce Import Method

A quick comparison of the primary methods for importing products into WooCommerce, helping you choose the right approach for your project's scale and complexity.

Method Best For Complexity Key Feature
Built-in Importer Simple products, small batches, or one-off uploads. Great for beginners. Low Straightforward CSV mapping, no extra plugins needed.
WP All Import Complex imports, variable products, custom fields, and ongoing syncs. Medium-High Drag-and-drop interface, handles any data structure.
Product Import Export Scheduled imports/exports, managing subscriptions, and custom product types. Medium Powerful scheduling and extensive product type support.

Ultimately, the best method depends entirely on your specific needs. Start simple with the built-in tool, and only reach for a more powerful plugin when you hit its limitations.

Scaling Your Business with Imports

The real power of mastering imports is in scalability and accuracy. It’s about ensuring every product in your catalog is consistent, from SKUs and pricing to descriptions and image galleries. As your business grows, you simply can't afford to get this wrong.

The explosive growth of WooCommerce itself proves this point. The platform jumped from 1.4 million stores in early 2020 to over 4.6 million by Q3 2024, and now powers more than 6.5 million websites worldwide. This tells you that efficient product management isn't just a good idea; it's a competitive necessity. As more businesses launch at scale, being able to populate a store quickly is a huge advantage.

A flawless import process is the foundation of an agile e-commerce operation. It allows you to react quickly to market changes, update pricing across thousands of SKUs, or launch a new product line in minutes, not days.

A Roadmap to Your Import Strategy

To really get the most out of product imports, it helps to understand the landscape of the best ecommerce platforms for small business and where WooCommerce fits in. In this guide, we'll walk you through a clear roadmap covering several different methods:

  • The Built-In WooCommerce Importer: Perfect for straightforward uploads and smaller catalogs. We'll show you how to get it right.
  • Powerful Plugins like WP All Import: The go-to solution for complex data, variable products, and setting up automated syncs.
  • Preparing Your Data: This is the most important step. We’ll show you how to build a perfect CSV file from the start to avoid common, frustrating errors.

By the end, you'll know how to pick the right tool for any situation, ensuring your product data is always accurate, current, and perfectly integrated into your Divi-powered store.

Building a Flawless Product Data CSV File

The success of your entire WooCommerce import hangs on one thing: the quality of your CSV file. I've seen it time and time again—a well-structured file leads to a smooth, one-click upload. A messy one? That guarantees you'll spend hours pulling your hair out, trying to figure out what went wrong.

Think of your CSV as the architectural blueprint for your product catalog. Getting it right from the very beginning is absolutely non-negotiable.

This is the exact spot where most store owners trip up. They download a generic template and try to cram their data into it, which inevitably leads to broken image galleries, mismatched pricing, and a chaotic mess of product variations. The secret is to build the CSV around your specific products, not the other way around.

The chart below lays out the different paths for managing your products. You can see the slow, manual slog on one end and the efficient, scalable power of CSV imports and automation on the other.

A visual workflow for WooCommerce products, detailing manual entry, CSV import, and automation steps.

This workflow really drives home the point: shifting from manual entry to CSVs is your first major leap in efficiency. For larger stores, full automation is the holy grail.

Mastering the Core Product Columns

Before we dive into the tricky stuff like variations, let's get the fundamentals down. Every single product in your catalog, whether it's simple or complex, needs a solid foundation in your spreadsheet. These columns are the bedrock.

  • SKU (Stock Keeping Unit): This is, without a doubt, the single most important piece of data for each product. It must be unique for every product and every single variation. If you're coming from a platform like Squarespace, their export file might not even generate SKUs, so you’ll have to create them yourself. A logical format like TSHIRT-RED-L is infinitely better than a random string of numbers.
  • name: The title of your product. Keep it clear and descriptive—good for both your customers and for SEO.
  • regular_price: Just enter a plain number here, no currency symbols. For example, 29.99.
  • description: This is for the main, detailed product description. You can even include basic HTML tags like <p> and <ul> to keep your formatting intact.
  • short_description: This is the quick summary that usually shows up right next to the product image.
  • stock_status: Simply use instock or outofstock.
  • manage_stock: Set this to 1 (for yes) or 0 (for no). If you set it to 1, you absolutely must include a stock column with the quantity.

Your CSV file is a set of direct commands for WooCommerce. Every comma, every quote, and every column header is critical. A tiny typo like regular-price instead of regular_price will cause the importer to completely ignore that entire column of data. Trust me, I've seen it happen.

Structuring Categories and Images Correctly

Organizing your products from the get-go will save you a mountain of cleanup work later. The way you format your categories and images in the CSV directly translates to your site's navigation and visual appeal.

For product categories, you can build out entire hierarchies right from the file. Just use the > symbol to create parent-child relationships. For instance, Apparel > T-Shirts will automatically place the "T-Shirts" subcategory under "Apparel." To assign a product to multiple categories, just separate them with a comma: Apparel > T-Shirts, New Arrivals.

Image imports are probably the most common point of failure I see. The images column demands a publicly accessible URL for every single image. If your images are sitting on an old server or in a Dropbox folder, double-check that the links are direct links to the image file itself (ending in .jpg, .png, etc.), not a preview page.

To import a full product gallery, just list all your image URLs in the images column, separated by a comma. The first URL in that list will automatically become the main featured product image.

Defining Variable Products and Attributes

Okay, this is where most people get tangled up. Importing variable products requires a very specific parent-child structure in your CSV. The parent product row defines the core product info, and then each variation gets its own dedicated row directly underneath.

Here’s a quick and simple example for a t-shirt:

type sku name attribute:1:name attribute:1:values attribute:1:visible attribute:1:variation
variable TSHIRT My Awesome T-Shirt Color Red, Blue 1 1
variation TSHIRT-RED My Awesome T-Shirt Color Red
variation TSHIRT-BLUE My Awesome T-Shirt Color Blue

In this layout, the variable product row establishes the "Color" attribute and lists all its possible values. The following variation rows link back to the parent using its SKU and then specify the exact attribute value for that particular variation.

Following this systematic approach is the only bulletproof way to import products in WooCommerce that have options like size, color, or material.

Using the Built-In WooCommerce Importer

For a lot of stores, especially if you're just starting out or managing a smaller catalog, the native WooCommerce importer is the perfect tool for the job. It's built right into your dashboard, doesn't require any extra plugins, and handles the core task of uploading products from a CSV file with zero fuss.

Before you even think about paying for a premium tool, it's worth seeing if this free, surprisingly powerful feature can get you where you need to go.

You can find the importer by heading to Products > All Products in your WordPress dashboard. Just look for the Import button at the top of the page. Clicking it kicks off a simple, step-by-step process designed to get your products live quickly.

The first screen you'll see asks you to upload your CSV file. This is where all that groundwork you did preparing a clean, well-structured spreadsheet really pays off.

Once your file is selected, you’ll notice a very handy option: Update existing products. This little checkbox is an absolute lifesaver for inventory management. It lets you bulk-update prices, stock levels, or product descriptions for items already in your store, matching them by their SKU or ID.

Mapping Your CSV Columns

After uploading your file, you’ll land on the Column Mapping screen. This is easily the most critical part of the process. You're essentially telling WooCommerce how to read and interpret the data from your spreadsheet.

The tool does a pretty good job of automatically matching standard column headers like sku, name, and regular_price to the right WooCommerce fields.

Here’s what that mapping interface typically looks like. Your CSV column names are on the left, with dropdown menus on the right to pick the matching WooCommerce data field.

Pay close attention to these dropdowns. If a column from your CSV isn’t recognized automatically, you can manually assign it to the correct field. Or, you can just choose "Do not import" to ignore it completely.

This mapping step is your final quality check before everything goes live. Seriously, take a minute to scroll through every single column and double-check that it's assigned correctly. A single mistake here—like mapping your short description to the main description field—can create a massive cleanup job later on.

Knowing the Importer’s Strengths and Limits

The built-in CSV importer really shines with simple products and one-off bulk uploads. But it’s not without its limits, especially when you start dealing with huge datasets or highly complex product types.

While WooCommerce itself can handle an unlimited number of products, your ability to manage them often comes down to your import workflow. For growing stores, more advanced plugins often become necessary for things like intricate data mapping or scheduled, automated imports.

The native tool is fantastic for core product data, but it can stumble when it comes to custom fields created by themes like Divi or other plugins. If your product pages rely heavily on custom data—say, a "Material" or "Care Instructions" field you added—the standard importer won't have a default field to map this data to. We actually have a detailed guide on how you can modify the WooCommerce product page that dives deeper into using custom fields with Divi.

Once you’re happy with your column mapping, just click "Run the Importer" and let WooCommerce do its thing. After a few moments, you should see a success message. Your new products are now live in your store, ready for your customers to see.

Handling Advanced Imports with WP All Import

While the built-in WooCommerce tool is fine for straightforward uploads, you'll quickly discover its limits when you're wrestling with complex data or massive inventories. That’s where a dedicated plugin like WP All Import goes from being a "nice-to-have" to an absolute necessity. It’s the difference between using a simple spreadsheet and a full-blown database tool—it just gives you so much more control.

When you need to import products in WooCommerce from any CSV or XML file, no matter how weird its structure, WP All Import is the industry gold standard. It ditches the rigid column-matching system for an intuitive drag-and-drop interface. This lets you map any piece of data from your file to any product field in WooCommerce.

Person using an iMac with a product management screen and an 'Advanced Imports' overlay, optimizing e-commerce listings.

This kind of flexibility is a lifesaver when you're dealing with supplier feeds that never seem to follow the standard WooCommerce format. It’s also crucial when you need to import data into custom fields created by themes like Divi.

Mapping Data with a Drag-and-Drop Interface

The real magic of WP All Import is in its mapping process. Once you upload your file, instead of getting a boring set of dropdown menus, you see a visual layout. On the right, there's your product data, and on the left, all the available WooCommerce fields. You literally just drag the data from your file and drop it into the right spot.

This approach makes surprisingly complex tasks feel simple. You can even combine multiple data points from your file into a single WooCommerce field. For instance, you could merge a brand_name column and a product_name column from your CSV right into the main WooCommerce "Title" field, creating perfectly formatted product titles on the fly.

The real power here is adaptability. Your supplier might change their feed structure tomorrow, and with the built-in importer, that would mean reformatting your entire file. With WP All Import, you just adjust the drag-and-drop mappings.

This process is a game-changer when you're importing unusual data structures, which happens all the time when migrating from platforms with different data models. It handles these headaches without you needing to be a spreadsheet guru.

Importing Variable Products and Image Galleries

Let’s be honest, handling variable products is often the most frustrating part of a WooCommerce import. WP All Import takes the pain out of this by letting you define parent-child relationships visually. You can tell the plugin which rows in your file are variations and link them to a parent product using a unique identifier, like a SKU or a group ID.

You can also set up attributes like size and color directly during the import. The plugin is smart enough to even create new attributes automatically if they don't already exist in your store.

Importing image galleries from external URLs is another area where this tool truly shines. Instead of just one column for a single image, you can tell the plugin to:

  • Download images from URLs: It will fetch images from the web and pull them right into your WordPress media library.
  • Match existing images: It can find images already in your media library by filename, which is great for preventing duplicates.
  • Handle multiple images: Just specify a delimiter (like a comma or a pipe) in your file, and the plugin will split the data into a full gallery for you.

This robust image handling means your product pages look polished and complete the second the import finishes, with zero manual cleanup required.

Integrating with Divi Custom Fields

For Divi users, this is where things get really good. If you've used the Divi Theme Builder to create custom product layouts with unique fields—things like "Care Instructions," "Technical Specs," or "Designer Notes"—the standard importer has no idea they exist. WP All Import, on the other hand, detects these custom fields automatically.

During the mapping process, you'll find a "Custom Fields" section. Here, you can drag and drop data from your import file directly into the specific fields you’ve created for your Divi layouts. Your imported products will perfectly match the custom design you've built, with all the data showing up exactly where it's supposed to.

For example, if your Divi product page has a custom field named divi_material_specs, you just map your material column from the CSV to that field. The data flows right into your design, seamlessly.

Automating Imports with Cron Jobs

Perhaps the most powerful feature for any serious store is automation. WP All Import lets you set up scheduled imports using cron jobs—timed commands that run automatically on your server.

This is indispensable if you're syncing your store with a supplier's inventory feed. You can configure the plugin to grab a file from a URL or an FTP server at regular intervals (say, every 12 hours) and update your products.

You can even set rules for what these scheduled runs should do:

  1. Update existing products: Change stock levels and prices for products already in your store.
  2. Add new products: Create new listings for items that show up in the feed but aren't in your store yet.
  3. Remove old products: Delete or mark products as "out of stock" if they disappear from the supplier's file.

This automation keeps your inventory accurate without you having to lift a finger, which is absolutely critical for preventing overselling and keeping your catalog fresh. For any real e-commerce operation, this isn't just a cool feature; it's a core business tool.

Troubleshooting Common WooCommerce Import Errors

A man wearing a headset and glasses types on a laptop, fixing import errors while coding.

Even with the most carefully prepared CSV file, things can go wrong. It’s just part of the process when you import products in WooCommerce, but knowing how to spot and solve issues quickly will save you from pulling your hair out.

Let's skip the generic advice and get straight to the real-world problems that pop up most often. This is your playbook for getting unstuck.

Before we dive in, here’s the single most important tip I can give you: always run a test import on a staging site first. Never, ever try to upload a massive file to your live store without testing a small batch of 5-10 products. This one step can save you from a world of hurt.

Products Not Appearing After Import

This is the classic head-scratcher. You run the importer, it confidently reports "Success!", but when you check your product list… nothing. Or maybe just a handful of items made it through.

More often than not, the culprit is the SKU. WooCommerce leans heavily on the SKU as a unique identifier, especially for updating existing products. If the SKU in your CSV is missing, or it doesn't match an existing product you wanted to update, the importer will likely just skip that row.

Another common reason is a mismatched product type. If you've marked a product as a variation but haven't correctly defined its variable parent in a row above it, that "orphan" variation has nowhere to go and gets ignored.

Failed Image Imports

There’s nothing more demoralizing than seeing a grid of broken image placeholders after all your hard work. In my experience, this problem almost always comes down to the image URLs in your CSV.

Here are the usual suspects:

  • Bad URLs: The links in your images column need to be direct, publicly accessible URLs that end in an image extension like .jpg or .png. A link to a Google Drive preview page or a password-protected server just won't cut it.
  • Server Blocking: Some web hosts use security measures (like hotlink protection) that prevent other sites—including your own WooCommerce importer—from grabbing images.
  • Timeouts: If you're trying to import hundreds of huge, high-resolution images from a slow server, the process can time out before it’s done downloading everything.

To check, just copy an image URL from your CSV and paste it into your browser's address bar. If the image doesn’t load instantly, WooCommerce can't see it either.

Server Timeouts and Memory Limits

When you try to import a massive CSV—we’re talking thousands of products—you're giving your server a serious workout. If your hosting plan isn't ready for that kind of heavy lifting, it might just give up, leaving you with a timeout error or a half-finished import.

This is usually tied to your site's PHP memory limit or max execution time. These settings are designed to stop scripts from hogging all the server's resources. For a big import job, you might need to give them a temporary boost.

A simple test is to import the same file but with only 10-20 rows. If the small batch works fine but the large one fails, it’s almost definitely a server resource issue. You can usually increase these limits in your hosting control panel or by editing your wp-config.php file. When you're dealing with these issues, it helps to understand the common errors on websites to know what to look for.

Character Encoding and Special Symbols

Ever import a product description and find it filled with weird symbols like †or ? instead of apostrophes or currency signs? That's a textbook character encoding problem.

Your CSV file must be saved with UTF-8 encoding. This is the universal standard that ensures special characters (like accents, €, £, or ©) are read correctly by WordPress. Most modern tools like Google Sheets handle this automatically, but older versions of Excel can be notorious for using a different format.

Always double-check your "Save As" settings and make sure UTF-8 is selected. This tiny detail can save you hours of manual cleanup later.

For a quick reference, here’s a table breaking down these common issues and their solutions.

Common WooCommerce Import Errors and Solutions

This table is a handy cheat sheet for the most frequent snags you'll hit during a product import. Keep it bookmarked for when things don't go as planned.

Error Symptom Likely Cause How to Fix
Products are missing after a "successful" import Missing or mismatched SKUs; incorrect product types (e.g., orphan variations). Ensure every product has a unique SKU. Double-check that all variation products have a corresponding variable parent listed before them in the CSV.
Images are broken or not showing up Incorrect URLs, server hotlink protection, or slow external image hosting. Verify image URLs are direct links ending in .jpg, .png, etc. Paste one into your browser to test. If it doesn't load, WooCommerce can't access it.
The import process times out or stops halfway Server resource limits (PHP memory limit, max execution time) are too low for a large file. Import a small test file (10-20 rows). If it succeeds, contact your host to increase PHP limits or do it yourself via wp-config.php or your hosting panel.
Text shows strange symbols (e.g., â€, ?) The CSV file was not saved with UTF-8 encoding. Re-save your CSV file from your spreadsheet program, explicitly selecting UTF-8 as the character encoding format in the "Save As" dialog.

Having this guide on hand should help you tackle most of the frustrating errors that can derail an import. A little bit of troubleshooting goes a long way.

After walking through the nitty-gritty of CSVs, built-in tools, and powerful plugins, you might still have a few questions rattling around. The process of importing products in WooCommerce has its quirks, and I've found that the same concerns tend to pop up for store owners, no matter how tech-savvy they are.

This section is all about tackling those common questions head-on. Think of it as a quick-reference guide for the real-world hurdles you might hit during and after your import.

Can I Import Products from Another Platform Like Shopify or Squarespace?

Absolutely. In fact, this is one of the most common reasons people dive into the world of product imports. Platforms like Shopify and Squarespace both let you export your product data as a CSV file. The catch? The column headers and the way the data is structured will almost certainly be different from what WooCommerce is expecting.

You can't just take a Shopify export and upload it straight into WooCommerce without causing a mess. You'll need to roll up your sleeves and spend some time in Google Sheets or Excel, remapping the column headers to match the standard WooCommerce format. For instance, what Shopify calls "Variant Price" needs to become Regular price in your new file.

A direct upload using another platform's export file is a recipe for a failed import. Always treat that exported file as raw data. It needs to be cleaned, reformatted, and structured for WooCommerce before you even think about uploading it.

Taking the time to do this reformatting is the secret to a clean migration. It's what ensures all your product titles, SKUs, prices, and descriptions land exactly where they're supposed to in their new home.

How Do I Handle Product Updates Versus Creating New Products?

This is a critical distinction, and getting it wrong can wreak havoc on your inventory. Both the built-in WooCommerce importer and advanced plugins like WP All Import handle this by using a unique identifier—and that identifier is almost always the SKU.

When you kick off an import, you'll see an option like "Update existing products." If you check this box, the importer scans your CSV row by row. Here's what happens next:

  • If it finds a SKU in your file that already exists in your store, it will update that product with the new data from your CSV, like a new price or stock level. It will not create a duplicate.
  • If the SKU in your file doesn't exist in your store, it will create a brand new product from that row.

This is precisely why having a unique and consistent SKU for every single product and variation is non-negotiable. It’s the key that lets WooCommerce know which items to update and which to create from scratch.

Is It Better to Use Product IDs or SKUs for Matching?

While you can use the WordPress Post ID to match and update products, I almost always recommend relying on the SKU. Here’s the simple reason why.

Product IDs are just database-specific numbers that WordPress assigns automatically. They aren't portable. If you ever move your store to a new server or restore from a backup, those IDs can change, which would completely torpedo your entire update workflow.

SKUs, on the other hand, are yours to control. They are a permanent, meaningful piece of your product data that stays consistent across different platforms, staging sites, and even your supplier's spreadsheets. Using SKUs as your main identifier makes your whole import and update process far more robust and future-proof.

What Is the Best Way to Import Custom Fields for Divi?

For those of us building with Divi, importing data into custom fields is how we create truly unique and dynamic product layouts. The built-in WooCommerce importer just doesn't know what to do with these fields, so you will absolutely need a dedicated plugin like WP All Import.

During the mapping stage in WP All Import, you’ll find a section specifically for "Custom Fields." The plugin is smart enough to automatically detect any custom fields added by your theme or other plugins. From there, you just drag the data from your CSV column and drop it into the corresponding custom field.

For example, if you created a custom field with Divi for care_instructions, you simply map your care_instructions column from the spreadsheet directly to it. This kind of seamless integration is one of the main reasons Divi power users swear by advanced import tools. It makes sure your carefully designed product page templates get populated with the right data, every single time.


At Divimode, we build tools that make powerful design and functionality accessible. With Divi Areas Pro, you can create dynamic popups, fly-ins, and mega menus that engage your customers and drive conversions, all within the Divi builder you already know and love. Learn more about Divi Areas Pro at divimode.com