[object Object]

A team’s email program shows declining open rates quarter over quarter and the proposed fix is “send more frequently to compensate.” That math never works. Email marketing degrades when deliverability slips, lists go stale, and personalization gets faked with a first name in the subject. The patterns that reliably move metrics are unglamorous and worth doing first.

Deliverability is a configuration problem first

SPF, DKIM, DMARC, and BIMI handle whether the inbox provider trusts your envelope. Configure all four through HubSpot’s domain manager and verify with a tool like MXToolbox before the first send:

SPF:   v=spf1 include:_spf.hubspot.com -all
DKIM:  k=rsa; p=... (HubSpot generates, you publish)
DMARC: v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100
BIMI:  v=BIMI1; l=https://example.com/logo.svg; a=https://...

Send from a real subdomain like news.example.com, never from a free webmail address. Warm a new sending subdomain over 4 to 6 weeks starting at low daily volume.

Segmentation that respects the inbox

Active lists filter by property and behavior together. The right segmentation pulls the recipients most likely to engage with this specific message, not the largest possible list:

List: Q2 enterprise launch
  Filter: Lifecycle stage in [Lead, MQL, Opportunity]
  Filter: Industry in [Software, Financial Services, Healthcare]
  Filter: Company employee count >= 500
  Filter: Last engagement <= 90 days
  Filter: Not opted out of product announcements

A small precise list beats a large broad list every time on engagement and on deliverability.

Personalization with depth

First name in subject is table stakes and easily faked. Real personalization uses smart content blocks gated by lifecycle, role, last interaction, or current campaign:

{% if contact.lifecyclestage == "customer" %}
  <p>You've been with us {{ contact.tenure_days }} days. Here's what's new
     for the {{ contact.plan }} plan.</p>
{% elif contact.lifecyclestage == "marketingqualifiedlead" %}
  <p>You downloaded {{ contact.last_asset }}. The companion guide is here.</p>
{% else %}
  <p>Most teams in {{ contact.industry | default("your industry") }} start
     with this overview.</p>
{% endif %}

Test smart content thoroughly before sending. A failed condition shows everyone the wrong block.

A/B testing that stays honest

Test one variable at a time. Hold sample size large enough to reach significance — for most lists, that means at least 1,000 recipients per variant. Set a stop date and accept the result rather than chasing significance with a smaller follow-up:

Test: Subject line
  A: "How {{company.name}} could move on Q2"
  B: "Q2 readiness checklist for {{contact.role}}"
Sample: 1,500 per variant
Significance threshold: 95%
Stop date: 7 days after send
Winner: deploy to remaining 70% of list

Lifecycle marketing instead of batch sends

Trigger sends from lifecycle stage transitions, not from a quarterly campaign calendar. Each stage gets its own cadence and message bank:

Subscriber:  educational, weekly, broad topics
Lead:        category-specific, biweekly, problem framing
MQL:         offer-focused, weekly, demo + content asset
SQL:         AE-led, sequence in HubSpot Sales Hub
Customer:    product, monthly, expansion + best practice
Champion:    advocacy, quarterly, beta access + reference

A contact who transitioned from MQL to SQL last week should not also receive the weekly MQL newsletter. Build suppression into the lifecycle workflow.

Engagement decay and list hygiene

Contacts who have not opened in 18 months hurt your sender reputation. Tag, suppress, and remove from active campaigns. Hard-delete on a retention-policy cadence:

Sweep: monthly
  Tag dead = no engagement in 18 months
  Suppress dead from new sends
  Remove dead from active campaign lists
  Hard-delete after retention window

What to do this week

Verify SPF/DKIM/DMARC, audit your top sending lists for staleness, and build one smart-content email gated by lifecycle as a pilot before scaling personalization across the program.

[object Object]
Share