Skip to main content

Klaviyo integration

Connect Klaviyo to Rivo to leverage loyalty and referral data for more personalized customer emails

Written by James Dohm
Updated over a week ago

Klaviyo and Rivo integration explained


Our integration facilitates the dynamic communication between Rivo and Klaviyo to supercharge your marketing efforts. By passing loyalty and referral data to Klaviyo, you can create targeted, personalized, and effective emails that engage, convert, and retain customers.


✨ The basic Klaviyo integration is available on all paid plans. See pricing →




What does the integration do?

  • Add Rivo loyalty and referral properties to customer profiles on Klaviyo

  • Use Rivo events to trigger a flow when a customer takes an action within your programs

  • View the Rivo events completed by the customers on their profile page

  • Enhance program emails sent from Klaviyo with customer and event data

  • Create customer segments based on any Rivo property.




How to connect Rivo with Klaviyo

  1. From your Rivo Dashboard, go to Integrations

  2. In the Email & SMS Marketing section, click on Klaviyo

  3. On the integration page, click Connect with OAuth

  4. In a new tab, you will be asked to authorize Rivo to connect with your Klaviyo account. Review the permissions and click Allow to continue

  5. Recommended: Enable the loyalty and referral events and click Save

  6. Make sure you turn the integration to ON

  7. Sync customers to start sending the data to existing customers.


💡 Tip: If you're logged out of Klaviyo, you'll need to sign in before authorizing the integration. Make sure you're using the correct account.


📝 Note: Starting June 17, 2024, the Rivo events you enable will be automatically added to the Klaviyo account upon the integration setup.




Using Rivo events to trigger your flows


✨ Rivo events are available for shops with Klaviyo event sync enabled.


Create a metric-triggered flow in Klaviyo that starts when a customer takes an action within your program.

  1. From your Klaviyo account, go to Flows

  2. Click Create flow > Build your own

  3. Enter the name of your new flow in the pop-up. Optionally, add the tags to organize your flows and click Create flow

  4. The flow builder will ask you to select a trigger. Click Your metrics > Rivo

  5. Search for the preferred Rivo event on the list. In this example, we will add ‘Rivo Points Earned’

  6. Optional: Add filters to the trigger if you want to be more specific about when the flow should start (e.g. trigger_name equals 'Placed an order')

  7. Click Save and confirm your trigger selection by clicking Confirm and save

  8. Drag and drop your preferred actions, timing, and logic boxes to the flow. To learn how to customize your program emails, go to Using Rivo data in a Klaviyo email

  9. Once you finish with the flow, click Review and turn on to set your flow live or schedule it.


Flow triggers & filters

The following Rivo events can be used as flow triggers in Klaviyo:

  • Rivo Advocate Signup

  • Rivo Birthday Captured

  • Rivo Bulk Gift Card Delivery

  • Rivo Cashback Earned Completed (Cashback Earned (Completed))

  • Rivo Cashback Earned Completed Reminder

  • Rivo Cashback Earned Pending (Cashback Earned (Pending))

  • Rivo Credits Earned

  • Rivo Customer Account Activated

  • Rivo Customer Birthday

  • Rivo Customer Moves Down A Tier

  • Rivo Customer Moves Up A Tier

  • Rivo Earning Transfer Completed

  • Rivo Loyalty Gift Processed

  • Rivo Membership Billing Skipped

  • Rivo Membership Canceled

  • Rivo Membership Paused

  • Rivo Membership Payment Failure

  • Rivo Membership Payment Success

  • Rivo Membership Pending Cancellation

  • Rivo Membership Renewal Notice

  • Rivo Membership Signup

  • Rivo Membership Successful Rebill

  • Rivo Notification Credits Expiry Last Chance

  • Rivo Notification Credits Expiry Warning

  • Rivo Notification Points Expiry Last Chance

  • Rivo Notification Points Expiry Warning

  • Rivo Notification Reward Expiry Last Chance

  • Rivo Notification Reward Expiry Warning

  • Rivo Points Earned

  • Rivo Product Added To Favorites

  • Rivo Referral Completed

  • Rivo Referral Friend Claim

  • Rivo Referral Invite Friend

  • Rivo Reward Redeemed

  • Rivo Virtual Gift Card Delivery

  • Rivo Virtual Gift Card Reminder

Use the event properties in the section below to create precise filters and personalized flow content.


📝 Note: Starting March 27, 2024, the Friend Claim event will be added to the friend's profile in Klaviyo.


Important considerations

  • Rivo events can be also used in the Conditional Split logic

  • Trigger filters are optional

  • To prevent flows from sending emails after manual point adjustments, add the filter trigger_name doesn't equal Manual to the ‘Rivo Points Earned’ trigger

  • If both the ‘Rivo Customer Birthday’ and ‘Points Earned’ events are enabled, ensure that you set up flows correctly to avoid sending duplicate emails from Klaviyo (e.g. add the filter trigger_name doesn't equal Customer birthday to the ‘Rivo Points Earned’ event)

  • Deactivate any Rivo email already set up within a Klaviyo flow to avoid double notifications.




Using Rivo data in a Klaviyo email


✨ Rivo event properties are available on the Plus plan only


You can use different variables to populate Rivo data in your emails. If you want to add properties about a customer , such as the points balance or tier name, use personalization tags.

  1. From the email template editor, double-click on a text block

  2. Click on Personalization

  3. Enter ‘Rivo’ to filter the options and select the property

  4. Optional: Set a default text if the value can’t be found for your customer property

  5. Click Insert.

On the other hand, if you want to recreate the Rivo notifications in Klaviyo and add information about the action that your customer has just completed in the program , such as the reward code or amount of points earned, use the event properties.

  1. From the email template editor, click on Preview & test

  2. Click on All properties to view the list

  3. Under Event properties , you’ll see the data available for the Rivo event

  4. Click on the event to copy the variable

  5. After viewing the success message, click Close and paste the variable you copied into the preferred text block.


📝 Note: While Rivo customer properties can be used interchangeably across flow and campaign emails, the event properties are only available if the flow trigger is a Rivo event.


Customer properties

Use profile properties in Klaviyo templates with this syntax: #{{ person|lookup:'Property Name' }}.

Tag

Example

##{{ person|lookup:"Rivo Date of Birth"|default:" " }}

1940-12-31

##{{ person|lookup:"Rivo Loyalty Status"|default:" " }}

member

##{{ person|lookup:"Rivo Points Balance"|default:"0" }}

100

##{{ person|lookup:"Rivo Store Credit Balance"|default:"0.00" }}

22.92

##{{ person|lookup:"Rivo Points as Cash Balance"|default:"$0" }}

$10.00

##{{ person|lookup:"Rivo Referral URL"|default:" " }}

##{{ person|lookup:"Rivo VIP Tier Name"|default:" " }}

Gold

##{{ person|lookup:"Rivo Membership Joined Date"|default:" " }}

2025-01-01

##{{ person|lookup:"Rivo Membership Last Joined Date"|default:" " }}

2025-09-15

##{{ person|lookup:"Rivo Membership Tier Name"|default:" " }}

VIP Club

##{{ person|lookup:"Rivo Membership Status"|default:" " }}

active

##{{ person|lookup:"Rivo Membership Pending Cancellation At"|default:" " }}

2026-02-01T12:00:00Z

##{{ person|lookup:"Rivo Membership Next Billing Date At"|default:" " }}

2026-12-31T00:00:00Z

##{{ person|lookup:"Rivo Store Credit Code"|default:" " }}

GFT-ABCD1234

##{{ person|lookup:"Birthday"|default:" " }}

1940-12-31


💡 Tip: Discover all date formats available on Date personalization in templates reference.


📝 Important Note: Use ##{{ person|lookup:"Rivo Points as Cash Balance"|default:"$0" }} to display your customer's points equivalent to cash balance.


Birthday Data Syncing

Rivo offers flexible options for syncing birthday data with Klaviyo:

  • Custom Property Name: Customize the name of the birthday property in Klaviyo (default is “Rivo Date of Birth”)

  • Format Options: Choose how birthday data is formatted in Klaviyo:

  • Month/Day Identifiers: Optionally sync the birthday month and day as separate properties

These settings can be configured in your Klaviyo integration settings.

Event properties

Use event properties in Klaviyo with this syntax: #{{ event.property_name }}.

Loyalty and referral events

  • Rivo Advocate Signup: referral_link

  • Rivo Birthday Captured: dob, captured_at

  • Rivo Credits Earned: trigger_name, earnings_amount, formatted_earnings_amount, next_vip_tier_threshold, needed_for_next_vip_tier, loyalty_card_code (when applicable), reward_expiration_date (when applicable)

  • Rivo Customer Account Activated: account_activated_at

  • Rivo Customer Birthday: earnings_amount

  • Rivo Customer Moves Down A Tier: vip_tier_name, next_vip_tier_threshold, needed_for_next_vip_tier, next_vip_tier_name

  • Rivo Customer Moves Up A Tier: vip_tier_name, next_vip_tier_threshold, needed_for_next_vip_tier, next_vip_tier_name

  • Rivo Notification Credits Expiry Last Chance: expiry_amount, formatted_expiry_amount, time_until_expiry, expiry_date, expiry_date_formatted

  • Rivo Notification Credits Expiry Warning: expiry_amount, formatted_expiry_amount, time_until_expiry, expiry_date, expiry_date_formatted

  • Rivo Notification Points Expiry Last Chance: time_until_expiry, expiry_date, expiry_date_formatted

  • Rivo Notification Points Expiry Warning: time_until_expiry, expiry_date, expiry_date_formatted

  • Rivo Notification Reward Expiry Last Chance: reward_name, time_until_expiry, expiry_date, expiry_date_formatted

  • Rivo Notification Reward Expiry Warning: reward_name, time_until_expiry, expiry_date, expiry_date_formatted

  • Rivo Points Earned: trigger_name, earnings_amount, next_vip_tier_threshold, needed_for_next_vip_tier

  • Rivo Referral Completed: friend_email, referrals_completed

  • Rivo Referral Friend Claim: friend_email, reward_code, reward_name, reward_tos

  • Rivo Referral Invite Friend: advocate_name, reward_name, friend_email

  • Rivo Reward Redeemed: reward_code, reward_name, reward_tos


Membership events

  • Rivo Membership Signup: signed_up_at, customer_id, membership_tier_id, membership_tier_name, membership_tier_price, membership_tier_billing_interval

  • Rivo Membership Canceled: cancelled_at, customer_id

  • Rivo Membership Pending Cancellation: queued_for_cancellation_at, customer_id

  • Rivo Membership Payment Failure: membership_tier_name, failure_at, attempt_number, completed_at

  • Rivo Membership Payment Success: membership_tier_name, succeeded_at, attempt_number, completed_at

  • Rivo Membership Renewal Notice: next_billing_date, membership_tier_name, renewal_date

  • Rivo Membership Successful Rebill: membership_tier_name, billing_interval, next_billing_date, attempt_number, completed_at

  • Rivo Membership Paused: membership_tier_name, paused_at

  • Rivo Membership Billing Skipped: membership_tier_name, skipped_at, new_billing_date


Gifting, cashback, and additional events

  • Rivo Loyalty Gift Processed: reward_name, reward_code, reward_tos, message

  • Rivo Virtual Gift Card Delivery: gift_card_code, gift_card_expires_on, gift_card_initial_value, gift_card_note, gift_card_recipient_first_name, gift_card_recipient_full_name, gift_card_sender_first_name, gift_card_sender_full_name

  • Rivo Virtual Gift Card Reminder: gift_card_code, gift_card_expires_on, gift_card_initial_value, gift_card_note, gift_card_recipient_first_name, gift_card_recipient_full_name, gift_card_sender_first_name, gift_card_sender_full_name

  • Rivo Bulk Gift Card Delivery: gift_card_amount, gift_card_code, gift_card_bulk_campaign_id, gift_card_bulk_campaign_name, gift_card_note, gift_card_expiration_date (when applicable)

  • Rivo Product Added To Favorites: product_id, product_name, product_url, product_image_url

  • Rivo Cashback Earned Pending (Cashback Earned (Pending)): trigger_name, earnings_amount, formatted_earnings_amount

  • Rivo Cashback Earned Completed (Cashback Earned (Completed)): trigger_name, earnings_amount, formatted_earnings_amount, expiry_date, expiry_date_formatted

  • Rivo Cashback Earned Completed Reminder: trigger_name, earnings_amount, formatted_earnings_amount, expiry_date, expiry_date_formatted

  • Rivo Earning Transfer Completed: credits_amount, formatted_credits_amount, sender_name, sender_email, message, completed_at


Important considerations

  • Rivo custom properties about a customer can be used in your campaign and flow emails

  • Rivo event properties are based on your customer behavior, so they can only be used in a flow email

  • To activate the Rivo Points as Cash Balance property, you must set the ‘Points to Cash Conversion Rate’ in your General Settings.

  • The Rivo notification ‘Invite Friend’ sends an email directly to the referred friend. However, the Klaviyo event ‘Referral Invite Friend’ adds the activity to the advocate’s profile and includes information about the referred friend and their reward to claim. You won’t be able to email referred friends with the referral links from Klaviyo

  • The Smart Sending feature can skip emails sent through Klaviyo if they’re delivered within a short period to the same customer. Carefully review the wait time, or turn the feature off.




Viewing Rivo events in a customer profile


✨ Rivo events are available for shops with Klaviyo event sync enabled.


Every customer profile in Klaviyo has a timeline of actions performed by the customer, including the Rivo events.

  1. From your Klaviyo account, search for a customer by email and open the profile

  2. On the right side of the profile page, you’ll see the timeline of events. Click on All events and enter ‘Rivo’ in the dropdown menu to filter the events

  3. Select the event(s) you want to view

  4. Optional: Filter by dates.


💡 Pro Tip: Use Klaviyo Analytics to understand how the event data evolves over time.




Creating segments based on Rivo data

Group your customers based on their Rivo properties and target your emails.

  1. From your Klaviyo account, go to Audience > Lists & segments

  2. Click on Create New > Create segment

  3. Give it a name, for example, ‘Rivo points over 100’

  4. Click Select a condition and then Properties about someone

  5. Click on the default property and search for ‘Rivo’ to view all the options. Select your preferred condition

  6. Optional: Add more conditions or set the tag to add to customers who enter the segment

  7. Click Create segment.




Common questions

What is the difference between customer properties and event properties?

  • You can add customer properties to any email through personalization tags. Event properties are variables that you copy and paste into your flow emails depending on the flow trigger selected

  • Personalization tags are for populating email content with Rivo data, such as the current tier level, points balance, etc

  • Event properties are used to populate email content with flow-trigger data.

Why did my customer receive two emails after completing an action?

Disable any Rivo email notifications that you’ve already configured within a Klaviyo flow. This prevents duplicate notifications from being sent to customers from both platforms.

Why do I see 1940 in my customer’s date of birth?

Rivo does not request the year of birth of your customers, but as Klaviyo supports dates formatted in YYYY-MM-DD, we fill in a fictional year so that you can filter between dates. You can change the date format in your emails.

Can Rivo import customers into Klaviyo?
Rivo syncs with your existing customer data in Klaviyo by matching users based on email. If a customer exists in your Rivo list but not your Klaviyo list, Rivo cannot create a profile for them in Klaviyo.

Does Rivo send guest Loyalty data?

Yes. Rivo passes the Loyalty data of both guests and members to Klaviyo.

What emails can be sent through Klaviyo, and which are exclusive to Rivo?

Klaviyo can be used for event-triggered flows based on the Rivo metrics listed in this article (loyalty, referrals, memberships, gift cards, cashback, and more).
Some Rivo-native notifications remain platform-managed. If you rebuild a notification in Klaviyo, disable the matching Rivo notification to avoid duplicate sends.

Did this answer your question?