Skip to main content

Rewarding customers for every Nth purchase

After you have created a loyalty program, you can define rules which allow you to use it as a counter. For example, you can use a loyalty program to count the number of purchases made by a customer.

Let's set up a discount campaign. The objective is to reward customers with a 20% discount for every fifth purchase they make. So, if a customer spends $200 on their tenth purchase, they are rewarded with a discount of $40.

To do this, let's create:

  1. A profile-based loyalty program to count the number of purchases per customer.
    important

    Before you create a loyalty program, enable the loyalty feature for your campaign.

  2. A promotion rule to use the loyalty program as a counter.
  3. A promotion rule to verify if the customer purchase count is a multiple of 5 and to award a 20% discount on the session total.

Using a loyalty program as a counter

In a standard campaign, let's create a rule to count the number of purchases made by a customer. To do this, we count the number of closed sessions.

A session is closed when the customer completes the payment and places the order. For each purchase the customer makes, we give them 1 point in the loyalty program.

Let's name the rule Count number of purchases. It has 1 condition and 1 effect.

Rule 1: Condition

Check for event types and custom event values:

  • Event type is Customer Session Closing.

Rule 1: Effects

Add loyalty points:

  • We select the loyalty program we have created. Let's imagine that it is called Counter Program.
  • Recipient is Current Customer.
  • Reason is Count each purchase.
  • Amount of points is 1.

Verifying purchase count and issuing a discount

Let's build a second rule to verify if the customer is making their 5th, 10th, 15th... Nth purchase. If they are, we issue a 20% discount on their session total.

Let's name the rule Verify purchase and issue 20% off. It has 2 conditions and 1 effect.

Rule 2: Conditions

  • Check attribute value:

    • Attribute is Current Balance (Counter Program).
    • Is equal to ROUND DOWN(Current Balance(Counter Program)/5)*5.
  • Check attribute value:

    • Attribute is Current Balance (Counter Program).
    • Is greater than 0.

Rule 2: Effect

Discount session total:

  • Discount name is 20% off.
  • Discount value is [Session.Total]*20%.