Cold email personalisation at scale
Personalisation at scale means using a small number of verified facts about each recipient in a way that changes the message, not inserting their name into a template. Collect the facts at import, write per-segment first lines, and fall back honestly when a field is missing instead of rendering a placeholder.
Updated October 26, 2026
The detail has to be true and recent
A first line that names a company's latest funding round is personalisation. The same line sent to a company that raised three years ago is a mistake that proves you did not check. Relevance depends on accuracy, and accuracy decays, so the field needs a date and a source.
Broken merges are worse than generic copy. “Hi , I noticed that is expanding” tells the recipient the message was assembled by a script, and it tells every recipient at once because the same defect repeats across the batch.
- One verified fact per message, with the date it was collected.
- A fallback sentence that reads naturally when the field is empty.
- A pre-send check that fails the batch if any merge renders empty.
Accuracy starts with the data you import; list verification covers the checks that keep it usable.
Segment first, then personalise
Personalisation is easiest when the audience is already narrow. If you write one message per segment, the segment name does most of the work: a recruiter, a SaaS founder and a hotel manager need different openings because they have different problems. Within a segment, one fact per recipient is enough.
The opposite approach, one generic message with five merge fields, produces long emails that feel automated. Fewer variables, more relevance.
- Define segments by problem, not by job title alone.
- Write the segment message once, properly.
- Use at most one or two per-recipient facts inside it.
Where the facts come from
Public sources are enough: a company page, a recent announcement, a job posting, a product changelog. The point is not to research for an hour per recipient; it is to collect one relevant fact per segment in a structured field so the opening is true.
If you buy a lead list, check whether the fields are dated. A title from two years ago is often wrong, and the message that follows sounds careless. A verified lead source with recent fields saves more time than any writing trick.
For sourced and checked contact data, B2B lead data is the product built for it.
A worked batch of forty
Forty recipients, two segments. Segment one: agencies running paid ads. Segment two: ecommerce brands with a review programme. For each, you collect one fact: the platform an agency mentions on its services page, or the review count on a brand's product page.
The first line names the fact and the question that follows is the same per segment. Before sending, you check every row for an empty fact and hold the ones that fail. Of forty rows, three are held and rewritten by hand. The batch goes out with thirty-seven messages that are all true, and the held rows never ship a broken merge.
- Two segments, two openings, one question each.
- Hold rows with a missing fact; never send a placeholder.
- Review a random sample of ten before the batch starts.
Sending and reporting on batches like this is what cold email platform is for.
The pre-send check that catches broken merges
Before any batch starts, render every message and search for empty fields. A merge that produced nothing is visible as a double space, a dangling comma or an empty greeting, and it is cheap to detect mechanically. Hold those rows, never send a placeholder.
Read a random sample of ten rendered messages yourself. Machines catch empty fields; a person catches a field that rendered the wrong value, which is the failure that damages credibility. Ten messages take two minutes and catch the errors a validation rule cannot describe.
Keep the held rows in a separate queue with a reason. Sending them later with a hand-written line is better than dropping them, and much better than letting them ship with a blank.
- Render and scan for empty fields before every batch.
- Read ten rendered messages by hand.
- Hold failures with a reason instead of sending a placeholder.
- Keep a written list of the facts you allow in a first line. It stops a well-meaning writer from adding a detail that was never verified, and it makes the pre-send check mechanical rather than a matter of memory.
- Cap the number of variables per template at two, and write the template so it still reads correctly when both are absent. That fallback version is what you send to the rows that fail the check, and having it ready prevents the two bad outcomes: sending a placeholder or dropping a good prospect because a field was empty.
Personalisation depth, effort and the failure to watch
| Approach | Effort per 100 | Failure mode |
|---|---|---|
| Name only | None | Reads as a template |
| Segment message + one true fact | Low, collected once | Stale or wrong fact |
| Researched first line per recipient | High | Not worth it below a few hundred |
| Five merge fields | Medium | Broken fields, automated tone |
The middle row is usually the best trade for cold outreach: relevant, checkable, and fast enough to repeat.
What personalisation will not do
Relevance helps; it is not a shortcut.
- It will not make an unwanted offer welcome.
- It will not fix deliverability, authentication or pacing.
- It will not replace consent where the law requires it.
- It will not guarantee replies, meetings or sales.
Frequently asked questions
Is {first_name} personalisation enough?
It is the minimum. A name changes the greeting, not the relevance, and recipients recognise the pattern instantly.
How many merge fields should an email have?
One or two. Each additional field is another chance to render empty or wrong.
What should happen when a field is missing?
Hold the row. A sentence that reads naturally without the fact is fine; a placeholder is not.
Does personalisation improve deliverability?
Indirectly, through replies and lower complaints. It does not replace authentication or list hygiene.
Ready to run a campaign? Compare published plans or create a free account. Trials cannot send until a paid plan is active.