Menu
Feedback
Start here
Tutorials
Developer portal

Known Issues
Support Rules
Troubleshooting

Frequently Asked Questions
Announcements
Tutorials
Tutorials
Explore in-depth tutorials for operating your VTEX store.
Tutorials
Promotions & taxes
Promotions
How promotion competition works
How promotion competition works
7 min read

The Promotions module uses a specific logic to determine which promotion should be applied to a purchase, similar to how the Checkout selects a seller to fulfill the order. This logic is called promotion competition.

Promotion competition occurs in the following situations:

  • Promotions with the same type of discount.
  • More than one promotion applied to the same item.
  • Promotions not configured to allow combined promotions.

To understand how the selection of the promotion that will be applied works, it's important to understand some concepts used in the Promotions module.

Promotion effects

The promotion effects are related to the benefit the promotion offers. There are four types of benefits:

Promotion sorting rule

Sorting is the process that defines in which order promotions will be applied to the cart. This is important to understand the final price of the items in the shopping cart. The sorting rule is based on two criteria:

Sorting by promotion and discount type

The promotions applied to the cart respect the following order:

  1. Percentage
  2. Nominal
  3. Maximum price
  4. Buy Together (not a regular promotion)
  5. Percentage shipping
  6. Nominal shipping
  7. Gift
  8. Formula

Sorting by discount amount

Promotions of the same type applied to the cart are compared by their discount amount. At this point, the Promotions module always tries to apply the most advantageous promotion for the buyer.

For gift promotions, the sorting is by the highest number of gifts granted by the promotion.

Example:

  • Promotion 1: 30% discount on the product price.
  • Promotion 2: 50% discount.

Priority is given to the promotion that grants the highest discount, i.e., the cart will apply Promotion 2 and then Promotion 1.

The Promotion 1 will be applied to the product price already discounted by Promotion 2.

Combined promotions

Promotions that are configured to Apply with other promotions in this field will always be applied if their conditions are met, regardless of their type.

However, they will be applied to the amount that has already been discounted by the promotion that won over non-combined promotions. The order of selected promotions will follow the sorting by type and value, as described in item 1.

Therefore, promotions will be applied in the following order:

{"base64":"  ","img":{"width":381,"height":334,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":8886,"url":"https://raw.githubusercontent.com/vtexdocs/help-center-content/refs/heads/main/docs/en/tutorials/Promotions%20&%20taxes/Promotions/how-promotion-competition-works_1.png"}}

Orders originating from the Marketplace (provided by the store) or Fulfillment (delivered by the store) do not support combined promotions. This is because the use of promotions is restricted to specific types on both VTEX and external marketplaces.

Promotion competition strategies

After understanding how promotions are sorted and applied, you will be able to comprehend how non-combined promotions compete with each other.

The selection of each promotion only considers promotions of the same discount type (as described in Promotion effects) that apply to at least one common product.

Promotions that have different discount types, or that apply to different products, do not compete with each other. So they are automatically applied together.

Here are the two strategies for promotion competition:

By default, all accounts follow the competition by scenariostrategy. In case the competition by item strategy is better suited for your business needs, please open a ticket with our support team and request the change.

Competition by scenario

The competition by scenario follows the logic of grouping promotions that do not compete with each other on the same products. With each group created, a comparison is made to determine whether the group or an individual promotion offers a greater advantage to the customer.

The one that gives the best discount will be applied to the cart. See the examples below:

Example 1

James is planning to purchase a t-shirt priced at $10, with an additional $4 for shipping. Up to five promotions can be applied to the order. All applicable promotions were configured in the Apply with other promotions field as non-combined, except for the first one.

combined promotionsNon-combined promotions
10% offMaximum shipping cost of $20
X80% off on the shipping cost
XNominal discount of $5
XBuy the shirt and get a gift

The cart will show a final price of $4.50 for the t-shirt and $0.80 for shipping. The promotion system starts by applying the promotion competition logic:

  • T-shirt: $10.

    • Receives a nominal discount of $5. New price: $5.
  • Shipping cost: $4.

    • Receives a discount of 80%. New price: $0.80.
    • The maximum shipping cost of $20 is applied but is not valid as the shipping cost is already below that.

Then, combined promotions are applied:

  • T-shirt from $10 now for $5.
    • Receives a percentage discount of 10%. New price: $4.50.

Therefore, the final amounts for James' purchase are:

  • T-shirt: $4.50.
  • Shipping cost: $0.80.
  • Gift for buying the t-shirt.

Example 2

Linda created a cart with 1 t-shirt and 1 pair of shoes. These items are part of collections:

CollectionItemsPrices
1T-shirt$ 10
1Shoes$ 50
2T-shirt$ 10
  • Promotions:
    1. 10% off on the first collection. Configured as non-combined in the Apply with other promotions field.
    2. 25% off on the second collection. Configured as non-combined in the Apply with other promotions field.
    3. 5% off on the product price. Configured as combined in the Apply with other promotions field. Applies to all the products in the shopping cart.

As the first two promotions apply to the t-shirt and are not marked as combined, they compete with each other.

When promotions compete, the Promotions module will choose the promotion that provides the best discount for the customer. See below for an example of competition by scenario.

Scenario 1: Applying Promotion 1 of 10%
ItemsPromotions appliedAmounts
T-shirtPromotion 1 and Promotion 3$8.55
ShoesPromotion 1 and Promotion 3$42.75

The t-shirt would be priced at $8.55 with a discount of 10% from Promotion 1 and 5% on the product price. The pair of shoes would be priced at $42.75 with a discount of 10% from Promotion 1 and a discount of 5% on the product price.

The order total would be $51.30.

Scenario 2: Applying Promotion 2 of 25%
ItemsPromotions appliedAmounts
T-shirtPromotion 2 and Promotion 3$7.12
ShoesPromotion 2 and Promotion 3$47.50

The t-shirt would be priced at $7.12 with a discount of 25% from Promotion 2 and 5% on the product price. The pair of shoes would be priced at $47.50, considering only the 5% discount on the product price, as it is not in the Promotion 2 collection.

In this scenario, the order total would be $54.62.

In short, since in scenario 1 the order total is cheaper for the customer, it fits the premise of offering the best possible discount. So VTEX chooses to apply Promotion 1 of 10% for both items. This is because promotions 1 and 2 could not be applied together since they are non-combined.

Competition by item

The Promotions module can also consider the highest discount for the customer on each item in the cart. To do this, the system considers the promotions that can be applied to an item and selects the best among them, rather than considering a combination of promotions at the cart level.

In the competition by item, this is what would happen following the data from the previous example:

CollectionItemsAmounts
1T-shirt$ 10
1Shoes$ 50
  • Promotions:
    1. 10% off on the first collection. Configured as non-combined in the Apply with other promotions field.
    2. 25% off on the second collection. Configured as non-combined in the Apply with other promotions field.
    3. 5% off on the product price. Configured as combined in the Apply with other promotions field. Applies to all the products in the shopping cart.

Applying the promotion, the amounts would be:

ItemsPromotions appliedAmounts
T-shirtPromotion 2$7.50
ShoesPromotion 1$45

The t-shirt would be priced at $7.50 with a discount of 25% from Promotion 2. The pair of shoes would be priced at $45 with a discount of 10% from Promotion 1.

In this scenario, the order total would be $52.50.

This option would offer a smaller discount to the customer than the selection from the competition by scenario. Therefore, this configuration depends on the business goals set by the store.

In case the competition by item strategy is better suited for your business needs, please open a ticket with our support team and request the change.

Contributors
2
Photo of the contributor
Photo of the contributor
+ 2 contributors
Was this helpful?
Yes
No
Suggest Edits (GitHub)
Contributors
2
Photo of the contributor
Photo of the contributor
+ 2 contributors
On this page
Still got questions?
Ask the community
Find solutions and share ideas in the VTEX community.
Join our community
Request support from VTEX
For personalized assistance, contact our experts.
Open a support ticket
GithubDeveloper portalCommunityFeedback