Filed under
Email Marketing
Published
Email fixes the two problems killing ecommerce profitability, rising CAC and falling retention, by turning one paid click into an owned subscriber you can convert for pennies instead of paying for 10 ad impressions per sale.
Email marketing best practices
Organised by the order you'd build a programme: capture, automate, broadcast, then optimise.
The core model
Email exists to fix the two problems killing ecommerce profitability: rising CAC and falling retention. The mechanic is simple. Pay for one click, capture the email, then convert with sends that cost pennies instead of paying for 10 ad impressions per sale.
Four things matter, in this order:
List growth. New subscribers are the warmest they'll ever be, and existing ones churn constantly. Inflow rate beats list size. A 10k list adding 2k/month will out-earn a 20k list adding 250/month.
Flows. Automated revenue triggered by behaviour. Target ~50% of email revenue.
Campaigns. The other ~50%. Manual sends at consistent cadence.
Deliverability. A half-pillar because it's easy: send good content to engaged people and it takes care of itself.
Targets: email at 30-50% of total store revenue (40% is the goal, above 55% means acquisition is underpowered), 50%+ opens, sub-0.3% unsubscribes, sub-0.01% spam complaints.
List growth
Four capture mechanisms. The pop-up drives most of it; the others are five-minute setups you do once.
Post-purchase opt-in. Pre-checked marketing checkbox at Shopify checkout. Lowest-hanging fruit on the list.
Sign-up pages and embeds. Full sign-up page linked in footer and social bios, plus embedded forms in footer/homepage. Passive but free.
Pop-up forms. This is where the money is. New visitor conversion sits under 2%, so without a pop-up you monetise almost nobody. The maths from one real example: lifting form conversion from 2.5% to 8.75% took welcome flow revenue from $7k to $25k/month with zero changes to the emails. The form is upstream of everything.
Pop-up rules:
The offer is the biggest lever. Test % off (AOV under $100), $ off (AOV over $100), free shipping, free gift, or a mystery discount. Ask yourself: would I trade my email for this?
One input per step. Email first, then SMS on the next step ("finish claiming your discount").
4-12 second delay, instant load, covers 75%+ of screen, under 10 words of copy, offer visually dominant.
Never set and forget. 6-12% submit rate is the benchmark; keep testing towards 10%+. Test order: offer, form type (quiz and micro-commit formats tend to win), close mechanism, time delay, imagery, copy, colours. Judge time-delay tests on total submits, not conversion rate.
Flows
Automated sequences triggered by behaviour. Build these seven, roughly in intent order.
Welcome flow. The CAC fix paired with the pop-up. Non-negotiables: double opt-in off, first email fires instantly, minimum 3 emails spaced 1-2 days, discount reminder in every email, one text-based email, one last-chance email. Structure: deliver the incentive + brief brand intro, then 1-5 educational "filler" emails (one benefit, how it's made, us vs them, testimonials, founder note), then last-chance urgency, then a text-based support email from the founder.
Site abandon (Active on Site, no product view). Lowest intent. 1-2 emails showing the range and offering help.
Browse abandon (Viewed Product, no add-to-cart). 4 emails over 3-4 days: dynamic product block + social proof, reminder + 3 FAQs max, discount, text-based founder close.
Cart abandon (Added to Cart) and checkout abandon (Started Checkout). Highest intent; same emails work for both if pressed for time. 4 emails: friction-free reminder with dynamic block above the fold and shipping info, text-based personal check-in with social proof, discount-led email, text-based last chance with a PS offering support. Founder-voice text emails are the closer here.
Post-purchase. Customer is in their highest buying window. Email 1: founder thank-you, mission, gentle cross-sell. Email 2: how to use the product (reduces returns, builds trust). Add order-on-the-way, cross-sell, or founder check-in emails if relevant within 14 days.
Replenishment (consumables). Email on the expected reorder date, then a flash discount 7 days later if no order.
Winback. Triggered off a segment (e.g. ordered 90-150+ days ago, nothing since). Emotional "we miss you" at day 0, discount at day 7, last-chance urgency at day 10.
Flow optimisation shortcut: don't A/B test 40 flow emails directly. Test angles in campaigns where you get data in hours, then port the winners into the relevant flow. A winning education email goes into welcome; a returns-policy email goes into cart abandon. The one flow-native test worth running is time delays, both trigger-to-first-email and between emails.
Campaigns
Cadence. 2-4x per week is the band. Below 2x the list forgets you; above 4x (until you're very large) unsubscribes climb and revenue plateaus. Scale with size: 2x/week under $50k/mo, 3x at $50-250k, 4x at $250k-1M, 5-6x above $1M. The point is habit formation and mental real estate: even unopened emails keep the brand name in front of the customer.
Content mix. Five pillars, roughly evenly weighted across a month: educational, social proof, community/brand, product highlights, sales. The idea behind the email matters more than the execution. Steal shamelessly from Milled, Really Good Emails, and Email Donut rather than inventing from scratch.
Format mix. Mostly graphic-based emails for engagement and branding, with text-based emails (plain, founder-voice, looks like a friend wrote it) mixed in strategically for key sends. Text-based converts disproportionately well for sales, last-chance, and launch moments.
Education + positioning sells without discounting. Teach the customer something about the problem or process, position the product as the solution, and you earn the trust points a purchase requires. This protects margin.
Copy
You have roughly 3 seconds of attention. The framework is S.C.E.:
Skimmable. No text blocks. Line breaks, bolded main points as headlines, body copy only as support. Optimise for the skim, not the read.
Clear and concise. One takeaway per email. Three points get 20% of the attention each; one point gets remembered. 1-2 scrolls max.
Engaging. Punchy, information-dense, occasionally funny. If the reader learns something every open, you've built the habit.
Infographics are the cheat code: checklists, icon grids, comparison charts, timelines, feature diagrams. They hit all 3 principles at once and replace copy nobody would read.
Subject lines and preview text. Their job is priming sales, not driving opens; opens should come from sender-name trust. Identical emails have produced 3x revenue differences on subject line alone, so test SLs against revenue, not open rate. Formula: 2-5 words, title case, curiosity-led, optional 1-2 emojis. Preview text: one sentence building on the SL.
Design
The email has one job: the click.
Button above the fold, always. Many readers never scroll.
Large, centred, high-contrast buttons. Thumb-friendly.
Repeat the CTA 2-3 times. Individual buttons per product, then a general "Shop All" at the end (worth ~25% more clicks on product emails).
Footer with category buttons as a catch-all for scrollers who didn't find their product.
Simple beats complex. Clear sections, smooth transitions, highlighted main points.
Branding congruent with site and ads. Mismatched email design leaks trust built elsewhere.
Upload hygiene: slice designs into sections, compress, add alt text and a link to every slice.
Deliverability
Your sending domain has a credit score. Engagement is the only input that matters: opens, clicks, bounces, spam complaints.
Technical setup (SPF, DKIM, DMARC, dedicated sending domain) is mostly handled by Klaviyo; verify with a domain checker like GlockApps.
Warm up new domains with low volume to engaged users, then ramp.
Send campaigns only to an engaged segment. Subscribed AND (opened, active on site, or ordered) within 90 days is the standard starting definition. Widen the window if opens exceed 60%, tighten if they drop towards 40%. Target 50-60% opens.
Suppress monthly: 5+ receives with zero opens in 365 days, 3+ bounces, or any spam complaint. This also cuts the Klaviyo bill.
Segmentation
Don't overcomplicate it. Broad sends to a large engaged list beat hyper-targeted sends to slivers 99 times out of 100. Six segments cover almost everything:
90-day engaged: the default campaign audience for ~90% of sends.
High-potential purchasers (active on site last 30 days, no order): 1-2 extra sends per month.
Winback potential (ordered 90-150 days ago, nothing since): 1 extra send monthly or the winback flow trigger.
VIPs (4+ lifetime orders): quarterly exclusive offers plus a thank-you flow.
Product/category interest: targeted launches and restocks.
Suppress list: never send.
Anything more granular waits until ~$1M/month or a genuinely specific use case.
A/B testing
Basics drive 90% of results; testing drives the last 10%. Don't optimise a programme with missing flows.
Highest-leverage tests in rough priority order: flow time delays, offer, graphic vs text-based, send time (11am-12pm tends to win; test 9am, 12pm, 2pm, 4pm), categories vs individual products, subject lines (judged on revenue), long vs short form, price shown vs hidden, sender name, CTA text and placement.
Ensure volume before calling a winner. Run a test across multiple sends if one send won't reach significance.
SMS
The same playbook, compressed and more expensive per mistake.
Frequency: 1-2x per week max. Unsubscribes punish over-sending far harder than email.
Transactional content only: sales, drops, restocks, offers. No nurture or social proof.
Stay under 160 characters; one character over doubles the cost. Skip emojis (they eat 35-50 characters of encoding) and MMS (2-3x the cost, rarely 2-3x the revenue).
Flows: 1-2 message welcome (discount + expiry reminder), single browse abandon, single cart/checkout abandon (multiple cart abandon texts are illegal in the US), optional winback at ~120 days.
Grow the list via the pop-up second step and the pre-checked checkout box.
Send windows: 11am-2pm core, last-chance messages 6:30-7pm, nothing before 10am or after 7:30pm.

