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 — and what it does today.
Right now, CRM City sends nothing to your contacts. It does not send email to your contacts from its own email account — not from our domain, and not from yours. Our account sends only our own mail to you: sign-in emails, notifications about your workspace, and our invoices. Email from you to your contacts goes out through your own email account, connected to CRM City, and connecting your own account is not available yet. Every path in this chapter says so, in the same words everywhere: "Connect your own email account to send email to your contacts."
- Refused, with the reason on screen: a personal note (5.1), sending a campaign now (5.2), a review request, the greeting after a business-card scan, and the email part of an invoice, a quote, a certificate or an approval request. The invoice or the quote itself is still issued — share its public link yourself.
- Held, not thrown away: a scheduled campaign stays scheduled, a sequence stays on its step, an unanswered review request keeps its reminder for 30 days after it was sent, an invitation keeps its one follow-up, and the note to someone whose pause has ended keeps waiting — so that each can still go out once an account can be connected. Review requests are the one with an end date: an order delivered more than 30 days ago is not asked about, and a request not answered in 30 days is marked expired, though its link still works.
- Logged: each refusal is written in the contact's email history as not sent, with the reason, so you can see exactly what is waiting.
What still works: capturing the mail you send from Gmail or Outlook (5.6), and everything about what people may receive from you (5.5). The sending domain setup that used to be in Settings is gone: a domain verified there was still sent through CRM City's own account, which is exactly what we no longer share.
Once you can connect your own account, every email to a contact — 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 marketing count
Settings → Billing shows how many marketing emails you sent this month: campaigns, sequences, automated email, review requests, invitations to events and courses, and birthday or anniversary messages. The emails a connected AI agent sends on your behalf (chapter 13) are included, and so is the greeting you send after scanning a business card. Inviting a colleague to your team is not. The count starts again from zero on the 1st of each month.
It is a count, not a limit. No plan caps how many marketing emails you send, and the number never holds anything back. It is there so you can see your own marketing at a glance.
A personal note you write from a contact is not counted. The count measures your marketing, not your correspondence: one person writing to another is not a campaign.
Transactional email is not counted either. Invoices, quotes, booking confirmations, certificates and approval requests are things your customers are waiting for, not marketing.
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 is logged, it is tracked, and it 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.
Right now it does not send (see the top of this chapter). Pressing Send tells you "Connect your own email account to send email to your contacts." and writes the attempt on the contact as not sent. Write from your own mailbox instead, with your BCC address (5.6) in the message, so the conversation still lands on the contact.
Two things will have to be in place before anything reaches a contact: the Email module on, and your own email account, connected. There is no shared account to fall back on — not for campaigns, not for a personal note, not for an invoice — and a verified domain is not a substitute: a domain verified with CRM City still sent through CRM City's account. Settings → Email to your contacts tells you where you stand right now.
CRM City is not an email provider and gives you no mailbox. Mail you write from Gmail or Outlook gets onto the contact through the BCC address in 5.6.
5.2 Campaigns
Module: Marketing
A campaign is a one-off email to everyone, or to everyone with a given tag. A campaign aimed at a tag needs its tag: the form will not save one without it, and if the tag is deleted later, the campaign reaches nobody (never everyone) until you choose a tag and approve it again. Write it, then send now or schedule it. Until your own email account can be connected, sending now is refused and a scheduled campaign waits, still scheduled, with the reason shown on its page — approved campaigns keep their approval.
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
- your workspace has no email account of its own connected → nothing is sent and nothing is marked: every enrollment stays on its step, so it can carry on once an account can be connected. Enrolling still works, and tells you nothing will be sent yet
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.
