You built the list, wrote the emails and set up the follow-ups. Then one broken merge tag sends "Hi {{params.firstname}}," to 300 people, or a follow-up meant for non-openers goes to everyone. Sent email cannot be recalled.
This checklist is the review you run before launch. Copy it into a doc, tick each box, and do not launch until every line is checked or consciously skipped.
1. The list
Bad data causes most problems you will see later, so start here.
- Duplicates removed. Same email appearing twice means the same person gets two copies.
- Emails verified. Run verification on the whole list and drop invalid addresses. Treat risky or catch-all results with caution; send to them in a smaller batch if at all. See email bounce rate for why this matters to your sender reputation.
- Previous unsubscribes excluded. Anyone who opted out of an earlier campaign stays out.
- Existing customers and open deals removed. A cold pitch to a current client looks careless.
- Role addresses reviewed. Decide whether info@ and office@ belong in this campaign.
- Fit checked by hand. Open 10 random rows. Are they actually the type of business you meant to target, in the right cities?
In GetClient, verification runs on the saved list before it goes into a campaign, so you are not exporting to a separate verifier and importing back.
2. Merge tags and personalization
This is where embarrassing mistakes happen.
- Tags written exactly right. Use the exact form:
{{params.name}},{{params.firstname}},{{params.website}},{{params.city}},{{params.category}}. A missing brace or a different spelling will not be filled in. - Empty fields checked. Sort the list by each field you use. If 40 rows have no first name, either fill them, move them to a separate version without the tag, or rewrite the line so it works without it.
- Values read naturally. Business names like "JOHN'S PLUMBING LLC - 24/7 EMERGENCY" look scraped. Clean the worst ones. Categories like "Auto detailing service" may need rewording in a sentence.
- Owner names checked. If a name came with a low confidence score, consider a greeting that does not depend on it.
- Previewed against real rows. Preview each step with at least three different leads, including one with sparse data.
A safe opening that survives missing data:
Hi {{params.firstname}},
I was looking at {{params.name}}'s website ({{params.website}}) while researching {{params.category}} businesses in {{params.city}}.
If first names are patchy, use "Hi there," for that segment instead. More on doing this well in personalization.
3. Copy and content
Read every step out loud, as the recipient would.
- Subject line is short, plain and honest about the email. No fake "Re:" or "Fwd:".
- One clear ask per email. A short question beats a calendar link plus three options.
- No spelling errors, especially in your own name and company.
- Links work. Click every one. Fewer links is safer for a first cold email.
- No attachments in the first touch.
- Signature complete: name, business, a way to reach you, and a physical address if the rules you follow require one.
- Unsubscribe link present and working. GetClient adds a one-click link with a signed per-recipient URL and skips unsubscribed addresses automatically, but confirm it shows in your chosen layout.
- Layout chosen deliberately. Plain layout reads like a personal email; boxed suits more formal content.
4. Sending setup
- Right account connected. Check the from-name and from-address on every sending account.
- Authentication in place. SPF, DKIM and DMARC set up for the sending domain. Walk through the SMTP sending setup checklist if you have not.
- Daily volume sensible. New or recently set up accounts should start low and build up gradually. That is a rule of thumb, not a fixed number; your provider's limits come first. Unsure which to send from? Read Gmail vs SMTP for cold email.
- Replies land somewhere you read. Send a test to yourself and reply to it.
5. Follow-up flow and timing
- Delays correct. Check days vs hours vs minutes. "2 minutes" instead of "2 days" is an easy slip.
- Branches go the right way. For each If Opened / If NOT Opened / If Clicked / If NOT Clicked step, trace both paths and confirm each leads to the email you intend. Remember branches are yes or no only. Background in conditional email branching.
- Follow-ups make sense out of context. Someone who never opened email 1 should still understand email 2.
- Sequence ends. There is a final step, not an endless loop.
- Send days set. Weekday limits match when your prospects work. A restaurant owner and an accountant keep different hours.
- Time zone checked for the schedule, especially across several cities.
- Launch date does not collide with a public holiday in the recipients' region.
6. Compliance
- You know which rules apply to you and your recipients (for example CAN-SPAM in the US, GDPR and PECR for UK and EU contacts). Requirements differ; check them for your situation. This is not legal advice. For Europe, see GDPR and B2B cold email.
- Business contacts only, with a reason your offer is relevant to them.
- Honest identity: real name, real business, no misleading subject lines.
7. Final test and launch
- Send the full sequence to yourself, using a lead record that has your details.
- Open it on a phone and a desktop.
- Click the unsubscribe link on the test and confirm the address is marked as unsubscribed.
- Launch with a small first batch, then wait a day.
- Check bounces and replies in campaign analytics and the Inbox before releasing the rest.
What to watch in the first 48 hours
- Bounces: if they spike, pause and re-verify.
- Replies: answer quickly. Keep objection reply scripts open.
- Angry replies or complaints: read them. They often point to a targeting or wording problem you can fix for the remaining batch.
- Out-of-office replies: note return dates instead of following up into an empty inbox.