Work / Side Projects / Prospect & Outbound Engine

Side Project — Prospect & Outbound Engine

A self-built outbound pipeline, run at scale across 9+ offers

A system that finds people and companies I may want to contact, built mainly with public data and free tools. It adds missing details, checks email addresses, and writes a personal message for each person. I have used it to send campaigns for several offers.

internal QA tool
Prospect & Outbound Engine screenshot
9+offers and niches tested end to end
409companies enriched and scored in a single live run
71%of database-tier addresses came back good in the pre-send check

What It Is

The system pulls contact details from government records, business directories, United States Securities and Exchange Commission filings, executive search lists, franchise directories, and app store listings. It also pulls chamber of commerce and industry association member directories across the United States, United Kingdom, Canada and Australia. It cleans and scores the list, checks which emails are real, and writes a personal message for each person. I also built a preview tool so I can check every batch of messages before they go out.

Why I Built It

Every paid tool I looked at for collecting public data and finding emails charged for each contact or each person using the tool. I could build most of that myself with data that was already public. The free version worked well for the number of people I needed to contact, so I built it once and have used it whenever a new offer needs a list.

I already know how to build this same kind of workflow in Clay, the usual tool marketers reach for. But I live inside Claude Code every day now, so I built the same orchestration there instead, the part that would normally live in a Clay table. It turned out faster for me and easier to change on the fly. Knowing the standard way to do something, and choosing to build it differently because my own workflow has moved past it, is the story here.

What It Does

I've used the system for at least nine different offers and types of business. These include local services, tech startups, creators, and companies that make WordPress plugins and browser extensions. I also used it for app makers on Google Play and the Apple App Store, along with executive search and franchise directories. In one run, it scored and checked 409 agencies. I tested every list by sending live emails before deciding whether I needed a bigger paid tool.

Smartlead runs the actual sending, but it has no way to tell me when something needs attention. There's no "email me when a lead replies" feature, and a campaign that gets auto-paused by its own bounce protection doesn't notify me either. Left alone, that means checking the dashboard several times a day just to catch a reply or confirm a campaign is still live. That gets old fast, and it only takes one missed reply on a hot lead to lose the point of building this in the first place. So I built two n8n workflows around Smartlead's own webhook events. One listens for a reply and sends me an email through Resend with the name, campaign, subject line, and the reply itself, so I see it the moment it lands rather than the next time I happen to check. The other listens for a status change and only fires when a campaign moves into paused, which is what an unexpected auto-pause looks like, so a normal resume never triggers a false alarm. Both run off one shared webhook address that every current and future campaign can point at, so adding monitoring to a new niche is a settings change, not a new workflow.

The other half of what I send never goes through Smartlead at all. When I pitch twenty companies individually, each email is written for one person, and a bulk sender is the wrong place for that. I was doing those by hand. Nothing checked the addresses first, and once they were gone I had no record of them. So I connected the system to my own Gmail account instead, through the same kind of access a mail app gets. Drafts land in my real drafts folder, I read them there, and when I approve a batch it runs every address through a deliverability check and stops if any of them fail. Afterwards it reads the mailbox and tells me what bounced.

The first batch of thirteen had two bounces, both on addresses a paid database had already told me were verified. Verified means the address existed the last time the database looked. It doesn't mean anyone still reads it, and marketing people change jobs constantly. I check on the day now.

What It Taught Me

Sending live emails taught me where the paid tools are worth the money. On a 280-address agency list, I ran every address through a verifier before sending. Of the 42 addresses that came from a paid database, 71 percent came back good and 2 percent came back bad. Of the 238 that came from my own free website scraper, 53 percent came back good and 10 percent came back bad. The scraper produced 24 of the 25 bad addresses. I also learned what "catch-all" means. It is a setting that makes an email checker unsure whether a specific address exists. MillionVerifier cannot always confirm those addresses, so I use another tool that can check them and keep the good ones. I learned all of this by running live campaigns, watching the verifier results and the bounces, and fixing the system when the data proved me wrong.

The alerting layer taught me a separate lesson. Two live replies came in early on, and the workflow reported success on both, but neither alert sent. The cause was a hand-built message string with manually escaped quotes, and real replies carry contractions and quoted email threads that broke it in ways my test payloads never did. I rebuilt the message using structured fields instead of a raw string, then replayed the exact reply content that broke it the first time to confirm the fix held. A workflow reporting success only confirms it ran end to end. It says nothing about whether the email behind it went out, and I only learned to check that second part by watching it fail once in production.

Want something like this?

I'm open to full-time or in-house work where you need an ongoing plan or someone to lead marketing for the long term. I also offer specific marketing and sales services for teams that need help with the work itself: marketinginaction.xyz/services.

MIA Academy →
13week flagship Bootcamp program
₦9M+in Selar sales across MIA's digital products