Klaviyo account clean-up to fix emails not making money
in flow marketing

Why Your Klaviyo Emails Stopped Making Money (And the Account Clean-Up That Fixes It)

You set Klaviyo up once. Maybe someone built a few flows for you years ago, maybe you had a go yourself between a thousand other jobs. And lately the email revenue has quietly slid, and you can feel it, even if you have not looked closely at the numbers yet.

That feeling is not a character flaw. It is what happens to every product brand that gets busy. The good news is that a neglected Klaviyo account is one of the fastest things in your whole business to turn around, because the assets are already there. They just need a clean-up.

Quick Answer

If your Klaviyo emails have stopped making money, the usual culprits are a bloated list full of people who cannot receive email, core flows that were never finished or never refreshed, and stale product images pointing at sold-out stock. Suppress your unengaged profiles, set up the three abandonment flows properly, swap static images for dynamic product blocks, and you fix most of the leak without sending a single extra campaign.


Why is my email list costing me money instead of making it?

Here is the thing most founders never get told: your Klaviyo bill is based on the number of profiles you are storing, not the number of people actually buying from you.

So if your list says 21,000 profiles but only a fraction of those can legally receive an email, you are paying to store dead weight. People who unsubscribed. People who hard bounced. People who marked you as spam. They sit in your account, inflate your bill, and drag down every metric you look at.

A profile that is “subscribed” in Klaviyo means something specific. It means they have not unsubscribed, have not been suppressed, have not hard bounced, and have not marked you as spam. That is the audience you can actually email. Everyone else is noise.

When you clean this up, two things happen at once. Your reporting starts telling you the truth, because you are measuring against real subscribers. And your bill can come down, because Klaviyo will bill you for fewer stored profiles.


How do I clean up my list without losing real customers?

The tool for this is a sunset flow. A sunset flow is an automated sequence that catches people who have gone cold, gives them a last chance to re-engage, and then tags the ones who still ignore you so you can suppress them.

The trigger is usually someone who has been subscribed for at least 180 days and visited your website zero times in that window. They get a short run of emails. If they click or come back, brilliant, they get kicked out of the sequence and carry on as a normal subscriber. If they reach the end still cold, they get tagged as unengaged.

Then you build one segment for everyone tagged unengaged, and that becomes your “to be suppressed” list. Whenever you are in your account and you think of it, open that segment and suppress the current members. Set it up once and it runs in the background forever.

Suppressing is not deleting. You are not destroying data. You are telling Klaviyo to stop counting and emailing people who have shown you, repeatedly, that they are not interested. Your sender reputation thanks you, and so does your invoice.

One small warning while you are in there: watch for fake or bot sign-ups. A quick way to sniff them out is to look at the email domain. If the bit after the @ looks like gibberish, it is almost certainly not a real customer, and it has no business sitting in your engaged list.

If you want someone to look at your account and tell you exactly where the revenue is leaking before you start pulling levers yourself, that is precisely what a Mini Klaviyo Audit is for. You can grab one here: inflowmarketing.co/mini-klaviyo-audit


Which Klaviyo flows should every product brand have running?

Most accounts I open have one or two flows live and the rest either missing or sitting in draft. For an established product brand, three abandonment flows should be doing quiet, constant work for you, and they map to three different levels of buying intent.

Browse abandonment. Lowest intent. Someone landed on your site, looked around, and left without adding anything to their cart. A gentle nudge, no hard sell.

Abandoned cart. Middle intent. They added something to their cart but never started the checkout. They liked it enough to put it in the bag.

Abandoned checkout. Highest intent. They started checkout and then stopped. Something specific got in the way. The price of shipping surprised them, they were not sure about sizing, they got distracted.

Stagger the timing so they do not all fire at once. A browse abandonment might wait two hours, an abandoned cart an hour and a half, an abandoned checkout an hour. The higher the intent, the sooner you follow up.

The mistake I see most often is treating the abandoned checkout like a single reminder. It is your highest-intent audience in the whole account. It deserves more than “you left something behind”. Use the sequence to answer the actual objection. Did you know we ship next business day if you order by five? Not sure on sizing? Here is the size guide. Each email handles one job, so you are not cramming everything into the first message and watching people flick straight past it.


Should I put a discount code in my abandoned cart emails?

This is where founders reach for 10% off too early, and it costs them margin.

If you train your audience to expect a code the moment they leave a cart, the savvy ones will leave a cart on purpose and wait for it. I do it myself, and I do this for a living. Drop a code straight away and you are paying people to do something many of them were going to do anyway.

So hold the discount back. Let the first email or two lean on reassurance and helpful information. Save the offer for later in the sequence, when it is actually doing some convincing.

Better still, test it. Set a conditional split near the end of the flow, a random 50-50 sample, where half get a code and half do not. Keep everything else identical, same subject lines, same layout, and only change the discount section. Then watch the numbers and let your own data tell you whether the code is earning its keep or just eroding your margin.

And when you do use a code, use a dynamic one with a short window of urgency, something like 24 hours, so it cannot be screenshotted and reused forever.


Why do my flow emails feel stale, and what fixes it?

If your flows were built a year ago and have not been touched since, they are almost certainly showing customers products that are old, out of season, or sold out. Nothing kills a click like falling for a product that no longer exists.

Two fixes here, and the second one is the one that saves you the ongoing work.

First, the manual pass. Every three to four months, go through every flow and check the images, the copy, the links, and the products on show. You do not want to be promoting a bestseller from six months ago, and you definitely do not want sold-out items front and centre. If something has genuinely sold out and you are not restocking it, take it out. A shopper who falls for something they cannot buy just leaves a little more annoyed than they arrived.

Second, and this is the real upgrade, swap static product images for dynamic product blocks. These pull live from your store and only ever show items that are actually available. A “top selling products in the last three days” block stays current on its own. A “may also like” block recommends different products to every single recipient, based on what they viewed and what they bought, with a fallback to your best sellers when someone has limited history.

Here is what that actually looks like in your account. One shopper who looked at a quilted puffer gets shown the kind of thing that pairs with it. A different shopper who browsed a newborn range gets a completely different set. Same email, personalised to each person, updating itself forever. You build it once and it does the thinking for you.


Key Takeaways

  • Your Klaviyo bill is based on stored profiles, so a list full of people who cannot receive email is costing you money for nothing.
  • A “subscribed” profile is one that has not unsubscribed, been suppressed, hard bounced, or marked you as spam. That is your real audience.
  • Set up a sunset flow to tag cold subscribers, then suppress them through a dedicated segment. Build it once, run it forever.
  • Every product brand should have all three abandonment flows live: browse, cart, and checkout, staggered by intent.
  • Hold discount codes back in your flows, and test them with a 50-50 split before you give away margin.
  • Refresh flows every three to four months, and use dynamic product blocks so emails never show sold-out or stale stock.

FAQ

How many profiles should I actually be paying for in Klaviyo?

Only the ones who can receive email and engage with it. If your stored profile count is wildly higher than your active subscriber count, you are paying to warehouse people who have unsubscribed, bounced, or gone cold. Clean them out and check whether you can drop to a lower billing tier.

It will shrink the number on the screen, and that is a good thing. Suppressing removes people who were dragging down your deliverability and inflating your bill. You keep every engaged subscriber, which is the only group that was ever making you money.

Abandoned cart is when someone adds an item but never starts checking out. Abandoned checkout is when they begin the checkout process and stop partway through. Checkout abandonment is higher intent, so it deserves the fastest follow-up and the most specific objection-handling.

Every three to four months for an active product brand. Check images, copy, links, and the products being shown. Dynamic product blocks reduce how much of this you have to do by hand, because they only ever surface live, in-stock items.

Yes. One Klaviyo account connects to one store. If you run a second store, you build a second account and clone your flows across, rather than rebuilding everything from scratch.

Jess from In Flow Marketing

Where to start

If any of this made you wince, you are not behind. Your email just has not had a specialist on it for a while, and that is a quick thing to fix.

If you would rather not pick through segments and flows yourself, this is exactly the kind of work we take off your plate at In Flow Marketing. We handle the strategy, the clean-up, the flows and the optimisation so your account quietly does its job while you run the business.

Book a call and let’s look at what your account could be doing: inflowmarketing.co/book-a-call

Chat soon, Jess

Recent Posts