Email-enricher: 200 lines that replace a subscription
Lead-gen platforms charge $49–$299 a month to rent you your own pipeline. I replaced the stack with five small Python scripts I own outright — no subscription, no per-lead credits, no dashboard I need permission to use.
Why does that matter? Because:
- The tools don't sell you a pipeline. They rent your own pipeline back to you, every month, forever.
- The scripts are the boring part. Verification and list hygiene are the 80% that decides whether any copy ever gets read.
- You don't need a following, a budget, or a sales team. You need thirty verified addresses and five personal emails a day.
Cold outreach is the ultimate leveller: the reply is decided before the email is opened.
The reply is decided at three checkpoints
Every cold email is aimed three times — and almost everyone writes only the second one.
Target one is the address
Before a single word is read, a verifier decides whether the email dies. Every bounce is a small red flag to Google and Microsoft. Enough of them, and your domain's reputation sinks — your good emails start landing in spam even when the copy is perfect. The writer blames the subject line. The real problem was the list.
A perfect email sent to a dead address is not an email. It is evidence to Google that you are noise.
Target two is the inbox
The subject line fights for two seconds of attention against fifty others — and against the spam filter, which reads it with zero mercy. A subject doesn't need to be clever. It needs to survive the delete reflex. "Quick question" loses to a teaser about the recipient's own business. Not because of trickery — because one tells the recipient there is something real inside.
Target three is the person
If you survived the verifier and the filter, you have one opening line to prove this wasn't blasted. An opener that could be sent to anyone convinces no one. One real detail beats ten compliments.
Fix any one of these and you'll move. Fix all three and the same offer starts landing in inboxes that answer.
The five scripts, in the order a campaign runs
1. prospect-collector — builds the list. It collects niche businesses in your city or country — names, sites, owners — straight from public directories. The pain it kills: "I don't have a list." You don't need a list to start. You need thirty businesses that look like your last client. Thirty verified addresses is a campaign.
2. email-gate — verifies every address before you send. Syntax, domain, mailbox — confirmed alive before a single send. The pain it kills: bounces quietly strangling your domain. What you get is a list that survives its own first send.
3. domain-check — keeps your sender reputation clean. Cold mail goes from a separate domain, warmed up slowly, at small volumes to start. The pain it kills: "Won't I get my domain banned?" A domain with a good reputation is an asset worth keeping for years, not a consumable.
4. sender — sends from your own SMTP, with tracking. No per-email pricing, no sequence tool deciding for you. Unsubscribes honored. The pain it kills: paying a subscription to press "send" on your own words.
5. reply-tracker — tells you what's working. Which opener got replies, which subject got opens, which list went silent. The pain it kills: sending blind. You stop guessing and start keeping the variants that earn replies.
Around the scripts sit four SOPs: Email-gate, Warm domain, Five a day, Follow-up. And twenty prompts in four blocks — icebreakers, subject teasers, bodies, and follow-ups — numbered 1 to 20, each one doing one job.
Requirements are boring on purpose: Python 3.10+, an email account, 90 minutes a week.
The email-gate SOP, step by step
This is the one practice that protects everything. Run it before any campaign, every time:
- Collect thirty businesses that look like your last client. Niche times city. Names, sites, owners.
- Pull one address per business — the owner's, not info@. One real person per email.
- Check syntax. Is it even an address? Typos and malformed rows die here.
- Check the domain. Does it exist, and does it accept mail?
- Check the mailbox. Is it alive? This is the step most campaigns skip, then bounce for.
- Cut the dead. Park the risky. Don't delete the risky ones, and don't send to them either. They wait.
- Score what is left into tiers A, B, C, D. A goes first, D never goes at all.
The score is the three checkpoints from above, turned into a grade:
- A — verified, decision-maker, one real fact found. Send today. This is the whole game.
- B — verified, decision-maker, fact still to find. Two minutes of looking turns a B into an A.
- C — verified, but the wrong person, or no angle. Park it. Don't burn a send on a maybe.
- D — dead or risky. Cut. Every D you send is a vote against your own domain.
A real test run: 34 businesses scraped, 9 verified emails. One A and two Bs in there — that's a campaign, not a spreadsheet. The other 25 were never going to reply, and now they never get the chance to hurt your deliverability either.
Before and after: the same email, twice
One campaign. One agency owner. Two versions of the same email.
The subject line
Before:
"Quick question"
After:
yoursite.com — "litigatoin"
The before-subject is wallpaper. A busy owner sees forty "quick questions" a week and deletes all of them. The after-subject is a teaser: their domain, a word quoted from their own site that they will instantly want to find. It isn't a promise or a pitch — it's curiosity about their own business. That is the entire job of a subject line.
The icebreaker
Before:
"Hi, I came across your firm and was impressed by your work."
After:
"Your reviews mention response times twice — clients notice it before they notice the price."
The before-opener is assembled from nothing. "Impressed by your work" could be sent to ten thousand businesses and means nothing to any of them. The after-opener is built from one real, verifiable fact — found in two minutes on a public reviews page. The prospect reads it and thinks: this person actually looked at us. That's the bar. Not flattery. Evidence.
A second before-opener, just as dead:
"I'm Alex, founder of Agency X. We help businesses with..."
Ninety-five percent of cold emails open with the sender. Nobody cares. The after-version is always the same shape: one sentence about them — a fact you found in two minutes of looking. The email becomes a letter to a person, not a flyer to a list.
The body
Before:
"I help law firms get more clients with AI. Our team has helped dozens of businesses increase their revenue. Would you be open to a quick call this week to discuss how we can help you?"
After:
"Two reviews on Google mention response times. Agencies like yours usually lose the reply window here — prospects call the next firm instead.
We made a 40-second demo showing how yours could answer in under a minute: [link].
Worth a look?"
The before-body is about the sender — "I help," "our team," "would you be open." Ninety words that say nothing the prospect didn't already guess. The after-body is sixty words about the prospect: one fact from the opener, one specific cost of inaction, one demo built for them, one question. And the demo is the point — it takes under a minute to make, and it answers the prospect's real question: what does this actually look like for us?
Same campaign. Same person. Different language. One goes to trash. The other starts a conversation.
The honest math
100 raw leads → ~20 worth emailing → 3–8% replies on a clean list. No "10,000 leads in 5 minutes". The scripts are the boring part; the verification and list hygiene are the 80% that decides whether any copy ever gets read.
What doesn't work
- Buying lists. Half the addresses are dead, every send teaches the inbox to ignore your domain, and you paid for the privilege.
- Skipping verification and blasting volume. Volume multiplies whatever your process is doing — including doing it wrong. Ten thousand emails aimed at ghosts is not outreach. It's a deliverability problem with postage.
- Generic openers. "I came across your company and was impressed" went to four hundred people today. A generic opener proves the email was blasted, and blasted emails get deleted, not answered.
- Cold mail from your main domain. One burned domain and your real business email starts landing in spam too. Separate domain, warm it slowly, keep volumes small.
- Fourteen "just bumping this up" follow-ups. The campaigns that work don't feel like cold email at all — one short note about something real you noticed, with something useful attached. Write five a day, each one personal. You'll spend less time per email than you spend scrolling, and none of it feels like spam.
TLDR
Lead-gen tools rent you your own pipeline for $49–$299 a month. Five small scripts replace them — but the scripts aren't the point. Verify every address before you send, write subjects that tease something real, and open with one verifiable fact about the recipient. 100 raw leads become ~20 worth emailing, and 3–8% of those reply. Everything else is noise.
Try it free
The free starter is the email-gate SOP plus three opener prompts — the two pieces above, ready to run on one of your real campaigns tonight: https://nyzza.online/leadgen/?utm_source=devto&utm_medium=article&utm_campaign=leadgen-funnel&utm_content=email-enricher
The full kit around the scripts — 5 scripts, 4 SOPs, 20 prompts, $27 one-time, 30-day guarantee — is linked from that page. The tool itself needs no purchase to run.
Top comments (0)