Email infrastructure
without the ESP tax

Bring your own mailing backend (SES, Postmark, SendGrid, Cloudflare) for email delivery at wholesale rates with no markup from us.

AWS
Amazon SES
US-East-1 • Connected
Active
Active Subscribers
254,039
Est. Platform Savings
$600+
Recent Campaigns
favorite
Welcome Sequence
Delivered via SES
shopping_cart
Cart Abandonment
Delivered via Postmark
dns

Bring Your Own Backend

Connect Amazon SES, Postmark, Cloudflare, or Sendgrid directly. Keep your deliverability reputation and pay them directly for usage—no markup from us.

groups

Fair subscriber tiers

We price by active subscribers so the model is predictable—but the numbers are a fraction of legacy ESPs. Scale from tens of thousands to millions without the usual sticker shock.

account_tree

Unified Automations

Trigger marketing workflows from real-time product events. Send a newsletter or a password reset from the same dashboard with total visibility.

hub Multi-backend routing

Split sending across providers

Weight traffic with percentages for gradual rollouts or cost optimization—or assign whole segments to the backend that fits. One campaign, multiple pipes, without duplicating lists or templates.

  • pie_chart Percentage splits—send 80% through SES and 20% through Postmark (or any mix) for warm-up, failover, or experiments.
  • segment Segment rules—route VIPs, geographies, or product lines to the provider with the right reputation and pricing.
  • swap_horiz Change without rewiring—adjust routes as volumes or contracts shift; subscribers and automations stay in one place.
Send routing Live
Weighted default Applies when no segment matches
SES 72%
Postmark 28%
Segment overrides
Segment Enterprise & paid trial
→ Postmark
Segment EU subscribers
→ SES (eu-west-1)

Rules are evaluated in order; unmatched contacts use the weighted default above.

layers Versioned content

A/B Test Email Content

Every email and template keeps a full version history. Run A/B tests with multiple variants of the same message—split traffic, watch performance, and roll forward to the winner while older revisions stay auditable.

  • history Immutable versions—each publish is recorded so you always know exactly what left your stack and when.
  • compare_arrows Parallel A/B variants—subject lines, layouts, or CTAs side by side on a share of recipients, not separate one-off campaigns.
  • trending_up Pick winners with clarity—compare opens, clicks, and downstream goals on tied versions, then promote the best performer in one step.
Template
Cart recovery · Message 1
A/B live
Active test · v7 50 / 50 traffic
Variant A
Subject: “Still interested?”
41.0% open
5.2% click · Leading
Variant B
Subject: “Your cart is waiting”
38.2% open
4.1% click
Earlier versions
v6 · single-arm (archived) v5 · pre-localization v4 · legacy CTA

Variants reference the same template id; analytics stay comparable across the test.

view_quilt Block editor

Build emails from blocks—not brittle HTML

Stack hero, text, media, columns, and product modules in a visual canvas. Every block has clear controls, so marketers can ship and iterate fast while developers keep layout and data bindings predictable.

  • widgets Everything you send is modular—add, duplicate, or remove sections for promos, long-form stories, or transactional detail without starting from scratch.
  • drag_pan Reorder in clicks—drag blocks into place, nest columns, and tune spacing while the structure stays accessible and email-client safe.
  • preview Edit where you preview—tweak copy, links, and assets inline with a live view so there’s no guessing what subscribers will see.
Template · Editor Autosaved
Blocks
image Hero + headline
notes Rich text
view_column Two columns
smart_button Buttons · CTAs
horizontal_rule Divider
+ add from library
Spring launch sale
Shop the drop

Rich text, tables, merch grids, and custom modules—same editor for campaigns and transactional templates.

auto_awesome Built-in AI

Draft campaigns and layouts with a quick chat

Describe what you need—or point at a URL—and get a structured email draft with copy and layout you can refine. From launch announcements to lifecycle drips, the assistant works inside your existing template workflow, not in a separate tool.

  • edit_note Natural-language briefs—ask for tone, audience, and goal; iterate in the same pane until the message matches your brand.
  • link Source from the web—turn a blog post, changelog, or doc link into a feature-launch email with headings, CTAs, and key takeaways pulled in context.
  • palette Design-aware output—get section suggestions and visual hierarchy matched to your brand kits, then tweak blocks like any other template.
auto_awesome AI composer
Template draft
Create an email for this feature launch from this blog post: https://example.com/blog/ai-summaries-launch
auto_awesome Generate Saved as v1 · editable blocks below
Preview
Subject
Meet AI Summaries—answers from your docs in seconds
Read the launch post Try in app

You stay in control—approve sections, swap modules, or run an A/B variant from the same draft.

event_list Event-driven journeys

Track what contacts do—then email on cue

Capture product and lifecycle events per contact as they happen. Use that stream to trigger automations: abandoned carts, trial milestones, feature adoption, or anything your app can describe—without brittle list imports.

  • timeline Per-contact timelines—see orders, page views, subscription changes, and custom events in one place for each person.
  • cloud_upload Events from your stack—send structured events from your backend or client with your existing identifiers so automations always target the right profile.
  • bolt Automations that listen—when an event fires (or after a delay), enroll contacts in sequences, one-off sends, or branching flows tied to their behavior.
Contact
Jordan Lee · jordan@example.com
12 events / 24h
Recent events
cart.abandoned $94.20 · 3 items
14 min ago
page.viewed /pricing · 42s
1 hr ago
subscription.trial_started Pro · 14-day
Mon
bolt Automation enrolled
When cart.abandoned · Then Cart recovery (wait 2h → 3 sends)

Filters and delays combine events into segments—you define the rules, we handle enrollment and sends.

filter_alt Segments

Advanced audiences—by chat or by rules

Slice contacts with nested logic on properties, events, campaigns, and time windows. Start from a conversation when that’s faster, then switch to the visual builder to fine-tune AND/OR groups before you send or enroll an automation.

  • chat AI segment chat—describe the audience you have in mind; we translate it into criteria you can review, rename, and save as a reusable segment.
  • tune Rule builder—point-and-click conditions, nested groups, negation, and date math—full control without writing queries by hand.
  • group Use everywhere—the same segment powers broadcasts, drip enrollment, split tests, and backend routing without duplicate definitions.
Ask AI Rule builder
Conversation
Trial users on Pro who opened ≥2 onboarding emails but haven’t purchased—last 21 days.
Done. Segment “Trial · engaged · no buy” · 4,280 contacts . Open in builder to adjust.
Rule builder
ALL of:
plan = pro_trial
event email.opened count ≥ 2 (campaign: onboarding)
event order.completed does not exist (30d)
AND last activity ≤ 21 days

Duplicate, version, and compose segments—exclude lists, cap frequency, or require consent flags in the same UI.

contacts Contacts

Three lists—one clear billing number

Every profile lives in exactly one bucket: Active (ready to message), Unverified (still proving they want mail), or Flagged (held back by your rules). Only Active subscribers roll into your plan—everything else stays visible without inflating your bill.

  • view_list Active, Unverified, Flagged—purpose-built lists so you know who can be mailed today, who needs verification, and who is sidelined.
  • receipt_long Billing follows Active only—your subscribed tier tracks reachable subscribers, not rows waiting on proof of consent or abuse review.
  • shield Your Flag rules, your signal—write conditions for suspicious domains, regions, velocity patterns, or anything you can express in data—then auto-flag before bad actors dilute engagement and hurt your deliverability.
Contact status Billable: Active
verified Active
251,400
Counts toward plan
pending Unverified
3,820
Awaiting confirmation
flag Flagged
214
Rules + manual review
Example flag rules
Rule Disposable or throwaway email domain list match → Flag new signups automatically.
Rule >6 signups from the same region within 15 minutes → Flag for fraud review.
Rule Email local-part matches regex (e.g. sequential ^user[0-9]{3,}$) → Flag bot farm pattern.

Unverified contacts graduate to Active after they complete your verification path; Flagged contacts never mail until you clear or adjust the rule outcome.

insert_chart Reporting

Delivery stats that trace back to real people

See sends, deliveries, opens, clicks, bounces, complaints, and unsubscribes in one place—rolled up for campaigns and messages, then drillable down to the individual contact who received each event.

  • stacked_bar_chart Operational clarity—spot volume, engagement, and hygiene issues early with time ranges, templates, and campaigns side by side.
  • person_search Contact-level truth—open a profile and replay the full story: which sends landed, when they engaged, and whether a bounce or spam complaint was recorded.
  • mail Per-message diagnostics—tie metrics to a specific message id, backend, and template version so engineering and growth stay aligned.
Reporting · Last 7 days All campaigns
Sends
128.4k
Opens
40.8%
Clicks
5.1%
Bounces
0.35%
Complaints
0.02%
Tied to contacts
alex@company.com
Spring promo · Msg es_8f2…c91
Delivered Opened Clicked ×2
j.park@example.net
Onboarding d2 · Msg es_3aa…7fd
Delivered Soft bounce

Slice by list, segment, tag, or ESP backend—every row stays anchored to a contact and a concrete send.

The math is simple.

Your audience size sets a clear platform tier—not a runaway bill. Pair that with your own sending provider and you keep deliverability while paying a fraction of all-in-one marketing suites.

  • check_circle Transparent tiers by subscriber count
  • check_circle Wholesale sending rates (via AWS/others)
  • check_circle One unified interface for all emails
Platform
10k Subs
100k Subs
1M Subs
Mailchimp
$135/mo
$700/mo
$4,500/mo
Klaviyo
$175/mo
$1,200/mo
$12,000/mo
EventSend
$49/mo
$99/mo
$249/mo

* Plus your backend sending fees (e.g. $0.10 per 1k emails via SES)

Own your infrastructure.

Connect your preferred email provider in minutes. Switch providers anytime without losing your data or automations.