All of your messaging in Klaviyo revolves around three key messaging components. In this article, we’ll break down each component and guide you through setting up transactional and popular message flows. For broader integration details, check out our Klaviyo Integration Overview.
Common Actions and Buttons
All messaging in Klaviyo boils down to three essential components:
- Segment - a grouping of customers you want to message
-
Flow - a series of messages to send to the segment of customers
- Flows can be filtered by data Ordergroove sends over, ex: I only want to send to customers with active subscriptions
- Messages - Individual email and SMS communications
You can use segments to group similar customers together. It's commonly used to:
- Message customers when they enter a group.
- Ex: When a customer first subscribes, they enter a subscriber segment and get a welcome series of emails
- Control a flow based on if they are in the segment or not.
- Ex: All subscribers enter the welcome series, but customers who subscribe to prepaid subscriptions get an additional email explaining what prepaid is
Creating a segment:
- Open up Klaviyo and to Lists > Segments
- Create New, select segment
- Give your new segment a name, it can help to be descriptive. Ex: All Subscribers or Subscribers who received 3+ shipments
- Set the conditions for who to include in the segment. For Ordergroove, you’ll likely want:
- If they are a subscriber: Select properties about someone and set overgroove_subscriber_status to true or false
- If a customer has taken specific actions in Ordergroove: Select what someone has done (or not done) and selecting the actions you want to track
- If a customer has opted into marketing messages: Select if someone can or cannot receive marketing and either can or can not receive text or email messages.
Flows are an automated series of email and SMS messages you want to send to your segments.
Creating a flow:
- Open up Klaviyo and go to Flows
- Click Create Flow > Build Your Own
- Give your flow a name, we recommend being descriptive. Ex: Subscriber Welcome,
- Select a trigger
- Within “all triggers” is a metric, search for the metric you want to start the messaging
Filtering a flow
Filters are used to include, or exclude, specific people and specific messages. You can filter to include only a select group, or filter to remove a select group.
To filter a flow, you need a trigger:
- To filter based on profile information, select Profile Filters.
- To filter based on event data, select Trigger Filters.
For a list of all properties that can be filtered on, take a look at Information sent to Klaviyo.
Branching a flow
You can use filters to split users within a flow. For example, if a customer has opted in to SMS messaging, they can get branched off into a flow with both SMS and email messages.
To branch a flow:
- Drag a conditional split into your flow. You can split on event data, profile data, marketing consent, and others.
Individual messages, both email and SMS, can be customized with dynamic content - fields that will automatically fill in with the subscriber's information. Things like name, address, and the products subscribed to. Dynamic content gives your messaging that little bit of extra pop, instead of being a bland, generic message.
Adding dynamic fields is the same for Email and SMS:
- Choose an event you want to use from the list on Information sent to Klaviyo.
- In your Klaviyo flow, open up the email or sms message you want to add the field to. It will either be the email builder or SMS builder. Click into the text where you want to add personalized content.
- Put the variable you want between a set of curly braces {{ notation }}
- For example, if you need to include a shipping address the first line would be:
{{ event.shipping_address.address }}
- For example, if you need to include a shipping address the first line would be:
Note: For order.* and subscriber.subscriptions_started events, the details of the order are nested. Nested events means you can choose to have multiple events of the same type in the same space - like adding all of a customer's active subscriptions to an email. Take a look at the next section, Nested Looping for more information.
Previewing your messages
You can see how your content looks with the last 10 messages available to the flow.
- Select the email message you want to preview.
- Click Edit, continue to edit email.
- In the top right of the WYSIWYG editor there is a preview and test button.
SMS
- Select the email message you want to preview.
- Click Edit.
- In the top right of the WYSIWYG editor there is a preview and test button.
Looping is when multiple items of the same type are included in one dynamic field. Active Subscriptions is a good example, a customer might have multiple and you have the choice to include all of them.
This content is dependent on understanding Klaviyo's Content Repeat Feature. Note: nested looping is not available on the SMS builder.
Adding nested loops:
- Once you’ve built your content to repeat, put event.items_subset in the repeat for section and define your item alias eg:“item”
- Personalize the content using curly braces {{ notation }}
Locating Customer Information
Ordergroove sends over customer information to Klaviyo, which displays on the customer profile.
- Open up Klaviyo, and expand the Audience tab
- Select Profiles
- Search for the customer
- Click the Customer's name. It will open up their profile, and you can see all of the events Ordergroove has recorded in the box on the right.
Transactional Flows
You can use Klaviyo to replace Ordergroove's transactional emails; for example upcoming Order Reminders and Item Out of Stock. Each of the following will require their own flow. We include the Metric you'll need to base the flow on, and any additional steps to get up and running.
- Use the ordergroove.order.reminder metric to create a flow
- Use the flow builder to build out the messaging experience. This is where you can think about what channels to use (SMS or Email), and what messages you want to send.
- If you plan to introduce a 1-click Upsell experience, you should only include users who are set up to receive marketing emails. Make sure you exclude anyone who opted out of marketing.
- If you plan to introduce two order reminder emails at different days, you should branch the flow based on the event property “days_until_place_date”
- Build out your content and personalize it.
- Note: communicating about the items in the order will require nested looping
- Use the ordergroove.subscriber.subscriptions_created metric to create a flow.
- Define your messaging experience using the flow builder
- Build out your content and personalize it.
- Note: communicating about multiple subscriptions will require nested looping
- Use the ordergroove.subscription.cancel metric to create a flow.
- Filter the flow to be triggered on events where the “cancel_reason” does not equal “item discontinued”
- Define your messaging experience using the flow builder
- Build out your content and personalize it.
- Use the ordergroove.subscription.cancel metric to create a flow.
- Filter the flow to be triggered on events where the “cancel_reason” equals “item discontinued”
- Define your messaging experience using the flow builder
- Build out your content and personalize it.
- Use the ordergroove.subscription.reactivate metric to create a flow
- Define your messaging experience using the flow builder
- Build out your content and personalize it.
- Use the ordergroove.order.credit_card_expiration_warning metric to create a flow
- Define your messaging experience using the flow builder
- Build out your content and personalize it.
- Use the ordergroove.subscription.sku_swap metric to create a flow
- Define your messaging experience using the flow builder
- Build out your content and personalize it.
- Use the ordergroove.item.out_of_stock metric to create a flow
- Define your messaging experience using the flow builder
- We recommend branching your flow on the “days_since_first_attempt” event property to change the messaging the longer the item has been out of stock.
- Build out your content and personalize it.
- Use the ordergroove.order.reject metric to create a flow
- Filter the flow to be triggered on events where “rejected_code” is in 500,120
- Define your messaging experience using the flow builder
- You could branch your flow on the “tries” property to add urgency to the messaging language the longer the credit card has been expired.
- Build out your content and personalize it.
- Use the ordergroove.order.reject metric to create a flow
- Filter the flow to be triggered on events where “rejected_code” is in 110,140,100,130,160
- Define your messaging experience using the flow builder
- You could branch your flow on the “tries” property to add urgency to the messaging language the longer the credit card has been expired.
- Build out your content and personalize it.
Other Popular Flows
With the Ordergroove Subscriber Created event, you can create a subscriber onboarding flow. It's a great opportunity to educate new subscribers on subscription benefits, answer any common FAQ questions, and update them on next order dates.
- Open up Klaviyo and click on Flows in the side navigation bar.
- Click Create Flow on the top right, and Create from Scratch.
- Name it Subscriber Onboarding Flow, or a similar name, and click Create Flow.
- Under Trigger Setup, select Metric and ordergroove.subscriber.create Note: We’re looking for Subscriber, not Subscription.
- Click Done, and from here you can build out the emails and SMS text messages you would like to send to the customer. This is the perfect time to educate your new subscribers, detail benefits, and promote engagement.
- Open up Klaviyo and click on Flows in the side navigation bar.
- Click Create Flow on the top right, and Create from Scratch.
- Name it Ordergroove Reactivation Flow, or whatever makes the most sense to you, and click Create Flow.
- Under Trigger Setup, select Metric and ordergroove.subscription.cancelled.
- Under Trigger Filters, click Filter on properties of trigger > Add a trigger filter. Dimension should default to equals, click Save.
- To filter out customers who still have another active subscription, click Flow Filters, Add a flow filter, Properties about someone, Dimension: ordergroove_subscriber_status, Equals: inactive
- Click Done, and from here you can build out the emails and SMS text messages you would like to send to the customer.
- Optional - Within the emails and SMS messages, you can include 1-click actions that subscribers can use to reactivate their subscription.
- Open up Klaviyo and click on Flows in the side navigation bar
- Click Create Flow on the top right, and Create from Scratch
- Name it Ordergroove Subscription Encouragement, or something similar, and click Create Flow
- Under Trigger Setup, select Segment and Repeat Buyers
- Click Flow Filters, Add a flow filter, Properties about someone, Dimension: ordergroove_subscriber_status, Dimension value: inactive, and Save
- Click Done, and from here you can build out the emails and SMS text messages you would like to send to the customer.
Using Ordergroove’s Upcoming Order event, you can fight churn before it happens and extend customer life time value (CLTV.) When sending an order reminder communication, you can leverage our 1-click Actions to delay an order by a set number of days.
- Open up Klaviyo and click on Flows in the side navigation bar
- Click Create Flow on the top right, and Create from Scratch
- Name it Ordergroove Upcoming Order, or something similar, and click Create Flow
- Under Trigger Setup, select Metric and ordergroove.order.reminder
- Click Done, and from here you can build out the emails and SMS text messages you would like to automatically send customers
- Optional - Within the emails and SMS messages, you can include 1-click actions that subscribers can use to easily delay an upcoming shipment, instead of cancelling it
Welcome back former customers who reactivate their subscriptions with a flow triggered by the Ordergroove Subscription Reactivated event. This is a great opportunity to reinforce the savings and benefits of your subscription program.
- Open up Klaviyo and click on Flows in the side navigation bar
- Click Create Flow on the top right, and Create from Scratch
- Name it Subscriber Welcome Back, or something similar, and click Create Flow
- Under Trigger Setup, select Metric and ordergroove.subscription.reactivate
- Click Flow Filters, Add a flow filter, What someone has done (or not done), Person has: Ordergroove.subscriber.cancel, in the last: 30 days. Note: Adjust the timeframe to better suit your use-case. If a customer has resubscribed after more than 30 days, in this example they will not trigger the flow.
- Click Done, and from here you can build out the emails and SMS text messages you would like to automatically send customers
Using the Ordergroove Order Placed Successfully event, you can reward loyal customers when they hit certain pre-determined anniversaries such as 10 shipments.
- Open up Klaviyo and click on Audience and Lists & segments in the side navigation bar
- Click Create List/Segment on the top right, and Segment
- Name it Loyal Subscribers, or something similar
- Under Definition, select What someone has done (or not done)
- Has: ordergroove.order.success, is greater than, set a number of orders and a time frame. For example, you could set it to 4 times in the last 20 weeks, which would be a monthly subscriber who has just their fifth month in a row.
- Add a second filter with And, select Properties about someone, ordergroove_subscriber_status equals active
- Open up Klaviyo and click on Flows in the side navigation bar
- Click Create Flow on the top right, and Create from Scratch
- Name it Loyal Subscriber Offer, or whatever makes the most sense to you, and click Create Flow
- Under Trigger Setup, select Segment and Loyal Subscribers
- Click Done, and from here you can build out the emails and SMS text messages you would like to automatically send customers
Resources
- Klaviyo Integration Overview has installation and integration information
- Information Sent to Klaviyo contains a list of all events and dynamic fields you can add to your messaging