A Product discount takes a percent or a fixed amount off products or whole collections. Shoppers see a card on the product page that tells them what they save, and the discount comes off at checkout. Use it for a sale on a collection, or for offers like "buy 2, get 15% off" on one coffee. See a live example on the Appstle demo store.
For a discount that grows with the number of items, with several tiers on one product, use a Volume discount instead.
Before you start
Make sure the products or collections you want to discount are active. Draft products don't show on your store.
Make sure the Appstle Bundles app embed is on in your live theme. Step 4 of the editor checks it for you.
Each live or scheduled Product discount uses one of the 25 automatic discounts Shopify allows. Before you launch, Step 5 shows how many your store uses.
The card shows only where you add the Appstle Product Discount block to your product page. Step 4 can add it for you.
Create a Product discount
In your Shopify admin, open the Appstle Bundles app and go to Bundles & Discounts.
Select Create offer.
Under Get a simple discount, select Product discount.
Select Start with Product discount.
The editor has five steps on the left, a preview in the middle and the settings for the current step on the right.
Step 1: Products
This step sets what the discount covers and how items are counted.
Under Discount applies to, choose Products or Collections. If you already picked items, switching asks you to confirm and removes them.
With Products, select Add products and choose the products or variants. You can add up to 5,000 products and variants. Add by tag lets you tick product tags to add the products that have them.
With Collections, select Add collections and choose up to 20. Every product in these collections gets the discount, including products you add to them later.
Under Count items, choose how checkout counts items toward the minimum you set in Step 2:
Each variant on its own (the default): each variant counts separately, so 1 red and 1 blue of the same product don't reach a minimum of 2.
All variants of a product together: 1 red and 1 blue of the same product reach a minimum of 2. Every variant of a product you picked gets the discount, including variants you didn't pick.
Everything in this offer together: any mix of the items this offer covers counts toward the minimum, across different products.
Step 2: Discount
This step sets how much shoppers save and when it applies.
Under Shoppers get, choose % off or Amount off. A new offer starts at % off. Changing the type clears the value.
Enter the Percentage off (above 0, up to 100) or the Amount off (above 0). A percentage comes off every item the offer covers. An amount comes off once, not per item. With Each variant on its own, it comes off each cart line once: $5 off with 3 of one variant in the cart takes $5 off that line, not $15. With the two "together" options, it comes off once per group and is shared across the items counted together.
Under When it applies, set the limits you need. Leave a field empty for no limit.
Minimum items: how many items shoppers must buy, from 1 to 999. The hint under it follows your Count items choice.
Maximum items: from 1 to 999. With more items than this, the discount doesn't apply at all.
Minimum spend on these items: counts what shoppers spend on the items this offer covers, not the whole cart.
Maximum spend on these items (under More options): only the announcement bar uses it. Checkout gives the discount above this amount too.
In Name at checkout, enter the name shoppers see for this discount in the cart, at checkout and on the order. Leave it empty to use the title.
Under Purchase options, choose a Purchase type: One-time and subscriptions (the default), One-time purchases only or Subscriptions only. Under More options, Discount on renewals sets whether subscribers get the discount on Every order or on The first orders (then enter the number of orders). At checkout, the renewal price can show without the discount; your Discount on renewals choice decides which orders get it.
Step 3: Look and texts
This step sets how the card looks and what it says.
Under Look, pick a starting look: Brand style, Clean, Bold, Soft, Luxe or Playful. It copies its colors into this offer, and you can still change any color after.
Under Texts and Colors, set the fields below. Select Translate next to a text to add other languages. Select Insert to add a variable such as the quantity or the discount.
Title: the card's heading on the product page. Required.
Name in your admin: only you and your team see it. Required.
Description: optional text shown under the title. Text only.
Offer text: the line that tells shoppers what to do and what they get. A new offer starts with "Buy {{quantity}} and get {{discount}}{{discount_type}} off". If you set only Minimum spend on these items, this field holds the spend text instead, such as "Spend {{currency}}{{spent_amount}} and get {{discount}}{{discount_type}} off". The text the card doesn't use is under More options.
Save badge: the badge on the card. Simple HTML like <b>bold</b> works here. A new offer starts with "Save {{discount}}{{discount_type}}!".
Colors: change the colors of the title and description, the offer text, the card, the save badge and the badge text. Select Use default colors to go back to the look you picked.
Step 4: Where, who and when
This step sets where the card shows, who gets the discount and when it runs.
Where it shows: the card shows only where you add the Appstle Product Discount block. The step checks your app embed and every product template. Next to a template that says No block yet, select Add it for me. Your theme editor opens with the block added. Select Save there. Products that share a template need the block only once. If more than one Product discount matches a product, the page shows a card for each.
Announcement bar: turn on Show this offer in the announcement bar to show a bar at the top of your store that tells shoppers how close they are to the offer. Your store's announcement bar must be on too. If it's off, the step says so, and Turn on the bar opens its settings. Change the bar's messages under More options.
Who gets it: choose Everyone or Customers with tags. With tags, fill in Only customers with one of these tags, Not for customers with any of these tags, or both. Tags must match exactly, including capital letters.
More options in Who gets it: Not for B2B buyers keeps the offer from shoppers buying for a B2B company. Still show the offer to shoppers who can't get it shows the card, with a gray save badge, to guests and to customers your tags leave out.
When: choose When I launch or On a schedule, then set Starts and Ends in your store's time zone. When you edit an offer, When I launch reads Right away.
Limits: Uses per customer (1 to 999, or no limit). With a limit, checkout gives the discount only to logged-in customers, up to that many times each. Guests and customers past the limit still see the card but pay full price. To test it, log in as a customer on your store.
Works together with (under More options): Other product discounts, Order discounts and Shipping discounts are all on by default. Turn one off to stop this discount from applying on the same order as that kind.
Order tags: tags added in the background to each order the app records for this offer. A new offer starts with appstle_bundles. Select Add a variable to add the offer's code, title or type.
Step 5: Review and launch
Check the list and fix every check that blocks launch, for example Add the products this offer covers. Warnings, such as an app embed that is off or a product template without the block, don't block launch, but the card won't show until you fix them.
Select Launch offer. When you edit a live offer, this step is called Checks, and you select Save instead.
What shoppers see
On a product page with the block, shoppers see a card with the title, the description, the offer text and the save badge. If you leave the offer text empty, it says "Buy 2 quantity and get 15% discount!" for an offer that counts items, or "Spend $50 and get 15% discount!" for a spend offer, with your own numbers. An empty badge says "Save 15%!".
For an offer that counts items, selecting the offer text or the save badge adds the minimum quantity of that variant to the cart and opens the cart page. To turn this off for every Product discount, turn on Disable cart Redirection for the Product Discount under Settings → Bundle configurations → Discount Configuration. Selecting the offer then does nothing.
The save badge shows gray, and selecting the offer does nothing, when the shopper can't get the discount: a guest or a customer your tags leave out, or a purchase option the offer doesn't cover, such as one-time purchase on a subscription-only offer.
The discount itself is an automatic Shopify discount. Checkout gives it to each item the offer covers, and the cart shows each item on its own line with the saving.
Things to know
Percent and amount are the only discount types. There are no tiers and no free gifts. For tiers, use a Volume discount.
When several Product discounts apply to the same item, checkout gives the best one.
If your store already has 25 live or scheduled automatic discounts, Shopify won't accept another. Step 5 warns you: turn one off in Shopify, or save this offer as a draft.
A very long product list can be too large for Shopify's discount limits. If saving fails with a message about this, reduce the number of products.
With Customers with tags, guests don't get the discount. They also don't see the card, unless you show it to shoppers who can't get it or the store setting Show Discount To Non-eligible Customers is on (Settings → Bundle configurations → Discount Configuration).
With a Uses per customer limit, guests see the card but don't get the discount. Only logged-in customers can use it.
FAQs
Why doesn't the card show on my product page?
Check these:
The app embed is on in your live theme and the Appstle Product Discount block is on the template this product uses. Step 4 shows both.
The offer is live and today is between its start and end dates.
The product or one of its collections is in the offer.
The customer can get it. With tags, guests, customers without a matching tag and customers with an excluded tag don't see the card. Tags must match exactly, including capital letters. B2B buyers don't see it when Not for B2B buyers is on.
The card shows, but there is no discount at checkout. Why?
The most common reasons are a minimum that isn't reached and a count that works differently from what you expect. Check Minimum items, Minimum spend on these items and Count items: with the default, 1 red and 1 blue don't reach a minimum of 2. Also check Maximum items, the Purchase type (a subscription-only offer doesn't discount a one-time purchase) and Works together with. If Uses per customer is set, guests never get the discount: log in as a customer to test.
Can I keep shoppers on the product page when they select the offer?
Yes. Turn on Disable cart Redirection for the Product Discount under Settings → Bundle configurations → Discount Configuration. Selecting the offer then does nothing, so shoppers stay on the page and add the product with your add-to-cart button. The setting applies to every Product discount.
Can I discount a whole collection?
Yes. In Step 1, choose Collections and add up to 20. Products you add to those collections later get the discount too.





