cold-email-personalization
Cold Email Personalization
Personalization is the difference between an email that earns a reply and one that gets deleted. But personalization doesn't mean "insert {first_name} and {company}." Merge tags are not personalization. Personalization is referencing something specific about the recipient that proves the email was written for them, not batch-sent to 500 people.
The principle: personalization should answer one question for the recipient: "Why me, why now?" If the personalized element doesn't answer that question, it's decoration, not personalization. A compliment about their LinkedIn banner photo is decoration. A reference to the RevOps hire they posted last week is personalization.
The Personalization Spectrum
| Level | What it is | Example | Reply rate impact | Time per email |
|---|---|---|---|---|
| 0. None | Same email to everyone. Name and company merge tags only | "Hi {first_name}, I work at..." | Baseline (3-5%) | < 1 min |
| 1. Segment | Same template per segment. One variable changes per batch | "Most Series B SaaS teams..." (all Series B prospects get this) | 1.2x baseline | < 1 min |
| 2. Token | Template + 1 prospect-specific data point inserted | "Saw you posted for a RevOps lead..." (hiring signal) | 1.5-2x baseline | 2-3 min |
| 3. Custom line | Template + 1-2 hand-written sentences specific to the prospect | "Your post about attribution was spot-on. The gap you described..." | 2-3x baseline | 5-8 min |
| 4. Fully custom | Entire email written for this one person | No template. Every sentence references their specific situation | 3-5x baseline | 10-15 min |
Which level to use
| ACV range | Prospect count | Recommended level | Why |
|---|---|---|---|
| < $10K | 500+/month | Level 1 (Segment) | Volume play. Time per prospect must be minimal |
| $10-30K | 100-500/month | Level 2 (Token) | One data point per prospect. Good balance of quality and scale |
| $30-100K | 50-200/month | Level 3 (Custom line) | Deal size justifies 5-8 min per email. Quality drives conversion |
| $100K+ | 10-50/month | Level 4 (Fully custom) | Every email is hand-crafted. One wrong impression costs a six-figure deal |
The 7 Personalization Token Types
A personalization token is a single, specific data point about the prospect that you insert into a templated email. Each token type answers "why you, why now" differently.
Token 1: Signal Token
Reference a specific, recent event at their company.
| Signal | Token example | Source |
|---|---|---|
| Funding round | "Congrats on the Series B" | Crunchbase, press |
| Job posting | "Saw the RevOps posting" | LinkedIn Jobs |
| Product launch | "The new dashboard launch" | Company blog, press |
| Leadership hire | "New VP Sales this quarter" | LinkedIn, press |
| Acquisition | "The [company] acquisition" | Press, Crunchbase |
Signal token rules:
- Must be from the last 90 days. Older signals are history, not triggers
- Must connect to a problem. "Congrats on the Series B" alone is a pleasantry. "Congrats on the Series B. The scaling chaos usually hits around month 3" is personalization with purpose
Token 2: Content Token
Reference something the prospect published or said publicly.
| Content type | Token example | Source |
|---|---|---|
| LinkedIn post | "Your take on attribution last week" | LinkedIn feed |
| Podcast appearance | "Your point on the [podcast] about pipeline" | YouTube, podcast apps |
| Conference talk | "Your SaaStr talk on PLG metrics" | Conference recordings |
| Blog post | "Your piece on SDR burnout" | Company blog, Medium |
| Tweet / X post | "Your thread on cold email" | X / Twitter |
Content token rules:
- Reference their specific take, not just the topic. "Loved your LinkedIn post" is generic. "Your point about attribution being a data problem" is specific
- Only use content from the last 30 days unless it's evergreen (a major conference talk, a widely shared article)
Token 3: Role Token
Reference something specific about their job function, title, or responsibility.
| Role signal | Token example | Source |
|---|---|---|
| New in role (< 6 months) | "Starting as VP Sales is usually when the playbook gets rewritten" | LinkedIn tenure |
| Team size | "Managing 12 SDRs without RevOps" | LinkedIn team count, job postings |
| Reporting structure | "Reporting directly to the CRO" | LinkedIn, org chart |
| Role scope | "Owning both inbound and outbound" | Job description, LinkedIn headline |
Role token rules:
- Infer, don't state the obvious. "I see you're a VP of Sales" wastes the token. "Starting the VP Sales role in Q1 usually means..." adds insight to the data point
Token 4: Company Token
Reference something about their company's situation, stage, or trajectory.
| Company data | Token example | Source |
|---|---|---|
| Company stage | "Series B with a 12-person sales team" | Crunchbase + LinkedIn |
| Growth trajectory | "Growing from 50 to 150 employees in the last year" | LinkedIn company page |
| Industry position | "One of 3 fintech platforms targeting mid-market" | Market research |
| Tech stack | "Running Outreach + HubSpot" | Job postings, BuiltWith |
| Customer base | "Selling to healthcare enterprises" | Company website |
Company token rules:
- Combine 2 company data points for depth. "Series B" alone is thin. "Series B with a 12-person sales team scaling to 30" is a situation
- Don't repeat what's on their LinkedIn headline. They already know their company size. Add an implication
Token 5: Metric Token
Reference a specific number or benchmark relevant to their situation.
| Metric type | Token example | Source |
|---|---|---|
| Industry benchmark | "Average reply rate in your space is 4.2%" | Internal data, reports |
| Peer comparison | "Similar-stage teams generate $500K/rep/quarter" | Your customer data |
| Growth math | "At your hiring pace, you'll need 3x the pipeline in 6 months" | Calculated from signals |
Metric token rules:
- The metric must be relevant to their specific situation, not a generic stat
- Back it up. If they ask "where did you get that number?" you should have an answer
Token 6: Mutual Token
Reference a shared connection, community, or experience.
| Mutual type | Token example | Source |
|---|---|---|
| Mutual person | "{Name} suggested I reach out" | Real relationship |
| Shared community | "We're both in the RevOps Co-Op Slack" | Community membership |
| Shared event | "We were both at SaaStr last month" | Event attendee lists |
| Shared customer | "We work with [company similar to theirs]" | Customer list |
Mutual token rules:
- The connection must be real. Fabricating a mutual connection destroys trust permanently
- Shared customers should be similar to them (same stage, vertical, or size), not just a big logo
Token 7: Stack Token
Reference a specific tool or technology they use.
| Stack signal | Token example | Source |
|---|---|---|
| Current tool | "Teams running Outreach usually hit [problem] at your scale" | Job postings, BuiltWith |
| Recent migration | "Migrating off Salesforce to HubSpot" | Job postings, blog |
| Tool gap | "No enrichment tool in the stack yet" | Absence in job postings |
Stack token rules:
- Reference the tool only if you have a take on it. "I see you use HubSpot" is observation. "Most HubSpot teams at your scale outgrow the native sequencing" is insight
- Stack data from job postings is more reliable than stack data from BuiltWith (which only captures web-facing tools)
Where Tokens Go in the Email
Token placement map
[Subject line] — optional token (signal reference, topic)
[OPENER: Token goes here] — 15-25 words
The personalized first line. This is where most tokens land.
Pattern: {token} + {implication}
[BODY: Template] — 30-50 words
The value prop, proof point, or credibility bridge.
This section is the same for all prospects in the batch.
(Some teams add a second token here for Tier 1 ABM)
[ASK: Template] — 10-15 words
The CTA. Same for all prospects.
"Worth a 15-minute look?" / "Open to a quick teardown?"
[SIGNATURE]
Placement rules
- One token in the opener is the minimum. This is the Level 2 standard. One personalized data point in the first line
- Two tokens (opener + body) is Level 3. The opener references their situation. The body references a peer or metric specific to their segment. This is the sweet spot for $30-100K ACV deals
- Don't personalize the CTA. The ask should be consistent and tested. Personalizing "Would you prefer a teardown of your specific outbound setup?" sounds nice but makes A/B testing impossible and doesn't measurably improve reply rates
- Don't personalize the subject line with merge tags. "{first_name}, quick question" is the most ignored subject line pattern. Subject lines should be topic-driven, not name-driven. See cold-email-subject-lines skill
Personalization That Backfires
Not all personalization is good personalization. Some types actively hurt reply rates.
| Backfiring personalization | Why it fails | What to do instead |
|---|---|---|
| "Love your LinkedIn banner!" | Trivial observation. Not connected to a business problem | Reference a post or a professional signal |
| "I see you graduated from [university]" | Creepy. Unrelated to business. Feels like stalking | Only reference professional data, not personal history |
| "Happy birthday!" (from LinkedIn data) | Unsolicited personal attention from a stranger | Never use personal dates or events in cold outbound |
| "Your company has grown 300% this year!" | Inaccurate or unverifiable. Prospect knows you guessed | Only cite numbers you can verify from public sources |
| "I noticed you liked [competitor]'s post" | Surveillance-level monitoring of their LinkedIn activity | Reference posts they wrote, not posts they liked |
| "{first_name}, {company} is doing great things!" | Empty compliment + merge tags. Every tool generates this | Make a specific observation about what "great things" means |
| Extremely long personalized paragraph | 80 words of personalization in a 100-word email. Imbalanced | One personalized line (15-25 words). That's enough |
The creep test
Before including a personalization token, ask: "Would the prospect feel surveilled or flattered?" If the answer is "surveilled," don't include it. Professional data (posts, talks, company news, hiring) is fair game. Personal data (education, family, hobbies, activity on other people's posts) is not.
Personalization at Scale
The batch personalization workflow
1. Build prospect list (200 prospects)
2. Segment by shared attribute (stage, vertical, signal type)
3. Write one template per segment (Level 1 personalization)
4. For each prospect, add one token (Level 2)
- Research source: LinkedIn profile + one additional source
- Time budget: 2-3 minutes per prospect
- If no good token found: use segment-level token (Level 1 fallback)
5. QA: spot-check 10-20% for accuracy and tone
6. Load into sequencing tool
Scaling rules
- Level 2 at 200 prospects = 7-10 hours of research + personalization. This is approximately 1 SDR-day. Decide if that's worth 1.5-2x the reply rate vs Level 1
- AI personalization (see bulk-personalization-with-ai skill) can compress Level 2 to 75 minutes per 200 prospects. Use it when available
- Don't try to do Level 3 (custom line) at 200 prospects. At 5-8 min each, that's 17-27 hours. Either reduce the list to 50-100 or use AI to generate custom lines at scale
- Level 1 is always the fallback. If research doesn't turn up a usable token for a prospect, they get the segment-level template. A clean Level 1 email beats a forced, weak Level 2 token
Personalization by Email Position
| Token strategy | Why | |
|---|---|---|
| Email 1 | Signal token or content token (prospect-specific) | First impression. Prove the email was written for them |
| Email 2 | Metric token or company token (can be segment-level) | New angle. Different data point from Email 1 |
| Email 3 (value drop, 5-step) | No personalization needed. The value IS the personalization | Sharing a relevant resource is personalization through curation |
| Email 3/4 (contrarian/breakup) | Category observation or no token | Late-sequence emails are about the angle, not the personalization |
Position rules
- Email 1 carries the personalization weight. This is where the prospect decides if the sequence is real outreach or a blast. Invest the token here
- Email 2 should use a different token type. If Email 1 used a signal token, Email 2 uses a metric or company token. Variety signals real thought, not a one-trick template
- Breakup emails don't need personalization. The brevity (30 words) is the hook. Adding a personalized line to a breakup makes it longer and weaker
Measuring Personalization Impact
A/B testing
| Test | Groups | Measure | Expected result |
|---|---|---|---|
| Level 0 vs Level 2 | Same list, split 50/50 | Reply rate, positive reply rate | Level 2 = 1.5-2x Level 0 |
| Level 2 vs Level 3 | Same list, split 50/50 | Reply rate, meeting rate | Level 3 = 1.2-1.5x Level 2 |
| Signal token vs content token | Same list, split 50/50 | Reply rate | Varies by ICP. Test to find which token type resonates |
| AI-personalized vs human-personalized | Same list, split 50/50 | Reply rate, reply quality | Should be within 10-20% of each other |
Measurement rules
- Minimum 100 prospects per variant. Below 100, results are noise
- Measure positive reply rate, not just total reply rate. Aggressive personalization can increase replies but also increase "stop emailing me" responses
- Track cost per meeting by personalization level. Level 3 costs 3x more rep time than Level 2. Does it produce 3x the meetings? If not, Level 2 is the better ROI
Pre-Send Checklist
- [ ] Every email has at least one personalized token (Level 2+)
- [ ] The token answers "why you, why now" for the specific recipient
- [ ] The token is based on verifiable, professional data (not personal)
- [ ] The token is from the last 90 days (signals) or 30 days (content)
- [ ] No fabricated or guessed data in the token
- [ ] The personalization level matches the ACV and prospect count (see selection table)
- [ ] Each email in the sequence uses a different token type
- [ ] The personalized line is 15-25 words (not a paragraph)
- [ ] The personalization connects to the email's purpose (not decoration)
- [ ] Level 2+ emails have been spot-checked for accuracy (10-20% of batch)
Anti-Pattern Check
- Merge tags are called "personalization." {first_name} and {company} are not personalization. They're mail merge. Every cold email tool does this. Real personalization references something specific about the recipient
- Same token type on every email. Signal reference on Email 1, signal reference on Email 2, signal reference on Email 3. Vary the token types. Different data point, different perspective per email
- Personalization that's just a compliment. "Great post on LinkedIn!" is a compliment. "Your point about attribution being a data problem matches what we see at Series B teams" is personalization that connects to a problem. Connect, don't compliment
- Spending 15 minutes per email on a $10K ACV prospect. The math doesn't work. At $10K ACV and 15% close rate, that prospect is worth $1,500 in expected value. Don't spend $20 of rep time personalizing one email. Use Level 2 (2-3 min) and save Level 4 for $100K+ deals
- Personal data in cold outbound. Education, family, hobbies, liked posts, personal milestones. This feels invasive, not thoughtful. Stick to professional signals: posts they wrote, company news, job postings, conference talks
- Forced personalization when there's nothing to personalize. Sometimes the prospect has no LinkedIn posts, no recent company news, and no detectable signals. Use a segment-level template (Level 1) rather than forcing a weak token. "I see you're in sales at a SaaS company" adds nothing
- Over-personalized emails. A 90-word email where 60 words are personalization and 30 words are the pitch. The personalization overwhelms the message. One line (15-25 words) is enough. The rest of the email is the value prop and the ask