Email Marketing

Email marketing guide

Everything in the email product, in the order you will actually use it — from verifying a sending domain to reading what a campaign did afterwards.

Audiences & segments
Campaigns
Automations
Deliverability

Overview

Email marketing in Brainito is organised around four things: contacts (the people), audiences and segments (who a message goes to), templates (what it looks like) and campaigns and automations (when it sends). Everything else — senders, suppressions, reporting — exists to serve those.

If you are setting up for the first time, do it in this order. Each step depends on the one before it, and skipping the first is the most common reason a first send lands in spam.

  1. 1

    Verify a sending domain

    Without this, inbox providers cannot confirm your mail is really yours.
  2. 2

    Import your contacts

    A CSV upload, a store sync, or the API.
  3. 3

    Create an audience

    A list you can send to, either fixed or rule-based.
  4. 4

    Build or pick a template

    Use the visual builder or start from the template library.
  5. 5

    Create a campaign and review it

    The review step tells you what will really happen before you commit.

Workspaces & members

A workspace is a tenant: its own contacts, audiences, campaigns, senders and billing. Agencies have one workspace per client, plus their own.

Owners can add members with a role. An invited person receives an email with a link straight into that workspace. If someone belongs to more than one workspace — for example their own plus an agency they work with — a workspace switcher appears in the header of the Email Marketing section, next to the workspace name. People with access to only one workspace never see it.

RoleWhat they can do
OwnerEverything, including billing. Exactly one per workspace.
AdminEverything operational — send, import, edit, manage members.
MemberDay-to-day work: build and send campaigns, manage contacts.
ViewerRead-only. Useful for clients who want visibility without risk.

The active workspace lives in the URL

Each browser tab keeps its own workspace, so you can open a client in one tab and your own account in another without them interfering. Switching workspaces is just navigation.

Senders & domains

Under Senders & Domainsyou add the address mail goes out as, and verify the domain it belongs to. A sender profile is a name and an email address — “Barestep Support” <hello@barestep.com>. The domain behind it has to be verified before a campaign can be scheduled.

What verification actually checks

You add DNS records at your domain provider and Brainito confirms they resolve. Three things matter, and the Check DNS panel shows each one:

RecordWhat it doesIf it is missing
DKIMCryptographically signs your mail so receivers know it is genuinely from your domain.Gmail and Outlook cannot verify you. Much more of your mail goes to spam.
Return-Path (MAIL FROM)Aligns the bounce address with your domain rather than the sending infrastructure.Weakens DMARC alignment, which reduces inbox placement.
DMARCTells receivers what to do with mail that fails the checks above.Receivers apply their own judgement, which is less predictable.

Do this before your first large send

Sending unauthenticated mail at volume damages a domain’s reputation in a way that takes weeks to recover from. The review step warns you about it, but the warning does not block the send — the decision stays yours.

Contacts & importing

Contacts arrive four ways: a CSV import, a store connection such as Shopify, the API, or a signup form. Every contact records where it came from, and the audience view shows that alongside when it joined the list.

Importing a CSV

Upload the file, map the columns, and Brainito checks each row before anything is added. Rows are split into three groups:

GroupMeaningCan you override?
AddedThe address looks fine and nobody has opted out.
Held back — deliverabilityBad syntax, a domain that does not resolve, or an address that has already failed.Yes. You may know better than we do, so these are shown for review and can be included.
Held back — consentThe person unsubscribed or reported mail as spam.No. Adding them back would not make them mailable — every send filters opt-outs regardless of which list they are on.

A fourth category, risky, is counted but never held back: disposable providers, role addresses like info@, and likely typos. These deliver perfectly well, so excluding them would make the import disagree with the sender.

Validation status never blocks a send

A contact shows as unknown until something proves otherwise. That is not a warning — it simply means we have not judged the address. Only an address a receiving mail server has actually refused is marked undeliverable and excluded.

Audiences

An audience is a list you send to. There are two kinds, and the difference matters:

TypeHow membership worksUse it for
StaticA fixed set of contacts. People stay until you remove them.An imported list, a webinar sign-up, a one-off promotion.
DynamicBacked by a segment. Membership is recalculated from your rules, so it changes on its own.“Engaged in the last 90 days”, “bought more than once”. Set it up once and it keeps itself current.

Membership is not reach

This is the single most misread number in the product. A list containing 8,757 people might send to 7,587, because unsubscribes, spam complaints, suppressed addresses and confirmed-undeliverable addresses are removed at send time.

So when you pick an audience in the campaign composer, the number underneath it reads “7,587 mailable from 8,757”. The second figure is what the list holds; the first is what a send actually reaches. If more than half a list is unreachable the hint turns amber — worth noticing before you send, not after.

The contacts view

Inside an audience, contacts are listed with the most recently added first, each showing when it joined this list and how it arrived — API, CSV import, Shopify, signup form. Note that joining a list is a different date from when the contact record was first created: re-importing an existing customer gives them a fresh join date on that list.

Segments

A segment is a set of rules that selects contacts. Build one, preview the count live, then either use it directly or turn it into a dynamic audience.

Rules combine with match all (every rule must be true) or match any(at least one). Groups let you nest the two — “engaged AND (bought shoes OR bought boots)”.

Rule types

TypeSelects onExample
MetricHow often an event happened, and whenOpened an email at least once in the last 90 days
CommerceOrder and spend historyLifetime spend over 5,000
ConsentWhether you may email or text themCan receive email
PropertyA field on the contactFirst name is not empty
TagA tag you appliedTagged “vip”
ListMembership of an audienceIs not in “Recent buyers”
DateA date field on the contactCreated in the last 30 days
LocationWhere they areCountry is South Africa
GroupA nested set of rulesUsed to mix “all” and “any”

Timeframes

Anything time-based supports twelve windows, including in the last N days, at least N days ago, between two dates, more than N days ago, and anniversary matching such as day falls in the next 7 days — which is how you build a birthday flow.

A rule about data you do not have matches everyone or no-one

If a rule filters on an event you have never recorded — say “placed order” with no store connected — it counts zero for every contact. So “placed order is at least 1” matches nobody, and “placed order is 3 or fewer” matches your entire list. The builder warns you when a rule uses an event with no data behind it. Read that warning before saving: a segment named “VIP customers” that quietly contains everybody is the kind of mistake that only shows up after you send.

Templates & the builder

Start from the template library or build from scratch in the visual builder. Templates are reusable, so the ones you use often should live here rather than being rebuilt per campaign.

The builder produces email-safe HTML, which is not the same as web HTML — inbox clients are far more limited. Building visually rather than pasting HTML is what keeps a design intact in Outlook. You can still paste your own HTML if you have it.

Personalisation

Merge tags insert contact data — {{first_name}} and similar — and resolve per recipient at send time. Always set a fallback for a tag that might be empty, or some recipients will see a greeting with a blank where their name should be.

Media

Images live in the Media library, organised into folders and reusable across templates and campaigns. Upload once and reference it anywhere.

Creating a campaign

A campaign is one message to one set of people at one time. The composer has three steps: Details, Content, then Review & Send.

Step 1 — Details

FieldWhat to enter
Campaign nameInternal only — recipients never see it. It also becomes the default UTM campaign name, so keep it meaningful.
SenderWhich verified address it comes from.
AudienceOne or more lists. Tick as many as you need — see below.

Sending to more than one list

The audience picker is multi-select. Choosing three lists sends to everyone across them, and each person receives the message once even if they appear on all three — the overlap is removed automatically, and the mailable count shown accounts for it.

You can also refine targeting: also include another list or segment, or excludeone. Excluding is how you send to “everyone except recent buyers” without building a new segment for it.

Step 2 — Content

FieldNotes
Subject lineThe one thing that decides whether it gets opened.
Preview textThe grey line after the subject in the inbox. Left empty, clients show the first words of your email instead — usually not what you want.
Email bodyPick a template, design it, or paste HTML.

Step 3 — Scheduling

Leave the schedule empty to send immediately, or pick a date and time. Scheduled campaigns can still be edited — see below.

The review step

This is the most useful screen in the product and the easiest to skip. It shows a live preview of the actual email — the exact body that will be sent, with the preview text applied — beside a summary and a set of pre-send checks.

What the checks mean

CheckWhat it is telling you
Sending domainWhether DKIM, Return-Path and DMARC all resolve. If not, it names the failing records and links to the fix.
List healthYour measured bounce rate over recent sends. Under 2% is healthy. For a first send with no history, it reports how much of the list has never been mailed instead.
Cold contactsHow many were added long ago and have not heard from you since. People who have forgotten they signed up complain rather than bounce, and a complaint costs more.
AllowanceWhether your plan covers this send today. If the send is larger than what is left, it tells you how many go now and how many wait.
Schedule contentionEverything else already committed to the same day — other scheduled campaigns and an estimate of automation volume. Two campaigns that each fit alone can still break the day between them.

Warnings do not block sending

Every check is advisory. You decide what to send and when — the only hard limit is your plan’s allowance. Blockers are listed first because they are the ones that stop a send finishing, rather than merely making it deliver poorly.

The summary also breaks down who is excluded and why — “7,587 of 8,757 will receive this”, with counts for suppressed, unsubscribed and undeliverable. If that gap surprises you, stop and look at the list before sending.

UTM link tracking

With this enabled — it is on by default — every link in the email is tagged so clicks show up in your website analytics attributed to this campaign.

FieldLeave blank and you getWhat to put
SourceemailYour brand or list name. This is the field most worth filling in.
MediumemailLeave as email — that is the analytics convention.
Campaignyour campaign name, lowercased and hyphenatedA stable name you will recognise in reports.

So a campaign called End of Summer Sale 2 with all three left blank turns https://shop.example.com/sale into https://shop.example.com/sale?utm_source=email&utm_medium=email&utm_campaign=end-of-summer-sale-2.

What is never tagged

Unsubscribe links, mailto: and tel: links, in-page anchors, and any link you already tagged yourself — your own tags always win, which is how you override a single link. Existing query strings and #fragments are preserved.

Where to see the results

UTM data appears in your own analytics — Google Analytics or whatever runs on your website — under source, medium and campaign. It does not appear in Brainito. Open and click rates shown in Brainito are tracked separately and work whether UTM is on or off.

Editing a scheduled campaign

A scheduled campaign has not sent yet, so it can still be changed. From the campaign list or its detail page, choose Edit to change the name, audience, sender, template or send time. Changes apply to the queued send — you do not need to cancel and rebuild.

Changing thisEffect
AudienceChanges who receives it. Recipients are worked out at send time, so this genuinely retargets the campaign.
SenderMust be a verified domain, or the send will be refused.
TemplateReplaces the subject and body with that template's. Leave it on “Keep current content” to change other settings without touching the email.
Send timeReschedules. Clearing it entirely returns the campaign to draft.

Once a campaign has started sending, settings are locked — retargeting something already half-delivered would change what the report means. Use Edit as a copy to branch a new draft instead.

Automations (flows)

Where a campaign is one message to everyone at once, an automation sends to one person at a time, triggered by something they did. This is usually where most of the revenue comes from, because the message arrives when it is relevant.

How a flow is built

A flow starts with a trigger, then a chain of steps:

StepWhat it does
TriggerStarts the flow — a contact is created, or an event happens such as abandoned checkout, placed order, or order fulfilled.
EmailSends one email.
DelayWaits minutes, hours or days before the next step.
ConditionSplits the path on a rule — opened the last email, spent over a threshold.
TagAdds or removes a tag, useful for tracking who reached a stage.
ExitEnds the flow for that contact.

Ready-made flows

Templates exist for the common ones — abandoned checkout, post-purchase follow-up, fulfilment notice, win-back, refund follow-up, and a welcome series for new contacts. Start from one and adjust rather than building from an empty canvas.

Store-triggered flows need a store connected

Triggers like abandoned checkout and placed order come from your store connection. Build them before connecting a store and they will simply never fire, because the event that starts them never arrives.

Deliverability

Deliverability is whether your mail reaches the inbox rather than the spam folder. It is earned slowly and lost quickly.

Suppressions

The suppression list holds addresses that must not be mailed. Entries arrive automatically, with different consequences:

ReasonMeaningPermanent?
UnsubscribeThey asked you to stop.Yes — and correctly so.
ComplaintThey marked your mail as spam. The most damaging signal there is.Yes.
Hard bounceA receiving server said the mailbox does not exist.Yes.
Soft bounceA temporary failure — mailbox full, greylisted, receiver busy.No. Held for a cooling-off period, then tried again.

Soft bounces use an escalating cooldown — roughly a week, then a fortnight, then a month — before an address is treated as permanently gone. A temporary failure should never cost you a real customer forever.

Practical rules

DoWhy
Verify your domain before the first sendUnauthenticated mail at volume is the fastest way to a spam reputation.
Warm up gradually on a new domainGoing from zero to 100,000 in a day looks exactly like a spammer.
Mail engaged people more, everyone else lessEngagement is the strongest inbox-placement signal you control.
Never buy a listBought lists produce complaints and spam-trap hits that damage every future send.
Watch the bounce rateUnder 2% is healthy. Above that, clean the list before sending again.

Reporting

Each campaign reports delivered, opened, clicked, bounced, complained and unsubscribed, with a workspace-wide view under Metrics and Stats.

MetricHow to read it
DeliveredAccepted by the receiving server. Not the same as reaching the inbox — spam-foldered mail still counts as delivered.
Open rateDirectional only. Privacy features on Apple Mail and others inflate it, so treat trends as meaningful and absolute numbers as approximate.
Click rateThe number to trust. A click is a real action that cannot be faked by a privacy proxy.
Bounce rateUnder 2% is healthy. A spike usually means a stale or bought list.
Complaint rateShould be near zero. Even a small number does real damage.
Unsubscribe rateNot a failure. It is people self-cleaning your list — far better than a complaint.

Integrations & the API

Store and ad connections

Connecting a store under Connections syncs customers and their order history, and produces the events that power commerce segments and store-triggered flows — placed order, abandoned checkout, fulfilment, refunds. Ad platform connections sync audiences outward.

The onsite pixel

The Tracking section gives you a script to add to your website. It records onsite behaviour your backend never sees — which products someone viewed, which pages they visited — enabling browse-abandonment flows. It only records events for visitors it can identify, so call identify once you know who they are, or enable form capture.

API keys

For programmatic access, create a scoped key under API keys and read the Email API reference. Keys carry only the permissions you grant. A contact created through the API is not subscribed unless you say so explicitly — this is deliberate, and it protects you as much as the recipient.

Still stuck?

The help centre covers billing, plans and the rest of the platform, and the Email API reference covers everything programmatic.