How to charge different prices for different sizes on Shopify
Short answer: for a short, fixed list of sizes, use Shopify variants: add a Size option and give each size its price. For sizes the customer types, like 87 × 143 cm, variants can't keep up. Price from the width and height instead, and let a Shopify Function charge that price at checkout.
Method 1: variants for a fixed list of sizes
If you sell a few set sizes, variants are the simplest answer and need no app:
- Open the product in your Shopify admin.
- Under Variants, add an option called Size.
- Add each size as a value, for example A3, A2 and A1.
- Give each variant its price.
- Save. The product page shows a size picker and the price of the chosen size.
Since October 2025 every Shopify plan allows up to 2,048 variants per product, with at most three options (for example Size, Material and Finish).
Where variants stop working
Variants are a list someone has to write out. Custom sizes aren't a list:
- Too many sizes. Widths and heights from 12 to 120 inches, in whole inches, make 109 × 109 = 11,881 sizes. That's over the 2,048 limit before you add a single material.
- Options multiply. Three materials and two finishes turn 100 sizes into 600 variants, each with a price to keep up to date.
- Prices drift. When your rate changes, every variant's price has to change with it.
- Customers still can't get their size. Anyone between two listed sizes rounds up and pays more, or leaves.
Method 2: price from the size
Instead of a list, the product page asks for the width and height, and the price is worked out from them. There are three common ways to work it out:
| Pricing | How it works | Good for |
|---|---|---|
| Area × rate | width × height × a rate per sq ft or m², with a minimum | Banners, signs, prints, vinyl, glass |
| Length × rate | length × a rate per metre or foot | Fabric, trims, rope, hose |
| Size table | the price where the width band and height band meet | Blinds, doors, anything a supplier prices by band |
An example with area pricing: a blind 87 cm wide and 143 cm high is 0.87 × 1.43 = 1.2441 m². At $60.00 per m² that's $74.65. A customer who wants 88 cm instead pays for 1.2584 m², $75.50: no list of variants needed.
For the details, see charging by the square foot, selling by length and pricing from a supplier's table.
Why the checkout matters
Showing a price on the product page is the easy part. Shopify's checkout charges the variant's price unless something changes it, and only a Shopify Function can. A size calculator that only changes what the page displays leaves you charging the wrong amount, or adding hidden "fee" products to make up the difference.
Trimsize sets each line's price at checkout with a Shopify Function, from the size and options on the line, and a checkout rule stops a line whose size is missing or whose price was edited. See Cart and checkout.
Which method should you use?
| You sell | Use |
|---|---|
| Three to ten set sizes, prices that rarely change | Variants |
| Any size the customer asks for | Price from the size |
| Popular set sizes, plus custom sizes | Price from the size, with preset sizes in a list and a "Custom size" choice |
| Sizes your supplier prices in a table | A price table |
Set it up with Trimsize
- Install Trimsize and open Home.
- Choose your trade under What do you make?, pick a product, and click Set up pricing. Trimsize puts ready-made pricing for that trade on it, with example prices to change.
- Set your materials and rates, or paste your supplier's table. See Pricing editor.
- Set size limits, the smallest and largest size you make. See Size limits.
- Add the block to the product page.
- Price more products at once from the same template. See Templates.
Keep the product's own variant simple: one variant, with the price shown before a size is entered. The size, material and options go on the cart line, so your orders show exactly what to make.
Questions
How many variants can a Shopify product have?
Up to 2,048 on every plan since October 2025, with at most three options per product. That's plenty for a fixed list of sizes, but not for any size a customer can type.
Can I combine set sizes and custom sizes on one product?
Yes. Trimsize can show your popular sizes in a list, priced like any other size, plus a Custom size choice that opens the width and height fields.
Will the price change as the customer types?
Yes. The product page shows the price as the customer enters the size and picks options, and the cart and checkout charge that same price.
Can different materials have different prices?
Yes. Each material has its own rate and minimum charge, or its own row in a price table, and the customer picks the material next to the size.