
Een lineaire som — breedte × hoogte × tarief — is eerlijk tot je werkplaats de extra handel voelt. Een spandoek van 80 cm gaat nog door de printer; 240 cm vraagt een andere baan, meer restmateriaal, soms een tweede persoon. Staffelprijs op maat Shopify is precies dat: onder een drempel het standaardtarief, daarboven een hoger tarief, terwijl de klant zelf millimeters intypt.
Native Shopify kan dat niet als formule. Volgens Adding variants heeft een product maximaal drie options en maximaal 2048 variants. Die variantcap ging in oktober 2025 van 100 naar 2048 (changelog). Handig als je S/M/L écht als SKU op voorraad legt. Onbruikbaar als elke centimeter een andere cel in je prijstabel is, of als “groter dan 200 cm” een *ander tarief* moet krijgen, niet een andere SKU.
In de Shopify Community komt dat terug als lengte- of formaatprijs. In Seeking Advice for Variable Product Pricing Based on Length wil een shop een lineaire som over 400–2000 cm, met het juiste bedrag in cart en checkout. In Search app for different variants and pricing based on dimensions typt de klant zelf 20×20 cm en moet de prijs meebewegen. Dat is geen variantmatrix; dat is een drempel in een formule.
Dit artikel laat zien waarom een staffel per afmeting vastloopt in variants, hoe je met Options Price Calculator een Premium conditional formula inricht, en hoe je drie staffels test voordat je live gaat.
Shopify prijst de gekozen variant. Wil je 50 breedtes × 40 hoogtes, dan zit je al op 2000 SKU’s — vlak onder de 2048-grens — en je drie options zijn op. Een vierde as (materiaal, zoom, montage) past native niet. Continue maten zijn erger: elke millimeter als variant aanmaken is onmogelijk en onwenselijk.
Shops proberen het dan met buckets. “Klein / midden / groot” als Size-option, elk met een vaste prijs. Dat werkt tot een klant 201 cm bestelt en jij intern het “groot”-tarief wilt, terwijl de dropdown nog “midden” toont. Of tot je vijf materialen × drie buckets nodig hebt en de catalogus explodeert.
Line item properties in Liquid (`properties[Breedte]`) bewaren de maat op de orderregel. Fulfillment ziet de centimeters. De prijs verandert niet. 90 cm en 240 cm betalen dezelfde SKU, tenzij je er een calculator of Shopify Function naast zet. We schreven dat eerder bij Shopify line item properties en prijs.
Een staffel hoort in de som, niet in nóg een variantregel.
Houd native variants voor wat ze zijn: voorraadbare combinaties. Een stofcollectie of een basismateriaal met eigen SKU blijft een variant. De vrije breedte, de vrije hoogte en het *tarief dat van die breedte afhangt* horen in velden plus een formule.
Options Price Calculator is daarvoor gebouwd: number inputs voor maten, dropdowns of swatches voor keuzes, en een formula builder die de prijs live bijwerkt. Geen extra variant per centimeter. De app is Built for Shopify en werkt via een theme app extension.
Een enkele formule — `product_price + (width * height)` — dekt een vlak tarief. Dat staat in de Pricing / Formula Examples. Een staffel per drempel is iets anders: als `width > 200` geldt een hogere multiplier. Dat is conditional pricing, alleen op Premium ($14.99/maand op de listing). Starter ($9.99) heeft de formula builder en onbeperkte opties, maar geen if/then. Zet dat niet als gratis neer.
Het algemene if/then-model — toeslag bij een optie, minimumprijs, staffel — staat in voorwaardelijke prijzen op Shopify. Dit stuk zoomt in op één patroon: groter formaat, hoger tarief.
In de docs heet het *Tiered pricing by size*. Conditions worden van boven naar beneden geëvalueerd; de eerste match wint. Daarna volgt een verplichte else. Uit Conditional Pricing (Premium) en example 7 van de formula-voorbeelden:
Voorbeeld: print of raamfolie, prijs per m², toeslag boven 200 cm breedte
Velden: `width` en `height` als number input (eenheid die jij kiest, bijvoorbeeld cm of m — wees consistent). Optioneel een dropdown `material_type` met multiplier 1 / 1.2 / 1.5.
Condition 1:
``` width > 200 ```
Then:
``` product_price + (width * height * 1.3) ```
Else:
``` product_price + (width * height) ```
Kleine formaten blijven op het basistarief. Alles breder dan 200 gebruikt 1.3×. Wil je een middenstaffel, voeg een tweede condition toe *boven* de default, bijvoorbeeld `width > 120` met multiplier 1.15. Overlappende ranges vermijd je door van hoog naar laag te werken: eerst `width > 200`, dan `width > 120`, anders de else.
Hetzelfde patroon geldt voor lengte in plaats van oppervlakte — de community-thread over 400–2000 cm is een lineaire `a * length + b`, met eventueel een hogere `a` boven 1500 cm. Of voor stickers waarbij grotere vellen duurder zijn, zoals in How can customers customize sticker size and quantity. Hou de staffel op de maat; Shopify’s native quantity pricing kan de oplage later nog raken.
Helpers (`Math.max`, `Math.ceil`, `Math.round`) werken in elke branch. Rond pas in de laatste stap af. Per-branch overrides van computed properties houden de som leesbaar: `rate` is `1` in de else en `1.3` in de grote-maten-branch, terwijl beide formules `product_price + (width * height * rate)` blijven.
Stel: textielprint, basis €18 per m², vanaf 200 cm breed €23,40 per m² (factor 1.3), plus €25 setup. Productprijs in Shopify is €0 of een klein startbedrag; de som doet het werk.
Number input `width`, min 40, max 500, key `width`.
Number input `height`, min 40, max 300, key `height`.
Checkbox `hem` met numeric value 8 (zoom), anders 0.
Conditional formula (Premium):
als `width > 200` → `product_price + 25 + (width * height * 1.3) + hem`
else → `product_price + 25 + (width * height) + hem`
Een klant van 180 × 100 blijft op het basistarief plus setup en eventuele zoom. Een klant van 240 × 100 schuift automatisch naar 1.3. Geen “kies XL”-dropdown die je moet uitleggen, geen 200 variantregels. De orderregel bevat de ingevulde maten, zodat de printer dezelfde centimeters ziet als de checkout.
Heb je wél een SKU-verschil — mesh versus textiel — koppel dan per variant een eigen calculator, zoals in Linking Products & Variants to Calculators. Elke variant mag een andere drempel of multiplier hebben. Voorraad blijft op die twee SKU’s, niet op elke centimeter.
Voor vrije maten zonder staffel is prijs op basis van eigen maat het startpunt; dit artikel voegt alleen de drempel toe.
Installeer Options Price Calculator. Free: 20 uses (op een develop-store altijd gratis). Starter: onbeperkte opties en formula builder. Staffel per drempel = Premium.
Zet het app block op je producttemplate, onder de prijs en boven Add to cart — How to Add the Extension to the Product Page.
Maak `width`/`height` (of `length`) als number inputs. Zet min/max zodat onmogelijke formaten niet in de cart komen.
Schakel in de formula builder naar Conditional formulas. Vul de hoogste drempel eerst, daarna eventuele middenstaffels, altijd een else.
Test in preview met waarden net onder en net boven elke drempel (199 vs 201). Controleer afronding.
Link de calculator aan de juiste variant. Server-side price validation staat in de app-wide settings: de som wordt niet alleen in de browser getoond.
Optioneel: stuur de ingevulde maten mee in de orderbevestiging, zodat fulfillment dezelfde staffel ziet als de klant.
Staffelprijs op maat Shopify is geen extra Size-option met “groot / groter / grootst”. Native variants stoppen bij drie options en 2048 SKU’s; een doorlopende centimeter met een ander tarief hoort in een Premium conditional formula. Eén drempel (`width > 200` → 1.3×) dekt de meeste print- en folieshops; meer staffels stapel je van hoog naar laag.
Zet die drempel live met Options Price Calculator en laat het tarief meegroeien met het formaat — zonder variant per centimeter.
Diensten
Reviews
5/5
Mail: info@onlineorigins.nl
Tel: 073 234 0612
KVK: 89825624
BTW: NL865123639B01
Bruistensingel 500,© 2026 Online Origins