Built on CoreFrame

CoreFrame Mail

Marketing email for companies that run several brands, built to keep audiences clean, campaigns on-brand and sending under control.

One instance for your company, every brand inside it kept properly apart, and a sending engine designed around the failures that cost trust.

01

Work brand by brand

Every brand has its own senders, reply-to address, default subject and delivery account. People see only the brands they belong to.

  • Switch the active brand from anywhere in the app.
  • Roles decide what someone may do; brand membership decides where.
  • Each brand sends through its own delivery account and rate limit.
  • Provider keys are vault references, never shown on screen.
Product illustration. A brand switcher listing three fictional brands, with the settings of the active brand.

02

Keep the audience clean

Contacts, groups and subscription state in one brand-scoped place, with imports that tell you exactly what happened.

  • Import CSV, XLS or XLSX files with column mapping, in the background, with a result report.
  • One contact per email address per brand. When duplicates merge, unsubscribed wins.
  • A suppression list for unsubscribes, bounces, spam complaints, blocks and manual entries.
  • Protected system groups, and subscription changes recorded with their reason.
  • Exports delivered as expiring, access-checked downloads.
Product illustration. An import screen mapping file columns to contact fields, with a result summary showing merged duplicates.

03

Write once, stay on-brand

Templates built visually or in HTML, personalised with merge tags and filled with each brand’s defaults.

  • Preview any template with a sample contact before it is used.
  • Merge-tag values are escaped, so contact data cannot break the layout.
  • Pull in remote content from approved hosts only, resolved once when sending starts.
  • Manage attachments and images in a shared library.
  • Copy a template, with its attachments, to another brand you work on.
Product illustration. A template with merge tags next to its preview for a sample contact.

04

Send with control

Schedule a campaign or send it now, watch it progress and stay in charge while it runs.

  • Send a test before the real thing.
  • Content and audience freeze when sending starts, so nothing changes mid-send.
  • Pause, resume or cancel. Cancelling stops new sends within one cycle.
  • Resend only to recipients that were not reached.
  • One-click unsubscribe, List-Unsubscribe headers and a web view in every message.
Product illustration. A campaign in progress with a progress bar and pause and cancel controls.

05

Repeat without repeating yourself

Recurring campaigns that run on a schedule and remember who has already received them.

  • Schedule by time and time zone.
  • Send once per contact, unless you deliberately choose otherwise.
  • An explicit rule for occurrences missed during downtime.
  • A full history of every occurrence and what it sent.
Product illustration. A weekly schedule with send-once and missed-run rules.

06

See what happened

Per-campaign results, a dashboard over time and an operator view for anything that needs attention.

  • Delivered, opens, clicks, bounces, unsubscribes and failures per campaign.
  • A dashboard with sends, delivery and engagement, this month against last.
  • A timeline of what each contact has received.
  • Recipient-level export for any campaign.
  • Queue depth, stuck sends and unclear outcomes, listed for a decision.
Product illustration. Bars for delivered, opened, clicked, bounced and unsubscribed, with invented sample numbers.

07

Connect what you already run

Sign-up forms, CRM updates and list syncs flow in without manual exports.

  • Signed sign-up webhooks and APIs for subscriptions and email changes.
  • Scheduled contact sync from Airtable that never empties a group on failure.
  • Delivery events from SendGrid, verified by signature and applied once.
  • API clients managed in the app, with scoped, per-brand tokens.
Product illustration. A list of incoming webhook, sync and delivery events with their verification state.

The sending engine

Built for large lists and busy days.

Sending is split across background workers that scale out horizontally. Every recipient is claimed exactly once, every brand keeps to its own rate limit, and every outcome ends in a clear state.

  1. 01

    Claimed once

    Workers take recipients in atomic batches, so adding workers never causes double sends.

  2. 02

    Fair throttling

    Campaigns of the same brand share its rate limit and progress side by side.

  3. 03

    Bounded retries

    Temporary provider errors back off and retry a limited number of times, then stop.

  4. 04

    Clear outcomes

    Sent, skipped, failed or unknown. Nothing is left in between.

Moving from an existing system

Bring what matters forward. Leave the noise behind.

Each installation moves over one company at a time, after a rehearsal on a copy of its real data and a reconciliation report you can check.

Comes along

  • Users and their brand memberships
  • Brands and delivery settings
  • Contacts with subscription state
  • Unsubscribes, bounces and spam suppressions
  • Groups and memberships
  • Templates, images and attachments
  • Recurring campaigns and who already received them
  • Integration settings and API clients
  • Past campaigns, as a read-only archive

Stays behind

  • Per-recipient send history
  • Raw delivery, open and click event logs

FAQ

Frequently asked questions

Where does it run?

Each company gets its own application instance and its own database. Brands inside a company share that instance and are kept apart by brand membership.

Which email provider does it use?

CoreFrame Mail delivers through SendGrid, with a separate account and rate limit per brand. Delivery sits behind its own interface inside the product.

Can we bring our existing templates?

Yes. Templates from the system CoreFrame Mail replaces import unchanged, with automated checks that they render the same. Other sources are handled case by case.

Do our existing integrations keep working?

Sign-up webhooks, subscription and email-change APIs keep their paths, payloads and responses, so existing callers keep working while they move to scoped tokens.

What does it cost?

Pricing depends on your setup. Get in touch and we will talk about scope.

Running marketing email across several brands?

See CoreFrame Mail with your own workflow in mind: your brands, your lists, your integrations.

Request a demo