You sell one product. But buyers need choices.
Maybe it’s a t-shirt that comes in three sizes and four colors. Maybe it’s a desk where the wood type and the size change the price. Maybe it’s a printed banner priced by width and height. Or a gift box where each add-on costs a little more.
A plain WooCommerce product can’t do this. It has one price and no choices. So you’re stuck.
In this article, I’ll show you the three real ways to give one product multiple options in WooCommerce. Each one has a catch, and I will name it. When it works, and when it doesn’t. And I’ll show you what to do when the options need to change the price as the buyer picks. That’s the part most guides skip.
Quick answer
- Just need size and color? Use WooCommerce variations. Free, built in.
- Need extra fields or simple add-on fees? Use a product add-on plugin.
- Need the price to do math (by size, area, or a formula)? Use a price calculator.
Let’s go through each one.
Way 1: WooCommerce variations (free, already built in)
WooCommerce has this feature already. It’s called a variable product. You don’t need a plugin.
Here’s the short version of how to set it up:
- Open your product. In the Product data box, change the dropdown from “Simple product” to Variable product.
- Go to the Attributes tab. Add an attribute like “Size” with values Small, Medium, Large. Tick Used for variations. Save.
- Go to the Variations tab. Add a variation for each combination. Give each one its own price.
That’s it. Now the buyer picks “Large” and sees the Large price.
When this is all you need: simple choices with a fixed price each. Size. Color. A bundle of two or three options. If that’s your store, stop here. Variations are free and they work.
But variations have real limits. You should know them before you build.
- The combinations blow up fast. Say you sell a shirt in 3 sizes, 4 colors, and 2 materials. That’s 3 x 4 x 2 = 24 variations. You have to create and price every single one by hand. Add one more color and you’re at 30.
- There’s no math. Variations can’t price by size. If you sell flooring at $40 per square meter, you can’t make a variation for every possible width and height. There are too many.
- No live formula. The price only changes when the buyer picks a combo you already made. It can’t do width x height x rate by itself.

So variations are great for small, fixed choices. They fall apart when you have lots of combinations, or when the price needs real math.
Note: Variations also need a “regular price” on each one, or they won’t show a price. This catches people all the time.
Way 2: Product add-on plugins
The next step up is a product add-on plugin. The official one is WooCommerce Product Add-Ons (around $79 a year). There are others.
These let you add extra fields to a product page. Things like:
- A checkbox for “Gift wrap (+$5)”
- A text box for “Name to engrave”
- A dropdown of upgrades, each one adding a fixed or percentage fee
This is good when you want extra inputs on top of the base price, and the extra cost is a simple fixed amount or a percentage.
Where they stop: most add-on plugins have no real formula engine. They can add $5, or add 10%. But they can’t do width x height x rate. If your price depends on math between two or three fields, an add-on plugin won’t get you there.
So add-ons are great for simple extras. They’re not built for measurement or formula pricing.
One thing worth knowing: a good calculator plugin covers this job too. PriceWise (Way 3 below) has its own add-ons field with four fee types: a flat fee, a fee per unit, a fee per unit of size, or a percentage. So if your store outgrows simple extras later, you don’t end up running two plugins.
Way 3: A price calculator (when options must change the price by a formula)
This is the case most guides ignore.
Some products are priced by math, not by a fixed list:
- Flooring or tile, priced by area (length x width x rate)
- Fabric, priced by the meter or yard
- Curtains and blinds, priced by width x height
- Fencing or decking, priced by length
- Print jobs, priced by size x quantity
You can’t make a variation for every size. And an add-on plugin can’t multiply two fields. What you need is a price calculator. The buyer types in their numbers, and the price updates live using a formula you set.

This is exactly the problem I built PriceWise Calculator Pro to solve. Here it is in action for a few different shops:
Now let me show you the whole thing with one real example: flooring sold by the square meter.
How to build it, step by step
There are two ways to build a calculator. The fast way: on the Templates page, the guided setup asks a few questions (what you sell, how it’s priced, your rate) and builds the whole thing for you. There are also one-click templates for flooring, curtains, printing, banners, apparel, framing and more. The manual way is below, and it teaches you how the pieces fit together.
Step 1: Open the calculator builder.
In your WordPress menu on the left, go to Calculator Pro and click Add New.
Step 2: Name it and choose where it shows.
You start on the Basic Information tab. Type a Calculator Name (like “Flooring price”). Then pick an Assignment Strategy. You get three choices:
- Global Calculator shows on every product.
- Product Calculator shows only on the products you pick.
- Category Calculator shows on every product in a category.
For flooring, choose Category Calculator and pick your “Flooring” category.

Step 3: Save it first.
Click Save Calculator. You have to do this before you can add any fields. PriceWise even tells you: “Save the calculator in the Basic Information tab to start adding input fields.” This catches people, so do it now.
Step 4: Add your input fields.
Go to the Fields tab and click Add Field. For flooring, add two number fields:
- Field 1: Field Label “Width (m)”, Field Key
width, Field Type Number. - Field 2: Field Label “Length (m)”, Field Key
length, Field Type Number.
One rule for the Field Key: lowercase and underscores only (the plugin says so right under the box). You use these keys in your formula, so keep them simple, like width and length.
Tip: there is a dedicated Measurement field for exactly this job. It asks the buyer for width and length, works out the area on your server, and can add a waste percentage and round up to whole units, so you never sell half a box of flooring. If you use it, you can skip the two number fields.

Step 5: Write the formula.
Go to the Formula tab. Say your floor costs $45 per square meter. Your formula is:
length * width * 45
Use the exact field keys from your Fields tab. The plugin checks it and shows “Formula is valid” when it’s right. There’s also a “Formula Examples” helper built in if you get stuck.
Two honest details:
- If you leave the formula empty, PriceWise just adds up your fields. Handy for simple “pick options, add the prices” setups. Or set a Price per unit right on a number, slider or measurement field (like 45 per m²) and the field prices itself, no formula needed.
- You get basic math (
+ - * / ( )) plus functions:if,min,max,round,ceil,floor. Somax(length * width * 45, 90)charges by area but never less than $90. No code runs on your site, so it’s safe.
Want different prices for different materials? Add a dropdown field, put the rate as each option’s value, and use that field’s key in the formula instead of 45.

Step 6: Choose where it appears, then save.
On the Settings tab you pick where the calculator shows on the product page: Before Product Summary, After Product Summary, or In Product Tabs. Pick one, then click Save Calculator again.

Step 7: Check it on the product.
Open a product in your Flooring category. Make sure it has a regular price set. You’ll see the calculator. The buyer types their width and length, and the price updates live as they go. Then they add it to the cart at that price.

That’s the whole flow. This article shows one example. For the full detail on every field type and setting, see the PriceWise documentation.
Warning: The calculator won’t show on your product page unless two things are true:
- The calculator has at least one field added in the Fields tab.
- The WooCommerce product has a regular price set.
If it’s not showing, check those two first. It’s almost always one of them.
What else your options can do
A calculator is not only about formulas. These are the option features store owners ask me for most:
- Colour and image swatches. Show a choice as clickable colour circles or product photo tiles instead of a plain dropdown. One line per option: Label|Price|Swatch.
- Show and hide fields. The “engraving text” box only appears after the buyer ticks “Add engraving”. Rules can combine too, like material is mesh and size over 10.
- Typed add-ons. Each extra can charge a flat fee, a fee per unit, a fee per unit of size, or a percentage. A negative percentage works as a discount.
- Edit from the cart. Buyers change their choices right from the cart with everything pre-filled, instead of deleting the item and starting over.
- Itemized price breakdown. The buyer sees the base price, each extra, then the total. No mystery numbers.
- Works with variations. You don’t have to choose between Way 1 and Way 3. A calculator can replace the variation price, add on top of it, or use it inside the formula as
base_price.
Real examples by store type
- Pizza and food: size as a radio choice, toppings as add-ons priced per item, and a conditional “allergy notes” box that only shows when needed.
- T-shirt printing: garment dropdown, shirt colour as swatches, print locations as checkboxes, artwork upload, and quantity price breaks so 50 shirts cost less per shirt than 10.
- Engraving and jewelry: an “Add engraving” choice that reveals a text box, priced per letter with a one-line formula.
You can click through working versions of setups like these on the live demos page, including a t-shirt shop and a business card builder.
How to pick the right one
Keep it simple:
- Size and color, fixed prices? Use WooCommerce variations. Don’t pay for anything.
- Want extra fields or simple add-on fees? Use a product add-on plugin.
- Price needs real math (by size, area, length, or a formula)? Use a price calculator like PriceWise.

There’s no shame in the free route. If variations cover you, use them. The calculator only earns its place when the math gets real.
FAQ
What’s the difference between variations and options?
Variations are fixed combinations you build by hand, each with its own price. “Options” is a looser word. It can mean variations, add-on fields, or calculator inputs. The right tool depends on whether your price needs math.
Do product options change the price in WooCommerce?
Variations change the price by picking a combo you made. Add-ons change it by a fixed or percentage fee. Only a calculator changes it by a live formula like width x height x rate.
Can I do this for free?
Yes, if you only need variations. They’re built into WooCommerce. Add-on plugins and calculators are paid because they do more.
Will a calculator slow down my site?
PriceWise does the math in the browser as the buyer types, and re-checks it on the server when they add to cart. It only loads on the products you assign it to.
Can options show as colour or image swatches?
Yes. Radio and checkbox fields have an option style: plain text, colour circles, or image tiles. For image tiles you can pick pictures straight from your media library.
Can I show a field only when a certain option is picked?
Yes. Every field has a “show only if” rule, and rules can combine with and / or. Buyers only see the questions that apply to them, so the form stays short and more people finish it.
Can I use this for made-to-measure products like curtains?
Yes. That’s a classic fit. Price by width x height, with the buyer entering their own measurements. I’ll cover that setup in a separate guide.
Before you build
Quick checklist:
- Write down your choices first. If they’re fixed (size, color), variations are probably enough.
- Count your combinations. If they go past 15 or 20, rethink.
- If your price is math (area, length, quantity tiers), use a calculator.
- Whatever you pick, set a regular price on the product so the price shows.
Pick the smallest tool that does the job. Start free if you can. Reach for a calculator when the math is the whole point.
Options that add a flat fee are easy. Options that change the sum are why PriceWise Calculator Pro exists: 12 field types, colour and image swatches, conditional fields and a step-by-step slider, from $49 a year. There are 10 demos you can put numbers into before deciding anything. Starting smaller is fine too, though be clear on what you get: the free version gives you number fields and formulas, not the option fields above. Each field type has its own page in the documentation.