Documentation

Everything you need to build variations fast

From your first variable product to per-variation images, shared stock and the Pro catalog tools. Written for the current release — Quick Variable Products 1.1.3.

Getting started

Quick Variable Products is a create-fast tool. It collapses the whole variable-product workflow — attributes, generate, then one form per variation — into a single admin screen. Pick your attributes, type their values, generate every combination in one click, fill in stock, SKU and price on the rows, and save once.

Requirements

RequirementVersion / note
WordPress6.0 or newer
WooCommerceActive — the current release is recommended (HPOS-ready). The plugin declares Requires Plugins: woocommerce.
PHP7.4 or newer
AccessA shop manager or administrator. Creating brand-new attribute terms needs the product-term management capability.
Storefront impactNone. The plugin is admin-only and loads nothing on your shop.

Install

  1. Install the free plugin From your dashboard go to Plugins → Add New, search for Quick Variable Products, install and activate. Or upload the zip via Plugins → Add New → Upload. WooCommerce must be active.
  2. Open the screen A Quick Products item appears in the WordPress admin menu. Open Quick Products → Add Product — there is nothing to configure first.
  3. Upgrade later, if you want to Pro is a separate add-on installed alongside the free plugin. See Free vs Pro.
Nothing runs on your storefront

Quick Variable Products is admin-only with zero frontend footprint — it registers no storefront scripts, styles or queries. It cannot slow your shop down or fight your theme, and the products it creates are ordinary WooCommerce products.

Creating new attribute values needs a capability

You can always use the global attributes you already have. Creating brand-new categories, tags, brands or attribute terms from this screen requires the product-term management capability — which administrators and most shop-manager roles already hold.

Your first variable product

The whole job happens on one page. Here is the end-to-end flow:

  1. Name and price Type the product name and a base price. This price is applied to every variation unless you override a row later.
  2. Add an axis (attribute) Add one row for your first attribute — for example Colour. Pick an existing global attribute, or create a new one without leaving the screen.
  3. Type its values, comma-separated In that row type red, blue, green. Each value becomes one point on the axis.
  4. Add more axes Add another attribute — for example Size with S, M, L. Add as many axes as the product needs.
  5. Press “Generate matrix” Every combination of your attributes appears at once as a real WooCommerce variation — Colour (3) × Size (3) = 9 rows, ready for their own price, SKU and stock.
  6. Fill stock, SKU and price per row Set a stock quantity, a SKU and (optionally) an overriding price on each row — all on the same page.
  7. Save the product Press Save product and the whole variable product is written in one pass.
Typing attribute values and pressing Generate matrix to create every combination as a variation
Type your values, press Generate matrix, and every combination appears as a real variation.
No CSV, no round-trip

There is no CSV import or spreadsheet step in the free plugin. You type the attribute values and the variations are generated in place — you never leave WordPress.

Attributes & axes

Each attribute you add is an axis. The values you type on that axis are multiplied against the values on every other axis to produce the variation matrix.

ColourSizeResult
red, blue, greenS, M, L9 variations (red/S, red/M, red/L, blue/S …)
red, blue— (blank)2 variations, Size = Any
red, blue, greenS, M, L, XL12 variations

Generating every combination

One press of Generate matrix builds the full cartesian product of all your axes at once — not a partial set you have to expand row by row.

There is no 50-variation limit

WooCommerce's own editor asks you to generate variations in pages; Quick Variable Products creates the whole combination set in a single pass. A large product with many axes is no problem.

To protect your server from an accidental runaway request (say a typo that would create tens of thousands of rows), there is a safety cap — 1500 variations by default. Developers can raise it with a filter:

FilterWhat it does
erenqvp_max_variationsSets the maximum number of variations a single request may create. Default 1500.

For example, to allow up to 3000 variations, drop this in a small plugin or your theme's functions.php:

add_filter( 'erenqvp_max_variations', function () { return 3000; } );

Unresolvable rows are skipped cleanly

If a typed value can't be resolved to a term — for example a brand-new value the current user lacks permission to create — that single variation is skipped rather than saved as an over-broad “Any” combination that could merge with its siblings. The reported variation count reflects exactly what was created, so the number you see is the number you got.

Filling rows: stock, SKU, price

Once the matrix is generated, every variation is a row on the same page — no opening one variation form at a time.

Filling stock, SKU and price for each variation row on a single screen
Fill stock, SKU and price per row on one screen, instead of opening one variation form at a time.
Auto-generating SKUs and setting all quantities at once before saving
Auto-generate SKUs for every row, set all quantities at once, and save the whole product in a single click.

Per-variation images

Turn on the per-variation image option (it is off by default) and you can attach one photo to each value of a chosen axis while you create the product — one image for Red, one for Blue, one for Green.

Assigning one image to each attribute value during product creation
Give each attribute value its own image while you create the product — one image per variation.
One image per variation is a WooCommerce rule, not a limit of ours

WooCommerce stores a single image per variation natively, and that is what this option assigns. If you need several photos for one value — a full gallery per colour — that is a PRO feature (galleries per value).

Shared stock pool

By default each variation manages its own stock. If your variations should instead draw from one shared quantity, opt in to the shared stock pool: a single figure is managed on the parent product and every variation deducts from it.

Simple products

The same fast screen creates simple products too. Leave the attributes empty and press save — you get a plain simple product, entered just as quickly as a variable one.

Leaving attributes empty to save a simple product from the same screen
Leave the attributes empty and the same fast screen saves a simple product.

Simple or variable, the create screen carries the fields you actually reach for: cost / COGS, tax, inventory, shipping, categories, tags and brand.

Compatibility & safety

Everything the plugin makes is a standard WooCommerce product — there is no lock-in.

A half-built product can't happen

While a product and its variations are written, the plugin briefly detaches core post hooks so one broken third-party save_post callback cannot abort the loop and leave you with a partial product. It then re-fires the key hooks once for the finished product, so Yoast, Rank Math, WPML, Polylang and search indexers still process it normally.

Free vs Pro

Everything marked FREE is in the plugin on WordPress.org, with no limits and no locked buttons. Quick Variable Products Pro is a separate add-on (distributed through Freemius) that adds a catalog operations workspace for stores that also need to change products they already have.

CapabilityFreePro
Create screen: any attributes, generate every combination, stock/SKU/price per rowYesYes
One image per variationYesYes
Built-in SKU generatorYesYes
Shared stock poolYesYes
Simple products from the same screenYesYes
Cost/COGS, tax, inventory, shipping, categories, tags, brandYesYes
Admin-only, HPOS, standard WooCommerce productsYesYes
Add variations to products that already existYes
Bulk edit variation prices & stock across the catalogueYes
Extend one attribute across many products (preview + undo)Yes
Galleries per value (several photos for one value)Yes
Smart views (on sale, no cost, low margin, low stock, missing SKU)Yes
Exact dry-run before → after previewYes
Conflict-safe undo of any recent run, with run historyYes
Saved filter + operation recipes and reusable templatesYes
CSV import / exportYes
Pro installs alongside the free plugin

Pro is its own add-on that requires and extends the free plugin — it does not replace it. Your create-fast screen keeps working exactly as before; Pro simply adds the catalog workspace next to it.

Data, privacy & uninstall

What Freemius receives, if you opt in

Only if you allow it: non-sensitive environment data — site URL, WordPress and PHP versions, active theme/plugins and your admin email — to enable licensing and updates. See the Freemius Privacy Policy.

Troubleshooting

My attributes don't appear in the list

The screen lists every global product attribute defined under Products → Attributes. If yours is missing, define it there first — or create a new attribute right on the create screen.

Creating brand-new attributes and terms inline needs the product-term management capability. If the “create new” option is missing for your user, that capability is what's absent.

Some rows weren't created

A variation is skipped when its typed value can't be resolved to a real term — most often a brand-new value the current user lacks permission to create. The plugin skips it cleanly rather than saving an over-broad “Any” row, and the count it reports is exactly what was created.

Fix it by creating the term first under Products → Attributes, or by using an account with the product-term management capability, then generate again.

I need more than 1500 variations

1500 is a safety cap, not a hard ceiling. Raise it with the erenqvp_max_variations filter (for example return 3000;), or split the product into smaller batches and generate more than once. The cap only exists to stop an accidental runaway request.

A variation shows no image

Per-variation images are single-image: WooCommerce stores one photo per variation. Turn on the per-variation image option and assign one photo per attribute value. If you were expecting several photos for a single value, that's a gallery — galleries per value are a PRO feature.

Can I add variations to a product that already exists?

Not in the free plugin — it is focused on creating new products fast. Pro adds an “add variations to existing products” tool, plus a catalog editor that can bulk-edit variation prices and stock across many products at once.

Do I need a CSV import or a spreadsheet?

No. There is no CSV import or export in the free plugin — you type the attribute values and the variations are generated in place. (Pro adds CSV import/export for stores that want it.)

Are the products it creates normal WooCommerce products?

Completely. Variations are written through the WooCommerce API into the standard tables, so the product editor, reports, feeds and other extensions treat them like any other product. Deactivating the plugin changes nothing about products you already created.

Will it slow down my shop or clash with my SEO plugin?

No. The plugin is admin-only with no storefront scripts, styles or queries. And because the key post hooks are re-fired once for the finished product, Yoast, Rank Math, WPML, Polylang and search indexers process what you create normally.

Get support

Stuck on something the docs don't cover? We'd rather hear about it than have you guess.

Telling us your WordPress and WooCommerce versions, how many axes and values you were generating, and what you expected to happen gets you a useful answer on the first reply. The plugin page lives at wordpress.org/plugins/quick-variable-products.

Start with the free plugin The whole create job is free — any attributes, every combination, per-row stock/SKU/price, per-variation images, shared stock and simple products.
Download free See Pro