Features

Everything you need to run email properly

No feature theatre: each item below is implemented in the product today. Where something is still on the roadmap, it says so.

Audience

Contacts that stay clean

One row per person per workspace, enforced by the database rather than by convention.

  • Addresses are normalized and deduplicated on a unique constraint, so the same person cannot be imported twice.
  • Custom fields hold whatever your business needs — plan, revenue, signup source — and are queryable in segments.
  • Consent status, timestamp and source are stored per contact as GDPR evidence.
  • Soft deletion keeps campaign history intact; separate anonymization satisfies erasure requests.
  • Every contact is scoped to a workspace and isolated from every other workspace by default.
Import

CSV imports that survive big files

Uploads go straight to private storage and are processed in the background — the browser never waits.

  • Map CSV columns to contact fields, with automatic detection of common header spellings.
  • Preview the first rows before committing to anything.
  • Rows are validated and upserted in batches, so a 500,000-row file uses the same memory as a small one.
  • A bad row is recorded with its line number and reason instead of aborting the import.
  • Suppressed addresses are skipped automatically, so an old export cannot resurrect an unsubscribe.
Targeting

Segments with real logic

Nested AND/OR groups over attributes, custom fields, list membership and past engagement.

  • Operators for text, numbers and dates, plus subscription state, list membership and campaign engagement.
  • Target people who opened a specific campaign — or who did not.
  • A live count shows how many contacts match before you save.
  • Rule definitions are validated against an explicit allow-list of fields, never run as raw input.
  • Membership is computed in the background so campaign preparation is instant, not a re-evaluation.
Content

An AI agent that writes campaigns

Describe the business, audience, offer and call to action. Get a complete, editable campaign.

  • Returns at least three genuinely different subject lines, preview text, headline, sections and a plain-text version.
  • The model returns structured copy only — never HTML, CSS or code.
  • A deterministic transform turns that copy into the email, so the same brief always produces the same layout.
  • Brand voice, language, mandatory and prohibited information are all part of the brief.
  • Usage is tracked per workspace and metered against your plan’s monthly AI allowance.
Design

A visual editor built for email

Block-based editing that produces table-based HTML real inboxes render correctly.

  • Headings, text with markdown, buttons, images, dividers, spacers and sanitized custom HTML.
  • Desktop, mobile and plain-text previews rendered by the same code that sends the campaign.
  • Autosave with optimistic concurrency, so a second tab cannot silently overwrite your work.
  • Link validation catches broken and unsafe URLs before you send.
  • Merge tags personalize each message; values are escaped so a contact field cannot inject markup.
Delivery

Reliable, provider-backed sending

Each recipient gets an individual message — never a shared BCC envelope.

  • Schedule a campaign or send immediately, with an explicit confirmation step before anything goes out.
  • The recipient list is frozen into an immutable snapshot before the first message leaves.
  • Delivery is paced to your provider quota and retried on transient failures.
  • Every message carries List-Unsubscribe and List-Unsubscribe-Post headers.
  • A provider interface keeps the door open for other delivery backends.
Reporting

Analytics that do not slow down

Delivery events are stored append-only and partitioned by month; dashboards read rollups.

  • Sent, delivered, opened, clicked, bounced, complained, unsubscribed and failed — all tracked.
  • Per-link click performance for every campaign.
  • Unique opens and clicks counted separately from totals.
  • Daily rollups per campaign and per workspace, recomputed idempotently.
  • Opens are labelled as approximate, because image proxies make them so.
Workflows

Automations

Event-triggered journeys stepped by the background worker.

  • Triggers on contact creation, list subscription, segment entry and campaign engagement.
  • Steps for waiting, sending, tagging, list membership and conditional branching.
  • Each run advances one step at a time and sleeps until its next scheduled wake-up.
  • Re-entry rules stop a contact being caught in the same journey twice.
  • Journey authoring is on the roadmap; the schema, run engine and queue are already in place.

Deliverability and compliance

The parts that decide whether you reach the inbox

Consent and suppression are enforced automatically, so they hold even if something in the interface misbehaves.

One-click unsubscribe

RFC 8058 compliant: mail clients can unsubscribe without opening a browser, which Gmail and Yahoo now require of bulk senders. Tokens are signed and non-enumerable.

Automatic suppression

Hard bounces and complaints add the address to a permanent workspace suppression list. Suppression is re-checked in the moments before each send, not only when the campaign was built.

Consent evidence

Status, timestamp and source are recorded per contact, and imports make consent an explicit, auditable choice rather than a silent default.

Domain authentication

Add your domain and publish the generated DKIM, SPF and DMARC records. Live sending is refused until the domain is verified and the sender address belongs to it.

Data subject rights

Export every contact with its consent trail as CSV, or anonymize a contact in place so aggregate history stays valid while personal data is gone.

Retention control

Raw delivery events have a configurable retention window and are purged nightly. Counters and daily rollups survive, so reporting is unaffected.

Platform

Reliable, and built to scale

Isolated by default

Every workspace’s data is scoped and kept apart from every other, so a bug elsewhere in the product cannot leak it.

Teams and roles

Owner, admin, editor and viewer roles, backed by organizations, so access matches what each teammate should touch.

Built to scale

Imports, sending and reporting are designed to hold up at high volume — the same experience at 1,000 contacts and at 1,000,000.

See it with your own list

The free plan runs a real campaign end to end — import, segment, generate, send and report.