Skip to main content

Command Palette

Search for a command to run...

I sent 2435 cold emails with 0% spam rate, here's exactly how I built the tool that did it

The story of building Preacher, an AI cold email tool that writes personalized paragraphs per contact and sends from your real Gmail or Outlook address.

Published
7 min read
I sent 2435 cold emails with 0% spam rate, here's exactly how I built the tool that did it

I hate cold email tools.

Not cold email itself, cold email works. I hate the tools that promise deliverability and personalisation but quietly send from shared IP pools, charge you $59 a month, and produce emails that read like they were written by a robot having a bad day.

So I built my own. This is the story of Preacher.

The problem I was trying to solve

Most cold email tools have two fundamental issues that nobody talks about honestly.

Issue 1: They send from bulk infrastructure.

When you use Instantly, Lemlist, or most tools in this space, your emails go out through their sending infrastructure. Even if your name is on the from field, the underlying IP and sending domain is shared with thousands of other users. Email providers know this. They pattern-match it. Your email lands in Promotions or Spam before the recipient ever sees it.

Issue 2: Personalisation is fake.

The industry calls it personalisation when a tool inserts someone's first name and company name into a template. That is not personalisation. That is mail merge. Real personalisation means the email references something specific about that person's business, something that shows you actually looked at what they do.

Most tools do not do this. They cannot. They have no idea what Shivam Creation or Genie Touch Media actually does.

The idea behind Preacher

I wanted a tool that did two things correctly:

One — Send from my real Gmail or Outlook address. Not a shared bulk sender. My actual inbox, with my actual sender reputation, so emails land where they belong.

Two — Actually research each company before writing the email. Fetch their website. Read what they do. Write something specific to them.

Everything else — the UI, the CRM, the inbox rotation, came later. But those two things were non-negotiable from day one.

How it works

The flow is straightforward.

You upload a CSV or Excel file with your contacts. You need at minimum a name column, a company column, and an email column. If you add a website URL column, and I strongly recommend you do, Preacher fetches each company's website before writing the email.

Then you write your base template. You write it once. You mark the sections where you want AI to fill in something specific using a simple syntax:

[[AI: Write a warm opener referencing something specific about {{business_name}} from their website. 2 sentences.]]

When you hit Research and Generate, Preacher fetches each company's website, sends the content to your AI provider of choice, Groq, OpenAI, Gemini, or Claude, and writes a paragraph specific to that company. Every email gets its own version. No two emails are the same.

Then you review every email before anything is sent. You can read through each one, edit any you want to change, and send individually or all at once.

Emails go out through smtp2go using your verified Gmail or Outlook address. You can add multiple inboxes and rotate between them to stay under daily sending limits. The configurable delay between sends keeps everything within safe thresholds.


The results after 433 sends

I have sent 433 emails using Preacher across multiple campaigns.

Spam reports: 0. Bounced: 0. Reply rate: around 12%, which is significantly above the 3–5% industry average for cold email.

The 12% is not because I am an exceptional copywriter. It is because every email referenced something real about the recipient's business. When someone at Genie Touch Media gets an email that mentions their specific approach to social media management and their client results, they know it was not blasted to 10,000 people. It reads like you did your homework.

That is what drives replies.


What I built it with

Preacher is a single-page web application. The frontend is vanilla HTML, CSS, and JavaScript, no framework. I wanted it to load fast and work in any browser without dependencies.

The backend runs on Node.js, hosted on Render. Emails are sent via the smtp2go API, which handles the actual delivery from your verified sender address.

For AI, I support four providers so users can bring their own key:

  • Groq — completely free, 100,000 tokens per day, good for under 30 emails per day

  • OpenAI GPT-4o-mini — recommended for higher volumes, very affordable

  • Google Gemini — free tier available

  • Anthropic Claude — paid, excellent quality

Website research uses a backend proxy with optional ScrapingBee integration for more reliable content fetching from company sites.

Authentication uses session tokens with CSRF protection. API keys are stored server-side, never in localStorage.


The hardest part of building it

The hardest part was not the AI integration or the sending logic. It was the website fetching.

Company websites are messy. Some are React SPAs that require JavaScript execution to render any content. Some block scrapers. Some load slowly. Some are in different languages. Some have no useful content at all, just a holding page.

I had to build fallback logic for all of these. If website fetching fails, the AI still writes something — it just writes something more generic, based only on the company name. The email still goes out. It just has less specific personalisation.

The ScrapingBee integration helped significantly with the JavaScript-rendered sites, but it adds a cost per credit. I made it optional so users can decide whether it is worth it for their use case.


What I would do differently

I would add a name column validation earlier.

A lot of users upload CSV files where the name column contains generic values like "there" instead of actual first names. The tool sends "Hi there" to every contact, which is not ideal. I have since added a warning, but I wish I had built a smarter validation step from the start.

I would have built the pricing page earlier.

I launched with a free plan and added paid plans later. That meant I had users who had been using the tool for weeks before they saw a pricing page. Setting expectations earlier would have made the upgrade conversation easier.

I would have launched on Product Hunt from day one.

I spent time polishing features before launching publicly. That was a mistake. The feedback you get from early users is worth more than any feature you think they might want.


Where Preacher is today

Preacher is live at concieit.com/preacher.

The free plan gives you one sender inbox, unlimited contacts, full AI personalisation, and a built-in CRM to track replies. No credit card required.

Paid plans start at $3.49 per month and go up to $19.99 for 25 sender inboxes and up to 1,250 emails per day.

It is built for solopreneurs, freelancers, and small sales teams who want the quality of hand-written outreach at the scale of automation — without paying $59 a month for features they will never use.


What is next

A few things I am actively working on:

  • Follow-up sequences — scheduled follow-up emails for contacts who did not reply

  • Better name detection — automatically flagging contacts where the name field looks like a placeholder

  • Reply detection — connecting to Gmail API to automatically mark contacts as replied when a response comes in

  • A proper onboarding flow — the current setup is documented in a How It Works panel, but a guided first-send experience would reduce drop-off significantly


Final thought

Cold email gets a bad reputation because most people do it badly. They blast generic emails to enormous lists and wonder why nothing works.

The solution is not to send fewer emails. It is to send better ones. Emails that reference real things about real businesses, from a real inbox, written with enough specificity that the recipient knows it was meant for them.

That is what I built Preacher to do.

If you do cold outreach and you are tired of spam folders and low reply rates, give it a try. It is free to start and takes under five minutes to set up.

concieit.com/preacher


Built by Kaustubh Bagad, founder of CONCIEIT — your luxury AI concierge.


1 views