Skip to main content

Klaviyo Customer Properties & Events Reference

Written by Kris James

Klaviyo Events

Event properties are structured as the following:

{{ event|lookup:'VARIABLE NAME' }}

For example, with the Points Awarded event, if you wanted to display the name of the earning rule, you can do: {{ event|lookup:'Earning Rule' }}. This returns a value such as Made a purchase or Follow on Instagram.

Points Awarded

Fired when a customer earns points through purchases, actions, or other earning rules.

Profile: Customer's email

Property

Tag

Description

Points Awarded

{{ event|lookup:'Points Awarded'|default:'0' }}

Number of points earned

Earning Rule

{{ event|lookup:'Earning Rule' }}

Name of the earning rule (or "Manual")

Status

{{ event|lookup:'Status' }}

Status of the earning (e.g. approved)

Order Number

{{ event|lookup:'Order Number' }}

Shopify order number, if points were earned from a purchase

Multiplier bonus campaign properties

The three properties below are only included when a multiplier bonus campaign boosted the purchase (for example, double points). The multiplied total is already in Points Awarded above; these just describe the boost. They are not present on a normal earning. Tiered bonus campaigns use the separate Bonus Points Awarded event instead.

Property

Tag

Description

Bonus Campaign

{{ event|lookup:'Bonus Campaign' }}

Name of the multiplier bonus campaign that boosted these points

Bonus Multiplier

{{ event|lookup:'Bonus Multiplier'|default:'0' }}

The multiplier applied, e.g. 2 for double points

Bonus Points

{{ event|lookup:'Bonus Points'|default:'0' }}

The extra points contributed by the campaign (the amount earned above the standard rate)


Bonus Points Awarded

Tiered bonus campaigns only.

This event fires for the flat, per-order bonus from a tiered campaign (for example, "Spend $1,000, earn 200 bonus points"). Multiplier campaigns do not use this event. Their boost is folded into the Points Awarded event above.

This bonus is a separate award from the standard purchase points, so it has its own event and can power a dedicated bonus reward flow without affecting your Points Awarded flow.

Profile: Customer's email

Property

Tag

Description

Bonus Points

{{ event|lookup:'Bonus Points'|default:'0' }}

Number of flat bonus points awarded

Campaign Name

{{ event|lookup:'Campaign Name' }}

Name of the bonus campaign

Qualifying Spend

{{ event|lookup:'Qualifying Spend'|default:'0' }}

The order spend that counted toward the threshold (item subtotal, excluding shipping and taxes)

Spend Threshold

{{ event|lookup:'Spend Threshold'|default:'0' }}

The spend threshold the customer reached to earn this bonus

Status

{{ event|lookup:'Status' }}

Status of the bonus: APPROVED (credited now) or PENDING (held until your approval window passes, matching the purchase points)

Order Number

{{ event|lookup:'Order Number' }}

Shopify order number that earned the bonus


Reward Redeemed

Fired when a customer redeems their points for a reward or discount.

Profile: Customer's email

Property

Tag

Description

Reward Name

{{ event|lookup:'Reward Name' }}

Name of the reward redeemed

Points Spent

{{ event|lookup:'Points Spent'|default:'0' }}

Number of points spent

Discount Type

{{ event|lookup:'Discount Type' }}

Type of discount (e.g. percentage, fixed)

Discount Code

{{ event|lookup:'Discount Code' }}

The discount code for the reward


VIP Tier Changed

Fired when a customer moves up or down VIP tiers based on their lifetime points.

Profile: Customer's email

Property

Tag

Description

New Tier Name

{{ event|lookup:'New Tier Name' }}

Name of the tier the customer moved to (e.g. Gold)

Previous Tier Name

{{ event|lookup:'Previous Tier Name' }}

Name of the previous tier, if applicable


Referral Invite Sent

Fired when an advocate sends a referral email invite to a friend.

Profile: Advocate's email

Property

Tag

Description

Recipient Email

{{ event|lookup:'Recipient Email' }}

Email address of the invited friend

Campaign Name

{{ event|lookup:'Campaign Name' }}

Name of the referral campaign

Advocate Name

{{ event|lookup:'Advocate Name' }}

Name of the advocate (or "A friend" if not provided)

Subject

{{ event|lookup:'Subject' }}

Email subject line used for the invite

Personal Message

{{ event|lookup:'Personal Message' }}

Custom message written by the advocate

Referral URL

{{ event|lookup:'Referral URL' }}

The referral link sent to the friend

Shop Name

{{ event|lookup:'Shop Name' }}

Name of the Shopify store

Shop Domain

{{ event|lookup:'Shop Domain' }}

Domain of the Shopify store

Channel

{{ event|lookup:'Channel' }}

Always email


Referral Claimed

Fired when a friend claims their referral discount code.

Profile: Friend's email

Property

Tag

Description

Discount Code

{{ event|lookup:'Discount Code' }}

The discount code generated for the friend

Discount Type

{{ event|lookup:'Discount Type' }}

Type of discount (e.g. percentage, fixed, free-shipping, free-product)

Discount Amount

{{ event|lookup:'Discount Amount'|default:'0' }}

The discount value (e.g. 10 for 10% off, or 5 for $5 off)

Campaign Name

{{ event|lookup:'Campaign Name' }}

Name of the referral campaign

Reward Description

{{ event|lookup:'Reward Description' }}

Readable reward (e.g. "10% off", "$5 off", "free shipping")

Advocate Email

{{ event|lookup:'Advocate Email' }}

Email of the advocate who referred the friend, if known

Advocate Name

{{ event|lookup:'Advocate Name' }}

Name of the advocate, if known

Shop Name

{{ event|lookup:'Shop Name' }}

Name of the Shopify store

Shop Domain

{{ event|lookup:'Shop Domain' }}

Domain of the Shopify store


Referral Reward Earned

Fired when an advocate earns their reward after their referred friend completes a purchase.

Profile: Advocate's email

Property

Tag

Description

Friend Email

{{ event|lookup:'Friend Email' }}

Email of the friend whose purchase triggered the reward

Discount Code

{{ event|lookup:'Discount Code' }}

The advocate's reward discount code

Discount Type

{{ event|lookup:'Discount Type' }}

Type of discount (e.g. percentage, fixed, free-shipping, free-product)

Discount Amount

{{ event|lookup:'Discount Amount'|default:'0' }}

The discount value (e.g. 10 for 10% off, or 5 for $5 off)

Reward Description

{{ event|lookup:'Reward Description' }}

Readable reward (e.g. "10% off", "$5 off", "free shipping")

Campaign Name

{{ event|lookup:'Campaign Name' }}

Name of the referral campaign

Shop Name

{{ event|lookup:'Shop Name' }}

Name of the Shopify store

Shop Domain

{{ event|lookup:'Shop Domain' }}

Domain of the Shopify store


Points Expiry Soon

Fired when a customer has loyalty points expiring within the next 7 days. This event is triggered once per customer per 7-day window — multiple earning rules expiring on different days are aggregated into a single event to prevent duplicate notifications.

This event is OFF by default. Merchants must enable it in Settings > Integrations > Klaviyo before it will fire.

Profile: Customer's email

Property

Tag

Description

Points Expiring

{{ event|lookup:'Points Expiring'|default:'0' }}

Total points expiring within the next 7 days

Current Points

{{ event|lookup:'Current Points'|default:'0' }}

Customer's current point balance when the event fires

Days Until Expiry

{{ event|lookup:'Days Until Expiry'|default:'0' }}

Days until the earliest expiring points (e.g. 3 means points expire in 3 days)

Customer Name

{{ event|lookup:'Customer Name' }}

Customer's first name (or "there" if not set)


Gift Reminder

Fired by the daily gift reminders cron when a customer's gift recipient has an upcoming occasion matching one of the configured reminder intervals (e.g. 30 days, 14 days, 7 days before).

Each reminder includes a unique discount code — created on the first reminder and reused on follow-ups.

Merchants must enable it in Settings > Integrations > Klaviyo before it will fire.

Profile: Customer's email

Property

Tag

Description

Recipient Name

{{ event|lookup:'Recipient Name' }}

Name of the gift recipient (e.g. "Mom")

Relationship

{{ event|lookup:'Relationship' }}

How they're related (e.g. "Mother", "Friend")

Occasion Type

{{ event|lookup:'Occasion Type' }}

birthday, anniversary, or other

Occasion Date

{{ event|lookup:'Occasion Date' }}

Date in MM/DD format (e.g. "03/15")

Occasion Month

{{ event|lookup:'Occasion Month' }}

Month as a number (1-12)

Occasion Day

{{ event|lookup:'Occasion Day' }}

Day as a number (1-31)

Days Until Occasion

{{ event|lookup:'Days Until Occasion'|default:'0' }}

How many days until the occasion

Reminder Number

{{ event|lookup:'Reminder Number'|default:'0' }}

Which reminder this is (1, 2, or 3)

Discount Code

{{ event|lookup:'Discount Code' }}

Unique discount code for this recipient

Customer Name

{{ event|lookup:'Customer Name' }}

Customer's first name (or "there" if not set)

Shop Domain

{{ event|lookup:'Shop Domain' }}

The store's public domain

Suggested flow setup

  1. In Klaviyo, go to Flows > Create Flow > Create from Scratch

  2. Set the trigger to Metric > Points Expiry Soon

  3. Add a Time Delay if desired (e.g. no delay, or a short delay to batch)

  4. Add an Email action with your expiry reminder template

  5. Use the event properties above as dynamic variables in your email template

Example subject line

{{ event.Customer Name }}, your {{ event.Points Expiring }} points expire in {{ event.Days Until Expiry }} days!


Birthday

Fired when a customer earns birthday points via the birthday earning rule.

This event is OFF by default. Merchants must enable it in Settings > Integrations > Klaviyo before it will fire.

Profile: Customer's email

Property

Tag

Description

Customer Name

{{ event|lookup:'Customer Name' }}

Customer's first name (or "Valued Customer" if not set)

Shop Name

{{ event|lookup:'Shop Name' }}

Name of the Shopify store

Points Earned

{{ event|lookup:'Points Earned'|default:'0' }}

Number of birthday points awarded today

Current Points

{{ event|lookup:'Current Points'|default:'0' }}

Customer's updated total point balance after the award


Mage Welcome

Fired once when a customer joins the loyalty program. Use this to trigger a welcome email or onboarding flow.

Profile: Customer's email

Property

Tag

Description

Current Points

{{ event|lookup:'Current Points'|default:'0' }}

Customer's point balance when they joined (usually 0, or any signup bonus you've configured)


Cashback Credited

Fired when a customer earns cashback that is paid out as Shopify store credit.

This event is OFF by default. Merchants must enable it in Settings > Integrations > Klaviyo before it will fire.

Profile: Customer's email

Property

Tag

Description

Cashback Amount

{{ event|lookup:'Cashback Amount'|default:'0' }}

The cashback value as a number (e.g. 5.5)

Cashback Amount Formatted

{{ event|lookup:'Cashback Amount Formatted' }}

The cashback value with its currency symbol (e.g. $5.50)

Currency

{{ event|lookup:'Currency' }}

Currency code (e.g. USD)

Offer Name

{{ event|lookup:'Offer Name' }}

Name of the cashback offer that awarded this

Order Number

{{ event|lookup:'Order Number' }}

Shopify order number that earned the cashback

Reward Method

{{ event|lookup:'Reward Method' }}

Always store_credit for this event

Expires At

{{ event|lookup:'Expires At' }}

When the cashback expires, in ISO format. Only present when the offer has an expiry


Cashback Code Issued

Fired when a customer earns cashback that is issued as a single-use discount code. It also fires when a code is reissued at a lower value after a partial refund, carrying the new code.

This event is OFF by default. Merchants must enable it in Settings > Integrations > Klaviyo before it will fire.

Profile: Customer's email

Property

Tag

Description

Discount Code

{{ event|lookup:'Discount Code' }}

The single-use discount code awarded to the customer

Cashback Amount

{{ event|lookup:'Cashback Amount'|default:'0' }}

The cashback value as a number (e.g. 5.5)

Cashback Amount Formatted

{{ event|lookup:'Cashback Amount Formatted' }}

The cashback value with its currency symbol (e.g. $5.50)

Currency

{{ event|lookup:'Currency' }}

Currency code (e.g. USD)

Offer Name

{{ event|lookup:'Offer Name' }}

Name of the cashback offer that awarded this

Order Number

{{ event|lookup:'Order Number' }}

Shopify order number that earned the cashback

Reward Method

{{ event|lookup:'Reward Method' }}

Always discount_code for this event

Expires At

{{ event|lookup:'Expires At' }}

When the code expires, in ISO format. Only present when the offer has an expiry


Klaviyo Customer Properties

In addition to events, Mage syncs the following properties to each Klaviyo profile. These can be used in segments, conditional splits, and email personalization across any flow or campaign.

Property

Example Value

Description

Mage Loyalty Points Balance

100

Customer's current spendable points

Mage Points as Cash Balance

$17.50

Cash value of the customer's current points balance. (Flexible redemption must be enabled)

Mage Loyalty Lifetime Points

500

Total points ever earned

Mage Loyalty Redeemed Points

400

Total points spent on rewards

Mage Loyalty VIP Tier Name

Gold

Current VIP tier (e.g. Bronze, Silver, Gold)

Mage Loyalty Date of Birth

September 17, 1990

Customer's date of birth, if provided

Mage Loyalty Enrolled Date

January 1, 2025

When the customer joined the loyalty program


FAQ

Why are points not displaying in my emails?

Klaviyo treats 0 as empty, so any property with a value of 0 will display as a blank space in your email. Adding |default:'0' to a tag tells Klaviyo to display 0 instead of a blank when the value is zero. We've included it on the numeric tags above so they always render a value.

Did this answer your question?