ESP8 min read

Klaviyo: test whether your flow lands in Primary — not just Promotions

Klaviyo’s "Delivered" metric tells you the receiving server accepted the mail. For e-commerce senders, that’s table stakes — the real question is Primary vs Promotions. Here is how to test.

Klaviyo is the dominant ESP for Shopify stores and mid-market e-commerce — and for good reason. Its segmentation, flow builder and revenue reporting are unmatched. But Klaviyo's own deliverability reports give e-commerce senders a false sense of security, because the key question for ecom — Primary vs Promotions at Gmail — is exactly what Klaviyo does not show you. Here is a pre-send routine that fills the gap.

Why this matters more for ecom

Abandoned-cart and browse-abandonment flows depend on fast Primary-tab delivery — a 15-minute-old cart email that lands in Promotions and is seen the next day recovers half the revenue it could. For newsletter blasts, Promotions is fine. For behavioural flows, it is a direct hit to LTV.

E-commerce-specific deliverability stakes

A D2C brand running Klaviyo well typically has:

  • Weekly or bi-weekly newsletter campaigns.
  • 8–15 automated flows (welcome, cart, browse, post-purchase, winback).
  • Transactional-style messages (shipping, order status).
  • Promotional drops (sales, product launches, BFCM peaks).

Each of those has a different Primary/Promotions expectation:

  • Cart and browse flows need Primary placement to recover intent. 40%+ Promotions is a revenue leak.
  • Shipping notifications must hit Primary — they are transactional by intent and recipients look for them.
  • Newsletters can live in Promotions. Most e-commerce recipients check Promotions precisely for brand mail.
  • BFCM drops want Promotions placement, not Spam. Primary is too aggressive for a mass-promo send.

Klaviyo's shared vs dedicated IP tiers

Klaviyo segments IP pools by monthly volume:

  • Up to ~250k/month — shared pool with other small-to-mid senders. Good reputation overall, some swing week to week.
  • ~250k–1M/month — higher-tier shared pool. Measurably better placement, especially at Outlook.
  • >1M/month — dedicated IP available (paid add-on). Warm-up required, but worth it at this volume.

Klaviyo does not expose which pool you are in and does not publish thresholds. The segmentation is based on their internal risk score, which includes complaint rate, unsubscribe rate, bounce rate and list-growth patterns.

The Promotions default

E-commerce flows almost always land in Gmail Promotions by default, because the classifier sees:

  • Product imagery and price information.
  • Multiple CTAs and shop links.
  • A From address for a commercial brand.
  • A marketing-style unsubscribe footer.

All of those are exactly what an e-commerce flow should contain. Fighting the classifier by stripping all of them is usually a bad trade — you lose revenue from formatting before you gain it from placement. A smarter approach is situational: accept Promotions for newsletters and promo drops, engineer for Primary on behavioural flows.

How to test Primary placement

Klaviyo does not let you send a flow on demand to an arbitrary list, but you can test the content directly:

  1. Duplicate the flow email as a Campaign in Klaviyo with identical HTML, subject line, sender name and From address.
  2. Create a segment containing only the seed-mailbox addresses from the free placement tool.
  3. Send the Campaign to that segment at the same time of day the flow typically fires.
  4. Wait 2–3 minutes and read the per-provider placement.
  5. If Gmail Primary < 40% on a cart or browse flow, apply the five fixes below before the flow ships to real customers.

Five fixes that pull campaigns into Primary

1. Raise the plain-text-to-HTML ratio

Gmail's Promotions classifier weighs the ratio of visible plain text to total byte size. Heavy-image HTML with 50 words of copy slots cleanly into Promotions. Aim for 150+ words of real copy in abandoned-cart flows, and keep the text part meaningful (not just the HTML stripped).

2. Reduce the image count

More than 4–5 images in a behavioural flow email pushes it toward Promotions. Product shots are fine; stop using banner, header and footer image stacks. One hero product image plus a text block will outperform a 6-image Mailchimp-style template for Primary placement.

3. Reduce the link count

Cart flows with 12+ links (social icons, category nav, legal footer links, product links) look wholesale commercial. Cut to 3–5 links: the product, the cart-resume CTA, and an unsubscribe. Primary placement noticeably improves.

4. Use a personal-sounding sender name

Anna from Brand or Brand Support reads as personal. Brand Official or Brand Deals reads as promotional. For behavioural flows (cart, browse, shipping), personal sender names consistently lift Primary placement 10–20 points in our test data.

5. Add List-Unsubscribe-Post header

Klaviyo adds List-Unsubscribe by default but the one-click List-Unsubscribe-Post header is a per-sender toggle in the settings. Enable it. Gmail and Yahoo both use its presence as a positive signal — and its absence as a bulk-sender red flag since 2024.

Smart Sending can silently suppress tests

Klaviyo's Smart Sending feature suppresses any recipient who received mail from you in the last 16 hours. If you test a seed list twice in one day, the second test will appear to fail — the mail never sent. Disable Smart Sending on placement test campaigns, or use a fresh seed list each time.

Using Klaviyo's Smart Sending correctly

Smart Sending exists to prevent over-emailing. For real campaigns, keep it on. For placement tests, disable it on the specific test campaign so the seed inboxes actually receive your mail. This is a common trap — we have seen agencies waste entire afternoons debugging "failed placement tests" that were just Smart Sending doing its job.

GlockApps comparison

GlockApps is the reference placement tool for Klaviyo senders and integrates cleanly. The cost scales with test frequency — an e-commerce brand with 10 flows auditing monthly plus weekly newsletter checks burns through Starter credits in two weeks. Our free tool covers 20+ providers, including Mail.ru and Yandex for CIS-targeting brands, with unlimited tests. For teams that test often, free removes the cost pressure.

Frequently asked questions

My abandoned-cart flow has 99% Delivered but 6% opens. Is the flow broken?

Almost certainly you are in Gmail Promotions. The Delivered number is acceptance by the MTA; it has no correlation with whether the recipient saw the mail. Run a placement test on the exact flow email to confirm the Primary/Promotions split.

Does Klaviyo warn you about placement issues?

Only after the fact, and only for extreme cases (blacklists, high complaint rates). Klaviyo does not show per-provider folder placement. You have to test externally.

Is a dedicated IP worth it for a $2M/year brand?

Usually no unless monthly volume is above 1M. Dedicated IPs require 4–6 weeks of warm-up, and under-volume dedicated IPs deliver worse than warm shared pools. The threshold rises every year as Gmail gets better at IP-blind reputation.

Why do my Klaviyo shipping notifications land in Promotions?

Because they look marketing-shaped: big logo, product image, multi-link footer. For shipping mail, strip the template to plain-text-like simplicity. A text-first shipping notification lands in Primary almost every time.
Related reading

Check your deliverability across 20+ providers

Gmail, Outlook, Yahoo, Mail.ru, Yandex, GMX, ProtonMail and more. Real inbox screenshots, SPF/DKIM/DMARC, spam engine verdicts. Free, no signup.

Run Free Test →

Unlimited tests · 20+ seed mailboxes · Live results · No account required