5. Email

Modules: Email, Marketing

This is the biggest module and the one most likely to get you in trouble, so it is worth understanding the shape before the buttons.

Every email the product sends — a personal note, a campaign, a sequence step, an invoice, a booking confirmation, a certificate — goes through one pipeline. That pipeline checks the do-not-email list, writes a log row before sending, and injects a working unsubscribe link.

This is compliance by construction rather than by discipline. There is no code path that can accidentally email someone who unsubscribed, because there is only one door and the check is inside it. That single design choice is why you can add features without re-auditing deliverability every time.

Your monthly allowance

Each plan includes a number of marketing emails per month: 50 on Free, 5,000 on Starter, 25,000 on Pro, 100,000 on Business, unlimited on Enterprise. Campaigns, sequences, automated email and personal notes you write from a contact all draw on it. You can see what is left in Settings → Billing, and it resets on the 1st.

Transactional email does not count and never stops. Invoices, quotes, booking confirmations, certificates and approval requests keep going out even if the allowance is spent — running out of marketing email is not a reason for your customer's invoice to vanish.

If you build a campaign larger than what is left, the audience preview tells you before you send, in the same line that tells you who has opted out. The campaign then sends what fits and stops; nothing is lost, and the rest can go next month or after an upgrade.

The one thing worth reading before anything else in this chapter is 5.5: what people can choose to receive from you, and what they cannot switch off.


5.1 Sending to one person

Open a contact, compose, send. You choose which business card you are sending as (chapter 2.10) — that is your identity for this email.

It goes out from your own sending domain, is logged, is tracked, and respects suppression. Which means a personal email typed by hand and a campaign blast are the same kind of object as far as the record is concerned. The contact's timeline shows both.

You need three things configured before this works: the Email module on, an email provider connected, and a sending domain verified for your organisation.


5.2 Campaigns

Module: Marketing

A campaign is a one-off email to everyone, or to everyone with a given tag. Write it, then send now or schedule it.

Scheduled campaigns are picked up every five minutes. The claim is atomic — a campaign flips to "sending" before any email goes out, so two overlapping runs cannot double-send to your list. This is the kind of thing you never think about until it happens to you once.

Each campaign shows sent, opened, clicked and bounced, updating as events arrive.

A campaign is not a nurture tool. It is an announcement. If you find yourself sending campaigns weekly to keep in touch, you want sequences (5.4), and you should also expect the red health warnings to start appearing.


5.3 Tracking

When someone opens, clicks, bounces or complains, that event comes back and is matched to the exact email, contact and campaign. Duplicates are discarded.

One incoming event feeds four systems at once:

  • campaign statistics update
  • lead scoring moves (chapter 6)
  • bounces and complaints suppress the address automatically, with no action from you
  • a clicked link is matched against your product catalogue and becomes an interest signal (chapter 8)

That third one deserves attention. A hard bounce or a spam complaint adds the address to your do-not-email list immediately. You do not have to notice, and you cannot accidentally keep mailing a burned address. This protects your domain reputation, which is the asset that takes months to build and one bad send to destroy.


5.4 Sequences

Module: Marketing

A sequence is a chain of emails with delays between steps: day one introduction, day four follow-up, day ten a direct question, day twenty-one the last one.

Contacts are enrolled manually, in bulk, or by an automation. The engine checks every ten minutes for enrollments that are due, sends the next step, and schedules the one after.

What it does on its own:

  • someone unsubscribes → nothing further is sent; the enrollment is marked stopped when its next step comes due
  • a send fails → retried tomorrow rather than abandoned
  • the last step goes out → enrollment completes
  • you pause the sequence → every enrollment freezes where it is
  • someone is enrolled twice → prevented

Sequences are where "keeping in touch" stops depending on your memory and your evening. They are also the single fastest way to make people red, so see 5.7.


5.5 What people may receive from you

There are two layers here, and the difference between them matters.

The do-not-email list

One per organisation, with a reason on each entry: unsubscribed, bounced, complained, or added by hand. Bounces and spam complaints land on it automatically.

Every email in the product carries a working unsubscribe link. The public page is one-click, and clicking it twice does nothing bad — it is idempotent.

You can add addresses manually. Do it when someone asks you in person to stop emailing them; it takes ten seconds and it is the difference between a professional operation and an annoying one.

Operational emails bypass all of this — an invoice or a booking confirmation still reaches someone who unsubscribed from your newsletter, which is correct: they unsubscribed from marketing, not from being your customer. That list is short, fixed, and shown to the recipient so nobody is confused about why an invoice still arrives.

One switch, every channel

Before the switches themselves, the thing worth knowing: a preference is about the kind of message, not about how it reaches someone.

Turn off newsletters and you have turned them off everywhere - email today, Telegram and WhatsApp as those arrive. Nobody has to set the same thing twice, and nobody can flip one switch, believe they are done, and keep receiving on the other route.

If what you actually want is "keep writing to me personally but stop the marketing", that already works, and it works by kind rather than by channel: the person turns off newsletters and personal messages keep coming, on any channel.

What is per-channel is whether a message can still arrive at all - a dead address, a blocked bot, a number that no longer exists. That shows on the contact's record under Can we reach them?, separately from the switches, because it is a different question. You cannot un-block a bot from inside the CRM; only the person can, from their own app.

Preferences: the part between "everything" and "nothing"

The list above is all-or-nothing. Most people do not want all or nothing. They want the review requests to stop, or they want three months of quiet because something has happened in their life.

So every contact has preferences, on six kinds of message:

What it covers
Review requests We ask how it went and whether you would leave a review
Newsletters and announcements The things sent to everyone
Follow-up series A planned sequence after something they did
Automatic messages Triggered by something specific, like a purchase
Birthdays and anniversaries The occasional note
Invitations To events, courses, or to join something

Each one can be on, off, or paused until a date. There is also a row above all of them — turn that off and nothing goes out at all.

Where the contact sets it. Every message carries a link to their own preferences page. No account, no password. They can change any row, pause with one click for two weeks, a month or three months, end a pause early, or stop everything.

That link belongs to the person, not to the message: it stays the same over time, so they can bookmark it, and it works whichever channel they came from. Someone who only ever wrote to your Telegram bot — and therefore has no email address on file — gets it by sending /preferences (or /stop) to the bot. It does not stop anything by itself; it opens the page where stopping everything is one click. On a chat, "stop" can be a typo or half a sentence, and the bot cannot tell.

You have that link too. It is on the contact's record under Their own link. Useful on the phone: "I'll send you a link where you choose yourself" is a better answer than "I'll make a note", because it puts the choice with the person who has to make it.

Where you set it. On the contact's record, under What we may send. Same rows, same words — so when someone tells you on the phone "just stop the review emails", you can find the same switch they would have found. The panel also shows who set each state and when: "they asked" or "set by Ana", with the date. Worth reading before you change anything.

What you cannot do from there. You cannot lift a bounce or a spam complaint. Not from the panel, not with the reset button. Those are not preferences — one means the address is dead, the other means someone reported you — and no button in the product should be able to undo them.

Coming back after a pause

When someone's pause runs out, they do not simply reappear in the next campaign. The product sends them one note first, telling them how many days of quiet they asked for and that it has ended — and then nothing at all for another week.

That week is enforced in the code, not in a scheduler you could work around. If you send a campaign the morning after that note goes out, the people still inside their quiet week will not receive it. The note promised them a week; it would be worse to send the note than to break it.

The note also carries "extend the quiet" and "stop entirely" as prominently as anything else. Someone looking for the exit and not finding it will find the spam button instead.

Seeing the refusal before you send

The campaign page tells you who will not get it and why, with names, before you schedule anything. Enrolling people in a sequence skips the ones who have asked not to and says how many.

This is deliberate. A filter that works silently at send time would let you tick a box, believe you had reached someone, and never find out. If you can select them, you should be able to see that they will not receive it.


5.6 Capturing email you send from elsewhere

You get a secret BCC address for your organisation. Put it in the BCC field of any email from Gmail, Outlook, your phone, anywhere — and the whole message, attachments included, files itself against the right contact. If the contact does not exist, it is created.

No copy-paste, no browser extension, no changing how you write email.

Two protections worth knowing, because they explain the setup:

The address is a secret, and it is the real credential. A From: header can be forged by anyone; a token cannot be guessed. Mail is accepted only if it arrives at your token address and the sender is a user of your organisation.

You can regenerate it. If the address leaks, generate a new one and the old one stops working.

Setup is at Settings → Inbound email.


5.7 The part nobody tells you

Everything in this chapter makes it easy to send more. Chapter 3 explains why that is not automatically good.

The specific failure is common enough to name. You look at the neglected list, feel guilty, and fix it in one afternoon: a campaign to everyone, plus a sequence for the quiet ones, plus a few personal notes. Two weeks later a chunk of your list is red, some of them have unsubscribed, and the ones you most wanted back have gone quieter than before.

Everything counts as a touch — a campaign send lands on the same counter as a phone call, because from the other person's side it is the same thing: you contacted them again. And even at the right frequency, a person who receives only broadcasts and never a line written for them will be flagged separately (chapter 3.2). Volume is one problem; sameness is another.

The habit that works is boring: a few people properly, every day, rather than everyone at once, occasionally.


5.8 Reporting

Reports → Marketing shows performance across all campaigns — sends, opens, clicks, bounces.

Read bounce rate before open rate. Opens tell you about your subject lines; bounces tell you whether your list is rotting, and a rotting list eventually stops your email reaching anyone at all.