Back to article listing
Articles
Build The Next Great Promotional Campaign Using Magento Discounts
May 19, 2022
By-
Rahul Gedupudi

There are already plenty of blogs, blurbs, and how-to's on how to setup Magento Discounts. Seriously, just search "How to set up Magento Discounts" and get ready for the motherlode. We'll touch on some of the core questions such as: 

  • How can you extract the most value out of discounts? 
  • How are discounts promoted and applied? 
  • What are the most effective models for promotions and pricing?

We'll soothe those pain points as we answer those questions, but first, here’s a general overview of how Magento handles discounts.

Magento Discounts Overview

In today's eCommerce market, the first thing customers look at is shipping costs and times. As recently as 2017, the top reason people bought on Amazon.com was price. Now convenience has become the principal driver of online shopping: 

With the growth of Amazon Prime, customers have become accustomed to expecting discounted or free shipping. If properly managed, it can lead to meaningful sales growth for your business. 

Check out what your competition is up to in this arena. Take a look at their shipping pricing and then consider how you want to discount your own shipping. As you do this exercise, keep in mind that not all orders are created equal. It may make sense for you to limit free shipping to above a certain minimum order size, such as offering free shipping for all orders over a specific "basket" total, such as $30 or $50.

Timing is essential too. If you offer limited-time shipping discounts during high-traffic sales periods (like the holidays), your incentives are likely to increase overall cart value. For example, if you're an electronics retailer, shipping discounts in the weeks leading up to Christmas can generate higher sales revenue.

Basic Discount Types In Magento: 

  • Tiered Discounts: The more you buy, the better the unit price. 
  • Special Discounts: A percentage discount off on a product or the entire cart.
  • Free Shipping: No shipping charged to the customer on the order.
  • Coupon Code Discounts: These can be applied automatically or entered manually by the customer at checkout.
  • Cart Price Rules: An example of a cart rule is “buy x, get y for free.” 

These discount types will be important to keep in mind while we're working with structure. We'll touch on the more powerful and advanced aspects of Magento's discounting options later, but even more complex discounts fall into these basic categories.

Split Functionality - Understanding Magento's Discount Dichotomy

You'll find Magento's discounting modules in the left-hand side commands bar of the Magento 2 admin panel. Just click and expand the "Marketing" tab, where you'll find more options like "Catalog Price Rules" and "Cart Price Rules." These two main categories are the bulk of what we'll be dealing with, so let's define those terms.

Catalog Price Rules

Customers encounter these discounts as they browse your company's catalog. These prices are your chance to grab your audience's attention, get items into their shopping carts, and win their patronage.

Shopping Cart Price Rules

After shoppers fill their carts, these discounts are applied at checkout before the final payment has been made. Typically, it's here that your customers will encounter discounts like free shipping, multi-SKU discounts, and the like. These discounts are your chance to deliver to your customers that last little bit of surprise-and-delight and safeguard against any potential buyer's remorse.

Get Your Priorities Straight

Cart and Catalog discounts follow “if-then” conditions – for example, if you buy 50$ worth of jeans, you get 20% off shipping. A typical seller will have no fewer than 100+ different catalog and cart rules in place. With that many to manage, most rules end up logistically "stacking" on top of one another.

The order of operations in which these rules “stack” is integral to your discount structure's functionality and your promotional campaigns' success. Magento processes these rule stacks linearly, by its internal logic, and that's what we're here to help you figure out.

Let's dive in.

First Things First - Understanding Magento Logic

It's important to understand that Catalog Price Rules are applied to products before they are added to the cart and after any predesignated Special Prices. Shopping Cart Price Rules are applied to the items only once they're in the shopping cart (as shown in the handy diagram above). This means that by order of priority, always apply Catalog Price Rules first. So, the prioritized order of operations, then, is:

Base Price
                ↘ Secondary Price (Sale Price, Special Price, Tier Price, Group Price)
                                                                                                                             ↘ Catalog Price Rules
                                                                                                                                                            ↘ Cart Price Rules

That's how Magento moves pricing strictures down the line from Point A to Purchase. Next, let's take a look at the rules-within-the-rules. The following is what makes Catalog Prices and Shopping Cart Prices tick.

Catalog Price Rules

As mentioned above, catalog prices are the ones your customers will see on a given item's page. Things get complicated when multiple pricing rules start stacking on top of single items or groups of objects. Here's how to keep all your plates spinning:

Multiple Catalog Price Rules

It can be easy to accidentally apply multiple Catalog Price Rules to the same product or product group. Luckily, Magento provides a safeguard for this with the "Discard Subsequent Rules" checkbox. When you have or are adding a new rule, and you want to override all of them, make sure you check that box.

When you want to apply multiple rules, use the rules' "Priority" attribute to define the order in which you apply the rules.

If there are multiple rules with the same Priority, Magento applies the rules as follows:

  • The rules governed by the "Discard Subsequent Rules" box will be picked first, and of these, the rule created earliest (i.e., the one with the lowest numeric ID) is applied. Subsequent rules are then discarded under this setting.
  • If there aren't any rules with this setting enabled, then Magento applies all the rules. The order in which Magento applies the rules you specify is based on the highest discount value first.

When a catalog price rule is applied, Magento shows the original and discounted price on the Category and the Product Detail pages. That way, your customers see just how much they're saving by choosing to shop with you.

Note: The catalog price rule is applied only to the "price" of the product. You're also able to define special, tier, and group prices at the product level. If any of these prices are cheaper than the calculated price after all cart rules, Magento will use the catalog's lowest price.

Cart Price Rules

Cart Price Rules are applied to products in the shopping cart. Since they're applied to a given product once added to the cart, this discount is provided on top of the price determined via any Special / Tiered / Group / Catalog Price Rules. This gives us the final product's final price in the catalog, where your customers will see it. 

Note: Most parameters are the same for both cart rules and catalog. 

Coupon Codes

The "Coupon Code" field can be auto-generated, filled with a specific sequence of characters, or left blank (i.e., "No Coupon"). If this field is filled, the customer would have to enter the corresponding code on the shopping cart or checkout page to get the discount. Otherwise, these codes are automatically applied to the cart.

Like with catalog price rules, Priority and "Discard Subsequent Rules" fields are present and work the same way.

Note: If "Discard Subsequent Rules" is not checked, a "No Coupon" rule is automatically stacked along with the coupon code entered by the customer. So, use the "No Coupon" option very carefully and sparingly.

Multiple Cart Price Rules

If there are multiple Cart Price Rules applicable to a cart with the same priority, then Magento applies the rules as follows:

If there are multiple Cart Price Rules applicable to a cart with the same priority, then Magento applies the rules as follows:

  • First, the rules with the "Discard Subsequent Rules" checked will be picked. Of these, the Rule that is created the earliest (i.e., has the lowest ID) is applied. Subsequent rules are discarded (since the setting is checked).
  • If there aren't any rules with this setting enabled, then Magento applies all the rules. Magento orders its application of these rules by placing the highest discount value first.

That's Magento Discounts in theorem-form. But now that we've set the stage and defined Magento's pricing/discounting logistics, let's see how they look in practice – because while theory's great, we're more about taking action.

Discounts In Action - Examples Of Effective Rule Prioritization

Scenario 1: Two Rules - Different Priority

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%Yes1220%Yes0

Test:

Product Price:     $16.00

Discount Amount:     $16.00 x 20% = $3.20

New Price of Product:    $16.00 - $3.20 = $12.80

Conclusion: When two rules have different priorities, the lower priorities always float to the top. That value is applied first (priority is sorted in ascending order).

Scenario 2: Two Rules - Same Priority

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%No0220%No0

Test:

Product Price:     $16.00

First Discount Amount:     $16.00 x 20% = $3.20
                                            $16 - $3.20 = $12.80

Second Discount Amount:     $12.80 x 10% = $1.28

New Price of Product:     $12.80 - $1.28 = $11.52

Conclusion: When two rules have the same priority, the one with the highest discount value is applied first.

Scenario 3: Two Rules - Different Priority, When One Has "Discard Subsequent Rules" Checked

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%Yes1220%No0

Test:

Product Price:     $16.00

Discount Amount:     $3.20 + $1.28 (10% of $16.00 - $3.20) = $4.48

New Price of Product:     $11.52

Discount Calculation

Discount AmountTotalInitial State$16.00Apply Rule 2: 20% of $16.00$3.20$12.80Apply Rule 1: 10% of $12.80$1.28$11.52

Conclusion: Priority is more critical than "Discard Subsequent Rules." Rule 2 is applied first since it has a higher priority (lower value), and Rule 1 is applied after that since "Discard Subsequent Rules" is not checked for Rule 2.

Scenario 4: Two Rules - Same Priority, With One "Discard Subsequent Rules" Checked

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%Yes0220%No0

Test:

Product Price:     $16.00

Discount Amount:     $1.60

New Price of Product: $14.40

Conclusion: When two rules have the same priority, the rule that has the "First Created Rule" status is applied first. Rule 1 will apply only because Rule 1 has "Discard Subsequent Rules" checked, so Rule 2 will not apply.

Example B:

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%No0220%Yes0

Test:

Product Price:     $16.00

Discount Amount:     $3.20

New Price of Product: $12.80

Conclusion: When two rules have the same priority, the rule that has the "Discard Subsequent Rules" checked is applied first.

Scenario 5: Two Rules - Same Priority, But Both Have "Discard Subsequent Rules" Checked

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%Yes0220%Yes0

Test:

Product Price:     $16.00

Discount Amount:     $1.60

New Price of Product: $14.40

Conclusion: When two rules have the same priority, and both have "Discard Subsequent Rules" checked, the one that is created first (lowest Rule ID) is applied first.

Scenario 6: Two Rules - Same Priority, Two Have "Discard Subsequent Rules" Checked

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%Yes0220%Yes0330%No0

Test:

Product Price:     $16.00

Discount Amount:     $1.60

New Price of Product: $14.40

Conclusion: Since the priority is the same, rules with "Discard Subsequent Rules" are picked up next (Rules 1 and 2), and of these, the oldest one is applied first (Rule 1), and then processing is stopped.

Scenario 7: Three Rules - Different Priority, Different "Discard Subsequent Rules" Options

Rule IDDiscount PercentageDiscard Subsequent RulesPriority110%Yes1220%Yes0330%No0

Test:

Product Price:     $16.00

Discount Amount:     $3.20

New Price of Product: $12.80

Conclusion: The two rules with Priority 0 are picked up first, and within these two, the one with the "Discard Subsequent Rules" checked is processed first, and then processing is stopped.

In Summary: Magento Discounts Logic

With the above tests in the bag, we know now that the order in which the rules are applied are based on the following criteria:

  1. Priority is Preserved (Lowest Number = Highest Priority).
  2. When Discard Subsequent Rules = Yes, the First or Oldest Rule (lowest Rule ID) follows.
  3. When Discard Subsequent Rules = No, the Highest Discount Value is applied first.

This can all seem like a lot to digest, but once you've got the basic mechanics down, discounting with Magento becomes second nature. And that's power in your hands, paired with a little power given to your customers, too.

When you champion effective discounting structures, you're giving your site's visitors small but powerful victories. When we, as consumers and purchasers, feel like we've got a real deal – it feels like we've won something. And that's exactly what keeps us coming back for more.

Magento 2: The Most Flexible Discounting Module On The Market

Magento touts the most flexible discounting module available on the market today. Every eCommerce platform comes equipped with discounting features, but what defines Magento's approach is game-changing. On Magento 2, discounts are parameter-driven.

Creating discounts involves a sort of input/output system. In Magento terms, you'll select your parameters and define an action, i.e. selected items (input), and desired results (output). If this dichotomy seems simple, that's good; the simplicity is what makes discounting on Magento so intuitive.

What you're able to do with that A–B relationship, from the ability to offer bulk discounts to tiered and group pricing choices, is where the system truly shines. This is much more than setting a special discount on an item or group of items. Flexibility in your systems architecture means effective options for you and your customers. 

With Magento, you're able to select products for discounts based on specific product categories, product types, and even specific product attributes (e.g., "Everything with zippers! Everything that's yellow!"). This last one's an excellent way to introduce novelty into your discounts to catch customers' eyes. It's your chance to illustrate to them that your catalog isn't just an algorithmic serving platter because, in today's individualistically driven world, intention breeds deeper interaction. 

In short: Don't just run your sales blitzes – craft them.

Another way Magento helps your customers feel seen is by enabling you to provide discounts based on distinct customer groups. In this way, for example, you could offer discounts specifically for military veterans, for teachers, etc. – and then pair those discount-groups with items you know those groups will love. This feature is great for niche sellers in both the B2B and B2C markets.

When it comes down to it, other development platforms' discount structures just aren't this flexible. With most programs, site admins might be able to go into the catalog, select a specific item, and define a promotional price, but only after surviving a waking logistical nightmare.

Magento allows you to create your own business rules for discounts. Magento, being the open-source platform, allows for an endless array of possibilities for constructing discount schemas. Even though Magento 2 boasts some remarkably robust built-in discounting functionalities, you're not limited by what you get "out of the box." Essentially, if you can think it – there's an extension in Magento's seriously-extensive library of vetted plug-ins that will let you do it.

For More Tech Demos, Tech Updates, And All The Latest Magento Developer News, CLICK HERE. We're Kensium. We Speak Magento.

Share this on
Written by
Rahul Gedupudi
Rahul applies his knowledge of technology systems and the industry to foster client relationships and identify new opportunities. When he's not working, Rahul enjoys endurance driving with the fastest cars he can get his hands on. He is a massive fan of German Formula 1 driver Michael Schumacher.
Recent Articles
Meta (Facebook) Account Recovery for Businesses
The Power of User-Generated Content: Boosting Engagement on Shopify Stores
Sustainable E-Commerce: How BigCommerce Supports Eco-Friendly Practices
The Rise of Composable Commerce: How Adobe Commerce is Leading the Charge
Text Link
Ecommerce
Text Link
Ecommerce