Skip to content

Custom product options for Shopify

Custom product options for Shopify, without the mess

Give every variant its own options: 9 field types, re-usable option sets, and one clean cart line when an option costs extra. Works on every Shopify plan.

Free plan: 5 product assignments, no time limit. No code required.

The usual workaround

Shopify variants stop where your options begin

Variants don't cover it

An engraving, a pickup date or a logo upload has no place in a size and colour grid. So it lands in the product description and arrives by email instead.

Add-ons litter the cart

Every paid extra becomes its own cart line, its own order line and its own support question. Customers see two lines for one product and hesitate.

Editing 200 products by hand

The same six option fields, retyped on every product. Change one label and the edit has to be repeated everywhere it appears.

What you get

Options per variant, priced without the clutter

The Zesty Options assignment view: one product, two variants, a different option set on each.

Different options for every variant

A plain shirt asks for nothing, while a print shirt asks for an image. Assign one option set to specific variants and another to the rest of the product, and the storefront swaps them in when the customer picks a variant.

  • Assign at product level or variant level
  • Options resolve in place on variant change, with no page reload
  • As many option sets per product as the option needs
A cart showing one line for the product, at the combined price of the product and the selected add-on fee.

Charge for an option without a second cart line

Set the fee on a variant in your own catalogue, then give the option a quantity. When a customer selects it, Shopify's cart transform merges the fee into the product line at the combined price.

  • One cart line at the combined price, in cart and checkout
  • Quantity per option or per individual choice
  • Prices stay in your Shopify catalogue, never inside the app
The assignments view, where one option set is assigned to a list of products.

Build once, use everywhere

One option set drives as many products as your plan allows. Edit the option set once and every assigned product shows the change, instead of a hundred product edits.

  • Re-usable option sets and re-usable choice sets
  • Assign one product, several variants, or a whole catalogue in bulk
  • Already over your cap? Editing and removing still work

9 field types

Single line text, multi-line text, dropdown select, colour swatch, image select, single checkbox, checkbox group, date and file upload.

Conditional logic and defaults

Show a field only when another field has the value that matters, and pre-select the choice most customers want. Required fields and minimum or maximum selection counts are enforced before add to cart.

Theme-native and fast

A theme app extension, not an iframe, so fields inherit your theme's fonts and colours. Products without options render no markup, no JavaScript and no request.

How it works

Three steps from install to live

  1. 1

    Create

    Build an option set in the app: add your fields, mark the ones that must be filled in, and attach a choice set for colour swatches or image options. Set a quantity on anything that costs extra.

  2. 2

    Assign

    Assign the option set to a product, to specific variants, or to many products at once. Assignments show which variant each option set belongs to.

  3. 3

    Add the block

    Open a product template in the theme editor and add the Zesty Options block. No theme code to edit, and the setup guide on the app home screen links straight to it.

The honest comparison

Why not just use variants?

Variants are still the right tool for size and colour. Zesty Options adds what variants cannot hold, and never creates a variant of its own, so your variant grid stays exactly as it is.

Options that Shopify variants cannot hold, and how Zesty Options covers them
What you needShopify variants aloneWith Zesty Options
Options that differ between variantsEvery variant shares the same product optionsDifferent option sets for different variants of one product
An option that costs extraBecomes another variant for every combinationA fee added to the same cart line, at the combined price
Text, dates and file uploadsNot possible9 field types, from short text to 20 MB file uploads
The same options across productsRebuilt on every product, one at a timeOne re-usable option set assigned to many products
Required fields and choice limitsNot enforcedRequired fields enforced before add to cart, with minimum and maximum selections

Who it's for

Built for products that arrive with instructions

Engraving and personalisation

A text field for the engraving and a file upload for the artwork, both attached to the variant that needs them.

Apparel and print on demand

Size and colour stay as Shopify variants. Print placement, thread colour and artwork move into options.

Made to order and custom builds

Required dropdowns and text fields so nothing reaches the workshop half-specified.

Bakeries and food

A date field for pickup, a message field for the cake, and a checkbox for dietary requirements.

Gifts and hampers

Gift message, delivery date and a paid gift-wrap option merged into the product's cart line.

B2B and wholesale

Required account fields, minimum selection counts and a file upload for purchase orders.

Plans

Priced by product assignments, not by option sets

Start here

Free

5

product assignments

Try it on five products, for as long as you like.

Pro

300

product assignments

For a growing catalogue with a few paid extras.

Add-on pricing

Growth

1000

product assignments

For busy catalogues with print and personalisation options.

Add-on pricing

Scale

Unlimited

product assignments

For catalogues of any size that want add-on pricing everywhere.

Add-on pricing

Every plan includes unlimited option sets, all 9 field types and conditional logic.

Trust and your data

Your data belongs to you

Uploads stay in your Shopify Files

Customer artwork goes from their browser straight into your own Files library. We never store the file itself, and we never proxy it.

Export whenever you want

Settings emails you CSV files of your option sets, choice sets and assignments. The Import page reads them back.

Uninstall without losing your setup

Uninstalling resets billing and keeps your option sets, choice sets and assignments, so reinstalling brings your setup back. Ask us and we delete it for you.

No customer profiles stored

The storefront statistics we keep are product level: which product had options, and whether they reached the cart. No names, emails, addresses or payment details.

Questions before you install? hello@ludicas.app · Privacy policy · Terms of service

Questions

Answers to the ones that come up first

Which field types does Zesty Options support?

9: single line text, multi-line text, dropdown select, colour swatch, image select, single checkbox, checkbox group, date, and file upload.

Every field can be required or optional, can carry a default value, and can be shown or hidden by conditional logic based on another field.

Why does the cart show one line instead of two?

Add-on fees are added as a second cart line with a hidden pairing token, then Shopify calls our cart transform function server-side before the cart renders.

The function merges the fee line into the product line and the customer sees one line at the combined price, for example 50.00 plus a 2.00 fee shown as 52.00. Cart, checkout and order all show the single merged line.

Do I need Shopify Plus?

No. Zesty Options works on every Shopify plan, including Basic.

Add-on pricing merges the add-on fee into a single cart line using Shopify's cart transform function, which is available on all plans and is not gated behind Shopify Plus.

What happens when I go over my cap or downgrade?

You freeze in place. Existing assignments keep working and keep rendering on your storefront, but you cannot add a new product until you are back under the cap.

Removing assignments is always allowed, and it is the way back under the cap. Upgrading lifts the limit immediately.

Does it slow down my storefront?

Products with no options cost nothing. The block checks a product metafield that the app keeps in sync, and renders no markup, no script and no request for products without options.

Products with options make one request for the assigned option sets, and that data is cached at Cloudflare's edge, so repeat views do not reach the database.

What happens to my data when I cancel or uninstall?

Uninstalling removes the app and resets billing to the Free plan, and we keep your option sets, choice sets and assignments so that reinstalling restores exactly what you had.

Your uploaded files stay in your own Shopify Files library and are untouched by us.

To have your data deleted, email hello@ludicas.app and we will remove it. Shopify's shop redaction request also triggers automatic deletion of your stored data.

Put your options on every variant

Install the app, add the block to one product template, and see it live on your own storefront. Five products are free.