In this tutorial, we’ll show you how to copy the SKU and the product title to the URL slug of your WooCommerce products in bulk.
Product permalinks in WooCommerce are generated automatically from the product title, but there are situations where you may want more control over the URL structure. For example, you might want your product URLs to include the SKU for easier identification, or you might want to standardize slugs across your catalog to reflect both the title and the SKU.
A URL like www.website.com/store/product/product-title-SKU123 can help with internal linking, supplier communication, and keeping your catalog organized. Updating this manually for thousands of products would take a significant amount of time.
This guide covers three variations of the same workflow:
- Add the SKU to product URLs
- Add the product title to product URLs
- Add both the SKU and the title to product URLs
To do this, we’ll use the WP Sheet Editor – WooCommerce Products plugin, which includes a Bulk Edit tool that lets you apply changes to the URL Slug field across hundreds or thousands of products at once.
Install WP Sheet Editor
You can skip this step if you already have the plugin installed and activated.
You can download the plugin here:
Download WooCommerce Products Spreadsheet Plugin – or – Check the features
Once installed, the plugin displays all your WooCommerce products in a spreadsheet inside your WordPress dashboard. Every row is a product and every column is a field, including the URL Slug field you’ll be editing in this tutorial.
Step 1. Open the Bulk Edit Tool
Go to WP Sheet Editor > Edit Products to open the products spreadsheet.
Then click Bulk Edit on the top toolbar to open the bulk editing panel.
The Bulk Edit tool is where you’ll configure which field to update, what type of edit to apply, and which products to target. By default, it will apply changes to all products currently loaded in the spreadsheet.
Step 2. Filter Your Products (Optional)
If you only want to update the URL slugs of a specific subset of products — for example, products in a particular category or products containing a specific keyword — you can apply a filter before running the bulk edit.
Inside the Bulk Edit tool, select I want to search rows to update from the Select the rows that you want to update dropdown. This will open the Search tool inline.
The Search tool provides the following filter options:
- Contains keyword: Filters products whose title contains the keyword you enter.
- Enter Tags: Accepts categories, attributes, tags, and shipping classes as filter values.
- Search on variations: When ticked, filters product variations instead of parent products.
- Enable advanced filters: Opens additional conditions such as filtering by price range, stock status, or any other product field.
After configuring your filters, click Run search. The plugin will filter the matching products and return you to the Bulk Edit tool with only those products selected.
If you want to update the URL slugs for all products without any filtering, you can skip this step and proceed directly to the next section.
Step 3. Edit Your Product URL Slugs
With your target products selected, you can now configure the Bulk Edit tool to update the URL Slug field. The following sections cover each of the three available options.
Option A: Add the Product SKU to the URL Slug
This option replaces the current URL slug with the product’s SKU value. Use this when you want each product URL to be based on the SKU rather than the auto-generated title slug.
Configure the following settings in the Bulk Edit tool:
- Select the rows that you want to update: I want to search rows to update
- What field do you want to edit: URL Slug
- Select type of edit: Copy from other columns
- Copy from this column: $_sku$ (SKU)
- Click Execute now.
After clicking Execute now, the URL Slug field for all selected products will be updated to match the SKU.
Option B: Add the Product Title to the URL Slug
This option copies the product title into the URL slug field. WooCommerce normally generates the slug from the title automatically, but if slugs have drifted out of sync with titles over time — for example after bulk title edits — this operation brings them back into alignment.
Configure the following settings:
- Select the rows that you want to update: I want to search rows to update
- What field do you want to edit: URL Slug
- Select type of edit: Copy from other columns
- Copy from this column: $post_title$ (Title)
- Click Execute now.
After clicking Execute now, the URL Slug field for all selected products will be updated to match the product title.
Option C: Add Both the SKU and the Title to the URL Slug
This option combines both values into a single slug using a custom format: product-title-SKU123. The plugin supports dynamic placeholders that you can combine freely in the value field.
Configure the following settings:
- Select the rows that you want to update: I want to search rows to update
- What field do you want to edit: URL Slug
- Select type of edit: Set value
- Replace existing value with this value: $post_title$-$_sku$
- Click Execute now.
After clicking Execute now, the URL slug for each selected product will be set to a combination of the title and the SKU, separated by a hyphen. For example, a product titled “Running Shoes” with SKU “RS-001” would receive the slug running-shoes-RS-001.
Note: WooCommerce automatically converts URL slugs to lowercase and replaces spaces with hyphens, so the final URLs will be URL-safe regardless of how the title or SKU is formatted in the database.
Conclusion
Updating WooCommerce product URL slugs in bulk is a straightforward process with the WP Sheet Editor – WooCommerce Products plugin. Open the products spreadsheet, open the Bulk Edit tool, optionally filter your products using the Search tool, then configure the URL Slug field using one of the three methods above. Whether you want slug URLs based on the SKU alone, the title alone, or a combination of both, the same workflow applies.
You can download the plugin here:
Download WooCommerce Products Spreadsheet Plugin – or – Check the features





