Email + Klaviyo · 2026-05-23
How to protect your Klaviyo from Shopify bot accounts
Your bounce rate went from 0.4% to 8% in two weeks. Klaviyo's deliverability dashboard is flashing yellow. You haven't changed anything. The cause is upstream — fake Shopify customer accounts pouring into your list — and the fix is also upstream.
Two months ago a Shopify Plus merchant in the SOptim Hub data set went from 99% Klaviyo deliverability to 88% in 17 days. They hadn't run a new campaign. They hadn't imported a list. What changed was a bot wave creating about 280 fake Shopify accounts per day, all of which Klaviyo dutifully synced and dutifully sent welcome emails to. About 70% of the welcome emails bounced. Mailbox providers downgraded the sender reputation. Real customers started landing in spam.
This is the most expensive corner of the bot problem because it doesn't fix itself when you stop the bots — even after the bots are gone, your sender reputation takes weeks of clean sending to recover. Other parts of the problem (analytics inflation, Google Ads spend throttle) we covered in your Shopify analytics are lying to you. SOptim's customer-creation defence stops the bot accounts from existing in the first place. This post walks the exact six-step damage path, the Shopify Flow workaround merchants are using now, why it leaks, and the upstream fix.
The exact path from bot to deliverability damage
Six steps. None of them are speculative.
- Bot creates a Shopify customer account. Either via the storefront
/account/registerform (with auto-filled garbage) or via the bot's checkout flow (creates a guest account that the storefront promotes to a real one if a setting allows). - Shopify fires the
customers/createwebhook. Every app subscribed to this webhook gets the new record. The official Klaviyo integration is subscribed by default. - Klaviyo creates a Profile. Real-time sync. Latency is 2 to 10 seconds in practice — sometimes faster.
- Klaviyo's welcome flow triggers. If you have one (most stores do), the flow's entry criteria match the new profile and the first email is queued.
- The welcome email bounces. The fake address either doesn't exist, or it's a freshly-generated catchall from a disposable provider, or it's a real address belonging to someone else who reports spam. Any of these is bad.
- Klaviyo flags your sender reputation. A bounce rate above 2% is a yellow signal. Above 5% is a red signal. Above 10% and Klaviyo starts throttling your sends to protect the shared sending IP pool.
Steps 2 through 5 take well under a minute total. By the time you check your dashboard the next morning, you have a few hundred bouncing welcomes and a sender reputation that's already started to slide. The slide is the part that lingers — Gmail and Outlook update their internal scores on rolling windows, so once you've been flagged, it takes 2 to 6 weeks of clean sending to recover.
The manual workaround (what merchants do now)
Search the Shopify Community threads for "bot accounts Klaviyo" and the most common DIY fix is a Shopify Flow.
"I built a Flow that triggers on Customer Created, checks if first name is empty or address is the Pakistani fake string, and deletes the customer. It catches most of them. Klaviyo still syncs some before the Flow runs but at least my customer list isn't 50,000 fakes anymore."
The Flow shape, simplified:
- Trigger: Customer Created
- Condition: first_name is empty OR address.address1 contains "Gray Colony" OR address.address1 contains "House Number 43" OR ... (a growing list of pattern matches)
- Action: Delete Customer
This is the right idea. It's also doing exactly what merchants who've been hit hardest by the bot wave end up doing for themselves. The reason we wrote this post — instead of just telling you to build the Flow — is that the Flow has two limitations that bite once the bots adapt.
Why this isn't enough
Race condition with Klaviyo's sync. Shopify Flow and the Klaviyo customers/create subscription are both triggered by the same webhook. They run in parallel. There is no guarantee that the Flow's Delete Customer action completes before Klaviyo's sync writes the profile. On the merchant accounts we've inspected, somewhere between 5% and 20% of bot accounts make it into Klaviyo before the Flow deletes them. Once they're in Klaviyo, deleting the Shopify customer doesn't remove the Klaviyo profile — you have to clean both sides separately.
Bots adapt to fill in fake names. The merchants on the community threads have noted this in real time: after the empty-first-name Flow rule started catching most accounts, the next wave of bots began populating "Sarah" and "John" and other plausible first names. The address-string filter catches that wave for a week or two before the addresses change. It's an arms race the Flow can't keep up with because each rule is a static pattern and the bots iterate.
50,000 manual deletions still let some through. One merchant in the May 2025 thread reported manually wiping 50,000 fake accounts over six weeks. Even with the Flow running, enough leaked through to damage their deliverability. The cleanup time is measured in hours per week of founder time.
The proper fix
Three layers, all of which SOptim ships together.
Block account creation server-side. SOptim's customer-creation webhook scores each new account on a model that includes empty first name, suspicious address patterns, IP velocity, ASN reputation, presence of the SOptim theme-extension session token (real visitors have one; scripted requests don't), and disposable-email-domain match. The model is updated weekly from the cross-shop signal pool. Accounts that score above the threshold are deleted within milliseconds of the customers/create webhook firing — same webhook Klaviyo uses, but the deletion races on a tighter loop because SOptim's worker is tuned for it.
Pre-Klaviyo filtering. Even when an account survives the initial score, the Klaviyo deep integration (Scale tier) adds a suspect_bot tag to the profile before any welcome flow runs. You add "profile not in suspect_bot list" to your welcome and abandoned-cart flow entry conditions. The bot profile exists in Klaviyo but never receives an email.
Cross-shop network detection. Every customer-creation event also queries the cross-shop bloom filter. If the same fingerprint has been flagged as a bot on three other SOptim-installed stores in the past 14 days, the account is auto-deleted on arrival regardless of the local signals. This is the Defense Network — a moat the rotating-IP wave can't bypass because the fingerprint is what gets shared, not the IP. Same architecture covered in why apps can't stop the new Shopify bot wave.
The end-state is what most merchants actually want: bot accounts never exist, your Klaviyo list stays clean, your sender reputation stays at 98-99%, your welcome flow opens stay where they were before the bot wave started.
Install on Shopify and the customer-creation defence is active on the Free tier from day one. Klaviyo deep integration is on Scale ($49/month) because the Klaviyo API quota and the realtime sync cost real money to operate at volume. If you're seeing the deliverability damage now, the right sequence is Free first (to stop the bleed) then Scale once the immediate fires are out.
What this won't fix
Two honest limits.
If your Klaviyo list already contains thousands of dormant bot profiles from past attacks, the customer-creation defence doesn't retroactively clean them. The Scale-tier Klaviyo integration includes a one-time backfill that scans existing profiles against the same scoring model and suppresses the matches. Free tier doesn't include the backfill, but the manual approach (Klaviyo segment: "no opens in 90 days AND empty first name") will catch most of the ghost list in a few hours.
If your sender reputation is already damaged, blocking new bots doesn't speed up the recovery — it just stops you sliding further. The recovery curve is dictated by Gmail, Outlook, and Yahoo's internal scoring, not by your ESP. Realistic window is 2 to 6 weeks of clean sending. Patience helps. So does temporarily reducing send volume to your most engaged segments only.
FAQ
How fast does Shopify sync customers to Klaviyo?
Real-time via webhook for the customers/create event. 2 to 10 seconds end-to-end in practice. A Shopify Flow that triggers on the same event runs in parallel — no guaranteed order, which is the race condition that breaks the manual workaround.
Can I exclude fake accounts retroactively?
Yes, manually. Search your Klaviyo profile list for the bot signatures — empty first name, suspicious address strings, no opens in 30 days — export the matching IDs, and suppress them. SOptim Scale's Klaviyo integration does this automatically going forward and includes a one-time backfill.
What about Mailchimp or another ESP?
Same mechanism, same damage. SOptim's customer-creation defence works regardless of which ESP is downstream because the bot account never gets created. The Klaviyo-specific deep integration is a Scale-tier feature; for Mailchimp you rely on the bot account never existing in Shopify in the first place.
Do I need to whitelist real customers?
No. The scoring uses behavioural and structural signals, not allow-lists. False-positive rate from beta merchants is under 0.2% over 60 days, and false positives surface in the SOptim dashboard for one-click restoration.
Will this break my existing flows?
No. Existing Klaviyo flows run unchanged. SOptim adds a suspect_bot tag to bot profiles which you reference in flow filters. The default suggestion is to add "profile not in suspect_bot list" to the welcome and abandoned-cart flow entry conditions.
Stop the bleed today
SOptim's customer-creation defence ships on the Free tier — 50 blocks/month, no credit card. If your bounce rate is climbing this week, installing now stops new bot accounts within five minutes of the webhook subscription confirming.
Install on ShopifySources
- Shopify Community thread — "How can I stop a bot from placing abandoned orders", 172 replies, 2,961 views. The Shopify Flow workaround quote is from a 2025 reply on this thread.
- Klaviyo deliverability bands and sender-reputation thresholds — help.klaviyo.com sender reputation guide.
- Shopify
customers/createwebhook documentation — shopify.dev webhook resource. - Recovery window for sender reputation: independent of platform, governed by Gmail/Outlook/Yahoo scoring rather than the ESP. Approximation based on SOptim Hub merchant accounts that recovered between February and April 2026.
- Last review: 2026-05-23.