Industries9 min read

Small e-commerce, abandoned carts, and the order-update gap

A solo Shopify store does $42,000/month in revenue. Klaviyo reports a 3.2% cart recovery rate. Hidden inside that number: cart emails hit Promotions 58% of the time at Gmail. If they landed in Primary, the recovery rate would be closer to 6%. That missing 2.8% is $14,000 a year.

Small e-commerce — solo Shopify, small BigCommerce stores, Etsy sellers, indie Squarespace Commerce — runs email that has to do the whole funnel: order confirmations, shipping notifications, delivery updates, review requests, re-purchase prompts, abandoned-cart recovery, promotional sends. Most of it flows through a single platform (Klaviyo, Omnisend, Mailchimp, or the store's native email), and that platform's shared infrastructure shapes deliverability more than most store owners realise.

TL;DR

Configure custom sending domain on your email platform. Separate transactional (orders, shipping) from marketing (promos, newsletters) onto different subdomains. Keep cart-recovery subject lines out of Promotions territory. Warm any new sending domain for 2–3 weeks before the first promotional send. Seed-test the transactional templates monthly; the promotional templates before each major campaign.

Order confirmations: the transactional win that gets squandered

Order confirmations have the highest open rate of any email a store sends (60–80% is normal). They're also the one email every customer expects and looks for. And yet, out-of-the-box configuration on most platforms sends them from a shared address ("orders@shopifyemail.com" or similar), with the store name only in the display field.

Consequences:

  • Customer sees an unfamiliar sender and doesn't recognise it as their order.
  • Shared sender reputation means your order confirmations inherit whatever is happening in the platform's shared pool.
  • Your domain gets no credit for the high engagement these emails generate — because the mail isn't authenticated from your domain.

The fix is the sending-domain configuration every platform supports but most stores skip. On Shopify, configure a custom sending email under Settings > Notifications and set up the sender authentication. On Klaviyo, add your sending domain and CNAME records. On Omnisend, configure dedicated sending. The result: order confirmations come from orders@yourstore.com, signed by your domain, building your reputation.

Abandoned cart: the Promotions problem

Abandoned-cart emails are marketing messages by character but triggered-transactional in function. They carry product images, prices, a strong CTA, and urgency language ("your cart is about to expire", "still thinking about it?"). Every one of those elements pushes Gmail toward Promotions.

Gmail tab-classifier signals that push cart emails toward Promotions:

  • Product grid with prices and buy buttons.
  • Subject lines with emoji and urgency ("❤️ your cart is waiting").
  • Heavy use of tracking pixels and click wrappers.
  • Consistent send pattern at fixed intervals after cart abandonment.
  • Unsubscribe and marketing footer.

A cart-recovery template that lands in Primary

  1. Subject line: simple and text-forward. "A question about your order" or "One thing about the [ProductName] you looked at" outperforms "Your cart is expiring!"
  2. From: a human name at your store, not "Support" or "No-reply".
  3. Body: shorter than the default. 60–120 words. One product image, not a grid. Text-heavy.
  4. CTA: one link, styled as text or a subtle button. Not a full-width brightly-coloured button.
  5. Second-email in sequence: even more text-forward. Third email (if any): plain-text only, no images. Each step toward text raises Primary placement.
Test your cart-recovery sequence before the next sale

Subject lines that worked six months ago don't necessarily work now. Run each email in the cart-recovery sequence through Inbox Check before the next promotional window. Fix the Primary-vs-Promotions split before you spend the send on real customers.

Shipping and delivery notifications

Shipping notifications ("your order has shipped", "out for delivery", "delivered") are transactional. They come from the e-commerce platform or from the shipping integration (ShipStation, Shippo, EasyPost). Each has its own sending configuration and reputation.

Common failure modes:

  • Shipping integration sends from "noreply@shipstation.com" instead of the store's domain. Unfamiliar sender, lower recognition.
  • Tracking link rewriting by Microsoft Defender or Apple Mail breaks the link or inflates click metrics.
  • "Out for delivery" emails arrive after the package has already been delivered, damaging engagement signals.

Most modern shipping integrations support custom-branded sending. Use it. The shipping update should come from the same sender as the order confirmation, for a consistent customer experience and a single sender reputation building over time.

Review requests and post-purchase

Review-request emails send 5–14 days after delivery, often through a review platform (Yotpo, Judge.me, Loox, Okendo). They're marketing in character but rely on the customer's order-related engagement to land in Primary. Common mistakes:

  • Review platform sends from its own domain, not the store's.
  • Subject line pattern ("Rate your recent purchase") is too consistent across stores; filters pattern-match.
  • Multiple review requests to the same customer when they haven't responded to the first.
  • Review request immediately followed by a promotional email for a related product.

Fixes: configure branded sending on the review platform. Vary subject lines. Limit to 2 review requests maximum, 7 days apart, then stop. Separate the review-request send from promotional sends by at least 48 hours.

Promotional sends and list growth

The promotional side (newsletter, campaign sends, flash sales) is where most small stores concentrate their email effort. It's also where the biggest deliverability mistakes happen.

  • List growth via pop-up alone. Pop-ups collect emails from people in a hurry who may never open the first email. Gmail specifically penalises senders whose initial welcome email goes unopened. Use double opt-in or at minimum confirm sign-up with a clear first send.
  • Buying or scraping lists. Kills deliverability permanently. Not worth considering.
  • Sending to old customers who haven't engaged in 12+ months. Re-engagement sends to stale lists are a top cause of deliverability damage. Segment out non-openers, send a single re-engagement, remove those who don't engage.

The marketing-subdomain split

Separate promotional mail from transactional: marketing.yourstore.com for campaign sends, orders.yourstore.com for transactional. Each has its own reputation. A promotional campaign that accidentally triggers complaints doesn't drag order-confirmation delivery down with it.

Black Friday / Cyber Monday and peak sending

Q4 volume spikes for e-commerce. Stores that send 4x–8x normal volume between November 15 and December 20 routinely see inbox placement drop 10–20 points during the peak. The fix is warm-up: start raising volume in October (occasional sale, early access for subscribers, Thanksgiving content) so the November spike isn't a cold start.

Through the BFCM window:

  • Segment aggressively. Send to engaged subscribers (last 90 days opener/clicker) before broadcasting to the full list.
  • Monitor complaint rates daily; pause sending if complaint rate exceeds 0.2%.
  • Seed-test every major campaign template before sending.
  • Keep order-confirmation and shipping-notification subdomains separate from the campaign subdomain so reputation damage from promotional sends doesn't leak into transactional.

FAQ

We're on Klaviyo. Is that enough, or do we need our own sending domain?

Klaviyo supports (and recommends) sending from your own domain. Configure it. Without it, you're on Klaviyo's shared pool and inherit its reputation issues alongside everyone else on the platform.

Shopify's default order confirmation is fine — why change it?

"Fine" here means "it works for most customers most of the time." The 5–15% of orders where the confirmation lands in spam or promotions translates directly to support tickets ("did my order go through?") and customer-experience problems. Branded sending is a 30-minute setup that eliminates most of it.

What's the right cadence for abandoned-cart emails?

Three emails maximum: 1 hour after abandonment (short reminder), 24 hours (with incentive if appropriate), 72 hours (final). After 3 emails, the customer who hasn't bought isn't going to, and further sends generate complaints that damage reputation.

Does our email platform's 'open rate' tell us what we need to know?

Not since Apple MPP. Open rates are inflated and unreliable. Click-through rate, conversion rate, and inbox-placement rate from a seed test give you the actual picture. Most small stores overestimate their deliverability by 15–25 points based on open rate alone.
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