Klaviyo and Rivo integration explained
Our integration facilitates 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 standard Klaviyo integration is available on all paid plans
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.
Integration setup
From your Rivo Dashboard, go to Integrations
In the Email & SMS Marketing section, click on Klaviyo
On the integration page, click "Connect with OAuth"
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
Recommended: If Rivo events are available on your plan, enable your preferred events in the Custom Events Trigger section and click "Save"
Make sure you turn the integration to
ONSync customers to start sending the data to existing customers.
📝 Note: Make sure you're logged in to the correct Klaviyo account before authorizing the integration.
💡 Good to know: When you connect or update Klaviyo, Rivo sends sample events so Klaviyo can recognize Rivo metrics. Future events still depend on your integration being ON and the matching event toggles being enabled.
Rivo profile properties
Rivo syncs a set of standard properties to each customer's Klaviyo profile, including their points and credits balance, VIP tier, referral link, and more. Use these properties to create targeted segments, personalize and branch flows, and add dynamic customer data directly to your emails.
The properties available depend on the Rivo programs and settings you have enabled. Loyalty and referral properties are available as soon as Klaviyo is connected, while other properties become available when the corresponding programs or settings are enabled.
Custom property name | Example | Prerequisites |
|
| None |
|
| None |
|
| None |
|
| None |
|
| None |
|
| None – but value will show empty if you don't have VIP Tiers enabled |
|
| VIP Tiers enabled. Ask your CSM to switch this property on |
|
| For credit-based loyalty programs with Credits Expiry enabled. Ask your CSM to switch this property on |
|
| For credit-based loyalty programs with Credits Expiry enabled. Ask your CSM to switch this property on |
|
| Memberships enabled |
|
| Memberships enabled |
|
| Memberships enabled |
|
| Memberships enabled |
|
| Memberships enabled |
|
| Memberships enabled |
|
| VIP Tiers enabled. Ask your CSM to switch this property on |
|
| For point-based loyalty programs with points-to-cash conversion rate set under Customer Facing UI Settings (Settings > General) |
|
| For point-based loyalty programs with Points Expiry enabled. Ask your CSM to switch this property on |
|
| For point-based loyalty programs with Points Expiry enabled. Ask your CSM to switch this property on |
|
| For point-based loyalty programs. Ask your CSM to switch this property on |
|
| For stores with store credit issued in gift cards |
|
| An active preference question. Ask your CSM to switch this property on |
💡 Tip: To reference a customer's custom property in an email, use a lookup with a fallback so customers who don't have the property yet don't see a gap:
{{ person|lookup:"Rivo Points Balance"|default:"" }}. Read more in Using Rivo data in Klaviyo emails
Showing Rivo Preferences as profile properties
You can now access your customers' preferences as profile properties in Klaviyo and use them to build segments, personalize flows, and create more relevant emails.
Rivo events
✨ Rivo events are available on the Plus plan only
Rivo sends events to Klaviyo as metrics – a record of something a customer did, at the moment they did it. Where profile properties tell you what's true right now, events tell you what happened, which makes them what you build flows on: a customer earns points, moves up a VIP tier, or signs up for a membership, and Klaviyo picks it up.
The events available can vary depending on your program setup and account configuration. Some events are available by default, while others are only triggered when specific programs are enabled.
List of events & properties
List of events & properties
Loyalty (Points, Credits, VIP Tiers)
Event name | Event properties |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Referrals
Event name | Event properties |
|
|
|
|
|
|
|
|
Accounts
Event name | Event properties |
|
|
Memberships
Event name | Event properties |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gift cards
Event name | Event properties |
|
|
|
|
|
|
Cashback
Event name | Event properties |
|
|
|
|
Using events to trigger Klaviyo flows
Create a metric-triggered flow in Klaviyo to automatically engage customers when they take a specific action in your Rivo program.
From your Klaviyo account, go to Flows
Click "Create flow" > "Build your own"
Enter the Name of your new flow in the pop-up
Optional: Add the tags to organize your flows and click "Create flow"
The flow builder will ask you to select a trigger. Click "Your metrics" > "Rivo"
Search for the preferred Rivo event on the list. In this example, we will add Rivo Points Earned
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')Click "Save" and confirm your trigger selection by clicking "Confirm and save"
Drag and drop your preferred actions, timing, and logic boxes to the flow
Once you finish with the flow, click "Review and turn on" to set your flow live or schedule it.
📝 Important Note: Deactivate any native Rivo email already set up within a Klaviyo flow to avoid double notifications.
Viewing events in a Klaviyo profile
Each customer profile in Klaviyo includes a timeline of customer activity, including events triggered by actions taken in Rivo.
From your Klaviyo account, search for a customer by email and open the profile
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
Select the event(s) you want to view
Optional: Filter by dates.
💡 Pro Tip: Use Klaviyo Analytics to track how your event data changes over time and identify trends in customer activity.
Important considerations
Friend Claim event – Since March 27, 2024, the event has been added to the friend's profile in Klaviyo. Previously, it was sent to the advocate's profile instead
Flow settings – Rivo events can also be used in the Conditional Split logics
Customer Birthday event – If both the "Rivo Customer Birthday and Rivo 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 birthdayto the Rivo Points Earned flow)Invite Friend event – The Rivo email "Invite Friend" sends an email directly to the referred friend, while the Klaviyo event "Rivo 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.
Using Rivo data in emails
Rivo profile properties can be used across both flow and campaign emails. Rivo event properties, however, are only available in emails within a flow triggered by a Rivo event.
If you want to recreate Rivo notifications in Klaviyo and include details about the action a customer has just taken in your program, such as a reward code or the number of points earned, use event properties.
Adding profile properties
From the Klaviyo template builder, select a text block that you would like to add personalization to
Click the "Edit text" button
In the upper left, click "Add personalization" to open the searchable dropdown menu with a list of properties
Type Rivo: to find all the preference questions available in your shop and click one option
Recommended: Enter the default text in case a customer hasn't answered this question yet
Click "Insert".
List of personalization tags
List of personalization tags
Use this list as a reference when manually adding personalization tags. Follow the format shown for each preference to insert the corresponding value into your Klaviyo emails.
{{ person|lookup:"Rivo Date of Birth"|default:"" }}{{ person|lookup:"Rivo Loyalty Status"|default:"" }}{{ person|lookup:"Rivo Points Balance"|default:"" }}{{ person|lookup:"Rivo Referral URL"|default:"" }}{{ person|lookup:"Rivo Store Credit Balance"|default:"" }}{{ person|lookup:"Rivo Amount Needed for Next VIP Tier"|default:"" }}{{ person|lookup:"Rivo Credits Next Expiry Amount"|default:"" }}{{ person|lookup:"Rivo Credits Next Expiry Date"|default:"" }}{{ person|lookup:"Rivo Membership Joined Date"|default:"" }}{{ person|lookup:"Rivo Membership Last Joined Date"|default:"" }}{{ person|lookup:"Rivo Membership Next Billing Date At"|default:"" }}{{ person|lookup:"Rivo Membership Pending Cancellation At"|default:"" }}{{ person|lookup:"Rivo Membership Status"|default:"" }}{{ person|lookup:"Rivo Membership Tier Name"|default:"" }}{{ person|lookup:"Rivo Next VIP Tier Name"|default:"" }}{{ person|lookup:"Rivo Points as Cash Balance"|default:"" }}{{ person|lookup:"Rivo Points Next Expiry Amount"|default:"" }}{{ person|lookup:"Rivo Points Next Expiry Date"|default:"" }}{{ person|lookup:"Rivo Points to Next Reward"|default:"" }}{{ person|lookup:"Rivo Store Credit Code"|default:"" }}{{ person|lookup:"Rivo VIP Tier Name"|default:"" }}💡 Tip: Learn how to manually add your customers' preference responses to your Klaviyo emails in Adding preference responses to emails.
Adding event properties
Make sure you're editing a flow triggered by a Rivo event, then open the Klaviyo template builder
Click "Preview"
Under All properties, find Event properties. You'll see the data available for the Rivo event
Click the event property to copy the variable
After the success message appears, click "Done", then paste the variable you copied into the desired text block.
List of event variables
List of event variables
Use this list as a reference when manually adding the event variables to your Klaviyo emails, knowing that each event property is specific to the Rivo event that triggered the flow. See List of events & properties for the available events and their corresponding properties.
Rivo Birthday Captured
{{ event.dob|default:'' }}{{ event.captured_at|default:'' }}
Rivo Credits Earned
{{ event.trigger_name|default:'' }}{{ event.earnings_amount|default:'' }}{{ event.formatted_earnings_amount|default:'' }}{{ event.next_vip_tier_threshold|default:'' }}{{ event.needed_for_next_vip_tier|default:'' }}
Rivo Customer Account Activated
{{ event.account_activated_at|default:'' }}
Rivo Customer Birthday
{{ event.earnings_amount|default:'' }}
Rivo Customer Moves Down A Tier
{{ event.vip_tier_name|default:'' }}{{ event.next_vip_tier_name|default:'' }}{{ event.next_vip_tier_threshold|default:'' }}{{ event.needed_for_next_vip_tier|default:'' }}
Rivo Customer Moves Up A Tier
{{ event.vip_tier_name|default:'' }}{{ event.next_vip_tier_name|default:'' }}{{ event.next_vip_tier_threshold|default:'' }}{{ event.needed_for_next_vip_tier|default:'' }}
Rivo Earning Transfer Completed
{{ event.credits_amount|default:'' }}{{ event.formatted_credits_amount|default:'' }}{{ event.sender_name|default:'' }}{{ event.sender_email|default:'' }}{{ event.message|default:'' }}{{ event.completed_at|default:'' }}
Rivo Notification Credits Expiry Warning
{{ event.expiry_amount|default:'' }}{{ event.formatted_expiry_amount|default:'' }}{{ event.time_until_expiry|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Notification Credits Last Chance
{{ event.expiry_amount|default:'' }}{{ event.formatted_expiry_amount|default:'' }}{{ event.time_until_expiry|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Notification Points Expiry Warning
{{ event.time_until_expiry|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Notification Points Last Chance
{{ event.time_until_expiry|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Notification Reward Expiry Warning
{{ event.reward_name|default:'' }}{{ event.time_until_expiry|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Notification Reward Last Chance
{{ event.reward_name|default:'' }}{{ event.time_until_expiry|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Points Earned
{{ event.trigger_name|default:'' }}{{ event.earnings_amount|default:'' }}{{ event.next_vip_tier_threshold|default:'' }}{{ event.needed_for_next_vip_tier|default:'' }}
Rivo Reward Redeemed
{{ event.reward_name|default:'' }}{{ event.reward_code|default:'' }}{{ event.reward_tos|default:'' }}
Rivo Advocate Signup
{{ event.referral_link|default:'' }}
Rivo Referral Completed
{{ event.friend_email|default:'' }}{{ event.referrals_completed|default:'' }}
Rivo Referral Friend Claim
{{ event.friend_email|default:'' }}{{ event.reward_name|default:'' }}{{ event.reward_code|default:'' }}{{ event.reward_tos|default:'' }}
Rivo Referral Invite Friend
{{ event.advocate_name|default:'' }}{{ event.reward_name|default:'' }}{{ event.friend_email|default:'' }}
Rivo Product Added To Favorites
{{ event.product_id|default:'' }}{{ event.product_name|default:'' }}{{ event.product_url|default:'' }}{{ event.product_image_url|default:'' }}
Rivo Membership Billing Skipped
{{ event.membership_tier_name|default:'' }}{{ event.skipped_at|default:'' }}{{ event.new_billing_date|default:'' }}
Rivo Membership Canceled
{{ event.cancelled_at|default:'' }}{{ event.customer_id|default:'' }}
Rivo Membership Paused
{{ event.membership_tier_name|default:'' }}{{ event.paused_at|default:'' }}
Rivo Membership Payment Success
{{ event.membership_tier_name|default:'' }}{{ event.succeeded_at|default:'' }}{{ event.attempt_number|default:'' }}{{ event.completed_at|default:'' }}
Rivo Membership Pending Cancellation
{{ event.queued_for_cancellation_at|default:'' }}{{ event.customer_id|default:'' }}
Rivo Membership Renewal Notice
{{ event.renewal_date|default:'' }}{{ event.next_billing_date|default:'' }}{{ event.membership_tier_name|default:'' }}
Rivo Membership Signup
{{ event.signed_up_at|default:'' }}{{ event.customer_id|default:'' }}{{ event.membership_tier_id|default:'' }}{{ event.membership_tier_name|default:'' }}{{ event.membership_tier_price|default:'' }}{{ event.membership_tier_billing_interval|default:'' }}
Rivo Membership Successful Rebill
{{ event.membership_tier_name|default:'' }}{{ event.billing_interval|default:'' }}{{ event.next_billing_date|default:'' }}{{ event.attempt_number|default:'' }}{{ event.completed_at|default:'' }}
Rivo Bulk Gift Card Delivery
{{ event.gift_card_amount|default:'' }}{{ event.gift_card_code|default:'' }}{{ event.gift_card_bulk_campaign_id|default:'' }}{{ event.gift_card_bulk_campaign_name|default:'' }}{{ event.gift_card_note|default:'' }}{{ event.gift_card_expiration_date|default:'' }}
Rivo Loyalty Gift Processed
{{ event.reward_name|default:'' }}{{ event.reward_code|default:'' }}{{ event.reward_tos|default:'' }}{{ event.message|default:'' }}
Rivo Virtual Gift Card Delivery & Rivo Virtual Gift Card Reminder
{{ event.gift_card_code|default:'' }}{{ event.gift_card_initial_value|default:'' }}{{ event.gift_card_expires_on|default:'' }}{{ event.gift_card_note|default:'' }}{{ event.gift_card_recipient_first_name|default:'' }}{{ event.gift_card_recipient_full_name|default:'' }}{{ event.gift_card_sender_first_name|default:'' }}{{ event.gift_card_sender_full_name|default:'' }}
Rivo Cashback Earned Completed & Rivo Cashback Earned Completed Reminder
{{ event.trigger_name|default:'' }}{{ event.earnings_amount|default:'' }}{{ event.formatted_earnings_amount|default:'' }}{{ event.expiry_date|default:'' }}{{ event.expiry_date_formatted|default:'' }}
Rivo Cashback Earned Pending
{{ event.trigger_name|default:'' }}{{ event.earnings_amount|default:'' }}{{ event.formatted_earnings_amount|default:'' }}
💡 Pro Tip: You can customize how dates are displayed in your emails instead of using the default YYYY-MM-DD format. See Klaviyo's Date personalization in templates reference for the available date formats and syntax.
Creating segments based on Rivo data
Use Rivo events and properties to build highly targeted segments based on customer actions and preferences, so every email feels more relevant.
From your Klaviyo account, go to Audience > Lists & segments
Click "Create" > "Segment"
Name the segment
In Conditions, choose "Properties about someone" or "What someone has done (or not done)"
Start adding all your conditions based on the profile properties and/or events
Click "Create segment".
Troubleshooting
What you're seeing | What to check |
Rivo profile properties or events are missing, or arriving late |
|
A custom action isn't showing up, such as profile completion or product registration |
|
|
For more detail, see Membership Integration Events and Managing Member Cancellations, Pauses, and Resumes |
Email wasn't delivered to the customer |
|
📝 Note: Syncing refreshes profile properties only. It doesn't replay past events – and switching the Klaviyo integration off and back on works the same way. Events that happened while it was off won't arrive after you re-enable it.
Common questions
What is the difference between custom profile properties and event properties?
You can add custom profile properties to any email through personalization tags, while 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 property variables are used to populate email content with flow-trigger data.
Why did my customer receive two emails after completing an action?
Make sure you've disabled 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.
If auto-subscribe to Klaviyo is off, will customers still earn for the email subscribe rule?
Yes. If the email subscribe earning rule is active and the customer qualifies, Rivo can still award points or credits. The auto-subscribe setting only controls whether Rivo also subscribes the customer to the selected Klaviyo list.
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?
Yes. Running "Sync Customers" in Rivo, from the Klaviyo integration page, can create or update Klaviyo profiles for eligible customers, using their email as the matching key.
Does Rivo send data to profiles with "Guest" loyalty status?
Yes. Rivo can pass loyalty data for both guests and members. If you run "Sync Customers" in Rivo, you can choose Customers with an account. This way, guest profiles are excluded from that manual sync option.
What emails can be sent through Klaviyo, and which are exclusive to Rivo?
Some Rivo-native notifications remain platform-managed:
Loyalty Anniversary
Credit Transfer
Loyalty Gift
Advocate Stats
Verified Reward
Ineligible Referral
Credit Transfer.
If you rebuild a notification in Klaviyo, disable the matching Rivo notification to avoid duplicate sends.

