Step-by-Step: Building a Retention Dashboard with Klaviyo + Shopify Data
Acquisition gets all the attention. Retention pays the bills.
You probably know this already, but knowing it and measuring it are different things. Most brands can tell you their CAC within seconds. Ask about repeat purchase rate by cohort, average time between orders, or churn velocity, and you’ll get a lot of blank stares or vague guesses.
A retention dashboard fixes that. It gives you a single place to see whether your customers are coming back, how often, and whether the trend is getting better or worse. Built correctly, it becomes the heartbeat of your business: something you check regularly, something that surfaces problems early, and something that proves your retention efforts are working (or not).
Here’s how to build one from scratch using Klaviyo and Shopify data.
What a Retention Dashboard Should Answer
Before building anything, define what questions the dashboard needs to answer. Retention analysis can sprawl in a dozen directions, so narrowing focus upfront saves time and keeps the end product useful.
A good retention dashboard should tell you:
What percentage of first-time buyers come back for a second purchase?
How long does it take for repeat purchases to happen?
Are newer customer cohorts retaining better or worse than older ones?
Which acquisition channels or campaigns bring back customers who stick around?
How does email engagement correlate with purchase behavior?
What’s the early warning sign that a customer is about to churn?
If your dashboard can answer these questions at a glance, you’ve built something valuable.
The Data You Need
Retention sits at the intersection of purchase data (Shopify) and engagement data (Klaviyo). Neither source tells the full story alone.
From Shopify, you need:
Orders export (including order date, customer ID, order total, products purchased, discount codes used)
Customers export (including first order date, total orders, total spend, and any tags you’ve applied)
Product data (to segment by category if relevant)
You’ll want at least 12 months of data to see meaningful patterns. More is better if you have it.
From Klaviyo, you need:
Customer profiles with engagement metrics (opens, clicks, last engaged date)
Flow and campaign performance tied to specific customers
Segment membership (VIPs, at-risk, churned, etc.)
Subscription status if applicable
Klaviyo’s API or CSV exports can get you most of this. For a basic dashboard, manual exports work. For something you’ll update regularly, consider setting up automated syncs.
Step One: Define Your Cohorts
Cohort analysis is the backbone of retention measurement. A cohort is simply a group of customers defined by when they first purchased.
The most common approach is monthly cohorts: all customers whose first order was in January 2024 form one cohort, February 2024 another, and so on. This lets you compare how different groups behave over time.
To build cohorts from your Shopify data:
Pull the full orders export.
For each customer, identify their first order date.
Assign each customer to a cohort based on that first order date (month and year is typical).
Now you can analyze each cohort’s behavior: what percentage made a second purchase, how long it took, how much they spent over time.
Step Two: Calculate Core Retention Metrics
With cohorts defined, calculate the metrics that matter.
Repeat purchase rate: The percentage of customers in a cohort who made more than one purchase. Calculate this at different time intervals (30 days, 60 days, 90 days, 12 months) to see how retention develops over time.
Formula: (Customers with 2+ orders / Total customers in cohort) x 100
Time to second purchase: The average number of days between first and second order for customers who did repurchase. This tells you how quickly customers come back and helps you time your retention campaigns.
Purchase frequency: The average number of orders per customer within a cohort over a given period. Useful for understanding how engaged your repeat customers actually are.
Revenue per customer: Total revenue divided by total customers in a cohort. Shows whether customers are becoming more or less valuable over time.
Cohort retention curves: For each cohort, track what percentage are still active (made a purchase) at 30, 60, 90, 180, and 365 days after their first purchase. Plot these as lines over time, and you’ll see whether newer cohorts are retaining better or worse than older ones.
Step Three: Layer in Klaviyo Engagement Data
Shopify tells you what customers did. Klaviyo tells you how engaged they are. Combining these creates a richer picture.
Match customers across platforms. Use email address as the common identifier. Export Klaviyo profiles with engagement data and join them to your Shopify customer list. Now each customer record includes both purchase history and email behavior.
Add engagement metrics to your cohorts. For each cohort, calculate:
Average email open raten
Average click rate
Percentage of customers who’ve engaged with email in the last 30 days
Percentage who are subscribed versus unsubscribed
Correlate engagement with retention. Segment your cohorts by engagement level. Do customers who open more than 50% of emails have a higher repeat purchase rate? (Almost certainly yes.) How much higher? This quantifies the value of email engagement and helps justify investment in your email program.
Identify at-risk customers. Define a threshold for “at risk” based on your data. For many brands, a customer who hasn’t purchased in 60+ days and hasn’t engaged with email in 30+ days is at risk of churning. Flag these customers in your dashboard so you can see the size of the at-risk pool and whether it’s growing or shrinking.
Step Four: Segment by Acquisition Source
Not all customers are created equal. How someone found you often predicts whether they’ll stick around.
Tag customers by acquisition source. This requires some setup. Options include:
Using UTM parameters and first-touch attribution to tag customers at acquisition
Pulling discount code data from orders (if you use unique codes per channel)
Using Klaviyo’s acquisition source tracking if you’ve configured it
Post-purchase surveys asking “how did you hear about us”
Analyze retention by source. Once customers are tagged, calculate repeat purchase rate and LTV for each acquisition channel. You’ll likely find significant variance. Customers from organic search or referrals often retain better than those from paid social. Customers who came through a heavy discount might have lower repeat rates.
This data should inform your acquisition strategy. If Meta is driving customers with a 20% repeat rate and email referrals are driving customers with a 45% repeat rate, that changes how you think about where to invest.
Step Five: Structure the Dashboard
Now you have the data. Time to build the actual dashboard.
Choose your tool. Options range from simple to sophisticated:
Google Sheets is free and flexible. Works well for manual updates and smaller data sets.
Looker Studio (formerly Google Data Studio) connects to various sources and creates shareable, interactive dashboards. Free but requires some setup.
Tableau or Power BI offer more power but come with learning curves and costs.
Menza can surface retention insights directly from your Shopify data through natural language queries, which is useful if you want answers without building reports manually.
Klaviyo’s native analytics cover email-specific retention metrics but won’t give you the full Shopify picture.
For most brands, Looker Studio connected to Google Sheets is a good starting point. You can update the sheets with fresh exports and have the dashboard refresh automatically.
Layout your dashboard. Organize it into sections that flow logically:
Section one: Headline metrics. Overall repeat purchase rate, average time to second purchase, 90-day retention rate. These should be visible immediately without scrolling.
Section two: Cohort analysis. A table or heatmap showing retention by cohort over time. Rows are cohorts (by month), columns are time periods (Month 1, Month 2, etc.), cells show percentage retained. This is the core of your retention view.
Section three: Retention curves. Line charts showing retention over time for different cohorts. Makes it easy to see whether newer cohorts are performing better or worse.
Section four: Engagement correlation. Charts showing the relationship between email engagement and purchase behavior. Useful for justifying email investment.
Section five: Acquisition source breakdown. Repeat rate and LTV by channel. Informs where acquisition spend should go.
Section six: At-risk tracking. Size of the at-risk customer pool over time. Should be declining if your retention efforts are working.
Step Six: Set Up Alerts and Benchmarks
A dashboard is only useful if you actually look at it. Set up triggers that force attention.
Establish benchmarks. Based on your data, define what “good” looks like. If your historical repeat purchase rate is 32%, set that as your baseline. Flag when cohorts fall below it.
Track trends, not just snapshots. A 30% repeat rate might be fine if it’s been stable. It’s concerning if it was 38% six months ago. Build in trend lines and period-over-period comparisons.
Set up alerts for significant changes. If your at-risk pool grows by more than 10% in a month, you want to know. If a new cohort is performing significantly below benchmark, that’s a signal. Some dashboard tools allow email alerts when thresholds are crossed.
Step Seven: Keep It Updated
A dashboard that was accurate three months ago is not a dashboard. It’s a historical document.
Define an update cadence. Weekly is ideal for fast-moving brands. Monthly works for more stable businesses. Match the cadence to how often you make decisions based on the data.
Automate where possible. Pulling manual exports every week gets old fast. Explore options:
Shopify’s API can feed data into a database or Google Sheets via scripts
Klaviyo’s API can do the same for engagement data
Third-party connectors (Supermetrics, Fivetran, Stitch) can automate data flows
Menza pulls Shopify data automatically and lets you query without manual exports
Even partial automation saves hours per month.
Build the update into your calendar. Assign ownership. If nobody is responsible for keeping the dashboard current, it will become stale.
Common Mistakes to Avoid
Making it too complex. Start with five to seven key metrics. You can always add more later. A dashboard that tries to show everything shows nothing clearly.
Ignoring data quality. If your customer records are messy (duplicates, missing emails, inconsistent tagging), your retention metrics will be unreliable. Clean the data before you build the dashboard.
Focusing only on percentages. A 40% repeat rate sounds great until you realize it’s based on 50 customers. Include absolute numbers alongside rates so you can see statistical significance.
Not acting on what you see. The dashboard should lead to decisions. If you see a cohort underperforming, dig into why. If at-risk customers are growing, launch a win-back campaign. Data without action is just decoration.
Building it once and forgetting it. Your business changes. Your product mix shifts. New channels emerge. Review your dashboard structure quarterly to make sure it still measures what matters.
A retention dashboard won’t magically improve retention. But it will make the problem visible. It will show you whether your efforts are working. And it will give you the clarity to make better decisions about where to focus.
Start simple. Measure what matters. Update it regularly. The compounding value of understanding your customers better will show up in your numbers over time.
Stop guessing. Start knowing.
Menza connects to your Shopify, Klaviyo, ad platforms, and 650+ other data sources. Ask questions in plain English and get answers you can trust — no spreadsheets, no code, no waiting.