Here is the short version. A variant is a version of the product you stock and sell: Small Black T-shirt, SKU TS-S-BLK. A line-item property is a piece of information attached to one item in one order: "Name on back: RIVERA 23". Variants live in your catalog. Line-item properties live on the order.
Getting this right early saves a lot of cleanup later. Below are the rules we use with merchants, a worked example and the mistakes we see most.
When to use variants
- The choice affects inventory. You need to know how many Medium Navy shirts are left.
- The choice affects price. Solid oak costs more than pine, every time.
- The choice affects weight or shipping. A 24 by 36 inch canvas ships differently from an 8 by 10.
- The choice affects fulfillment. Different variants might ship from different locations or go to different print partners.
- The list of choices is fixed and short. Ten colors, not "any color you type".
When to use line-item properties
- Free text from the customer, such as a name, a date or a message.
- A photo or file upload for a print or engraving.
- Small add-ons like gift wrap that do not change the product you pick from the shelf.
- Preferences such as a preferred delivery date.
- Anything one-of-a-kind, where every order is different.
Line-item properties are attached when the item is added to the cart and stay with that order line through checkout, into the admin and onto packing slips if your template shows them. Our guide to line-item properties in order confirmation emails shows how to display them to the customer as well.
When both together
Most personalized products use both. A variant handles Size (S, M, L) and a line-item property holds the personalization text. The cart shows both, and your POD partner reads both from the same order line. If you are deciding whether you need an app for this at all, our comparison of options apps vs native variants lays out the trade-offs.
Side by side
| Variant | Line-item property | |
|---|---|---|
| Where it lives | Product catalog | The individual order line |
| Tracks stock | Yes | No |
| Has its own price | Yes | No, but an app can add a fee as a separate cart line |
| Accepts free text or files | No | Yes |
| Limits | 3 options, 2,048 variants per product | Practical limit set by the app and theme |
| Appears in sales reports by variant | Yes | No |
Data model impact
- Variants appear in inventory, POS, sales reports and your Google Shopping feed.
- Line-item properties appear on the specific order line and nowhere else. You cannot filter a sales report by them in standard Shopify reports.
Properties whose name starts with an underscore are hidden from the customer in most themes. Apps use them for internal data such as a print file link. See our explainer on hidden line-item properties for how that works.
Worked example: a team jersey
A store sells a custom soccer jersey in 4 colors and 6 sizes. That is 24 variants, each with stock and a SKU. The player name, number and an optional sleeve patch are different: the name and number are text fields, and the patch is a checkbox that adds $6.
With a personalizer such as Print It My Way, the order line reads: Jersey, Red / Large, plus "Name: RIVERA", "Number: 23", "Sleeve patch: Yes", with the $6 shown as a separate cart line. There is no per-sale fee from the app. The print partner gets the right blank from the variant and the print details from the properties.
If you had tried to make the number a variant, you would need 99 values multiplied by 24 color and size combinations, far beyond any sensible catalog. That is the clearest sign something belongs in a line-item property.
Common mistakes
- Asking for personalization in order notes. Notes apply to the whole order, not one item, and get missed. Use a property on the item.
- Creating "with engraving" and "without engraving" variants. It doubles your variant list. A checkbox that reveals a text field does the same job.
- Confusing properties with cart attributes. Cart attributes apply to the whole cart. Our comparison of line-item properties vs cart attributes explains when each fits.
- Not testing the cart. Some cart drawers drop properties. Place a test order and check the order page before launch.
Frequently asked questions
Should size be a variant or line-item property?
A variant. Size affects inventory, price, weight and POS, and a line-item property cannot track any of that.
Should custom engraving text be a variant?
No. The text can be anything, so it cannot be a fixed list of variants. Collect it in a text field that saves as a line-item property, usually through a personalizer app.
Should gift wrap be a variant?
No. Gift wrap is an add-on with a fee and does not change the base product. Save it as a line-item property and add the fee with a Cart Transform line.
Should photo upload be a variant?
No. Every photo is different, so it belongs in a file-upload field that saves the image link as a line-item property.
Do line-item properties affect inventory?
No. They do not change stock. The parent variant's inventory goes down as normal when the order is placed.
Do variants affect Google Shopping?
Yes. Each variant is normally submitted as a separate item in your Merchant Center feed, grouped under the same product.
Can I convert a line-item property to a variant?
Not directly. You would have to create the new variants and change how future orders are placed, and past orders keep their old data. It is rarely worth it unless the choice really needs stock tracking.
Do POD partners handle both?
Yes. Printful, Printify and Gelato read the variant and the line-item properties on each order line, so the right blank gets the right personalization.
Related reading
Sources & further reading
Primary sources referenced in this article. We link to official platform documentation and standards bodies rather than secondary summaries so you can verify claims directly.
- Shopify Help Center: Product variants
- Shopify.dev: Product variant limits
- Shopify Help Center: Line item properties (customization)
Try it free on Shopify
Print It My Way's permanent Free plan includes live preview, custom options, and Cart Transform pricing.
Install Print It My Way