By the time your unsubscribe rate spikes, you're already two weeks late.
Unsubscribes are a lagging indicator. People don't decide to leave your list the day they hit the button. They decide somewhere around email three or four of a stretch that felt like too much, and then it takes another few sends before they actually click unsubscribe. By that point, you've already trained a much larger group of people to ignore you completely. Understanding what unsubscribe rates actually signal is critical here.
That's the real cost of list fatigue. It's not the unsubscribers. It's the silent quitters who stop opening but never tell you. Your list looks the same size on paper while half of it has effectively muted you.
So how do you see this coming before the unsubscribe number turns red?
The metrics that move first
When a list starts to fatigue, three things shift before unsubscribes do.
Open rate on your engaged segment drops first. Not the open rate on your whole list, which gets muddied by inactives and Apple Mail Privacy noise. The open rate on people who opened something from you in the last 30 days. If that number is sliding down week over week, your most engaged people are starting to skim.
Click rate drops next. This one matters more than opens because Apple can't fake a click. If your click-through rate on a normal promotional email used to be 2.1% and it's drifted to 1.4% over six weeks, something is wrong even if opens look stable.
Reply rate goes to zero. Most DTC brands don't track this because they don't ask for replies. But if you do send the occasional "hit reply and tell me what you think" email, watch what happens to response volume over time. Real engagement shows up in replies before it shows up anywhere else.
The math you can run today
Here's a quick calculation that takes about ten minutes in Klaviyo.
Pull your last 20 campaign sends. Look at the engaged-segment open rate for each one. Calculate the average of the first 10 and the average of the last 10.
If the last 10 are more than 15% lower than the first 10, you have early-stage fatigue. Not the kind that shows up in unsubscribes yet, but the kind that will in about three weeks.
Do the same with click rate. Same threshold. If clicks dropped 15% on your engaged segment between the first half and second half of your recent sends, you're past the warning stage.
Now the harder one. Pull your sent-but-not-opened count for each campaign. If that number is creeping up while your list size stays flat, you're losing people quietly. They haven't unsubscribed. They're just gone.
Why Klaviyo's dashboard hides this
Klaviyo shows you metrics campaign by campaign. That's useful for testing subject lines, but it's terrible for spotting fatigue, because fatigue is a trend, not an event.
To see the trend, you have to manually pull data into a spreadsheet and plot it over time. Most teams don't do this because it's tedious and nobody owns it. The brand manager looks at last week's send and goes "open rate was fine." The CMO looks at the quarterly report and goes "revenue per email is down a bit." Nobody connects the two.
By the time someone notices the pattern, you've shipped another month of campaigns into a list that's been quietly checking out.
The send-density question
Here's where most fatigue actually comes from, and it's not what you think.
It's not your campaign count. It's the overlap between campaigns and flows. A subscriber who's mid-welcome-series, just got an abandoned cart email, sat through a browse-abandonment trigger, and then got your weekly newsletter? They got four emails from you in 48 hours. You sent one campaign. They received four.
This is the math Klaviyo's campaign tab doesn't show you. The campaign calendar looks reasonable. The actual subscriber experience is a fire hose. This is the send density problemthat most DTC teams never see until it's too late.
If you want to see what's really happening, pick five real subscribers from your engaged segment. Go to their profile and look at the email history for the last 30 days. Count every send they got. Now do it for five subscribers from your VIP segment. The VIPs are usually the worst, because they trigger more flows.
If anyone is getting more than 12 emails in 30 days, you're fatiguing your best people first. The right frequency depends on your brand, but overdoing it with engaged users is the fastest way to burn your list.
What to do when you see the signals
If your engaged open rate is dropping but unsubscribes haven't moved yet, you have about three weeks to act before the damage shows up.
The fastest fix isn't sending less. It's deduplicating better. Add suppression logic so that anyone who got a flow email in the last 24 hours doesn't also get the campaign. Anyone mid-welcome-series should be excluded from your weekly promotional send. These are five-minute fixes in Klaviyo that buy you weeks of breathing room.
Next, look at your flow triggers. Browse abandonment is often the culprit. It fires too aggressively, often for people who already get the abandoned cart series anyway. Tightening the trigger conditions usually cuts 10 to 15% of total send volume without losing meaningful revenue.
Then look at campaign segmentation. If you're sending the same promotional email to your 30-day engaged segment and your 365-day engaged segment, you're inviting the 365-day people to remember they don't really care anymore. Tighter targeting on lower-engagement subscribers protects them from being reminded to leave.
The thing nobody tracks but should
Build one dashboard. Just one. Plot engaged-segment open rate, engaged-segment click rate, and average sends per subscriber per week, all on the same chart over the last 90 days.
If you only look at this once a month, you'll see fatigue before it spikes your unsubscribe rate. You'll see it before it tanks your sender reputation. You'll see it before it kills your Q4 numbers.
This is exactly the kind of cross-flow, cross-campaign visibility Klaviyo doesn't give you out of the box, and it's why we built Cadento. You need to see the actual subscriber experience across every send, not the campaign-by-campaign view. Otherwise you're flying blind on the metric that matters most: how tired your list is getting.
The takeaway
Watch your engaged open rate, not your overall open rate. Watch how many emails real subscribers are actually getting, not how many campaigns you're sending. And run the trend, not the snapshot.
Unsubscribe rate is a death certificate. By the time it spikes, the patient was sick for weeks. The signals are already there in your Klaviyo data. You just have to look at them in the right way.
If you want to see your real send density across every flow and campaign in one view, start a Cadento trial. It's the dashboard you should have built but probably haven't.