← All case studies

Sales operations · Founder led automation build

Hand sales a contact list they can work through

Finding a company is only the start of a sales worklist. I built LeadHarvest to connect discovery, contact checks and prioritisation, then made long research runs recoverable when they stopped.

LeadHarvest research pipeline, from company discovery to validated sales worklists.
My role
Workflow designer and builder, through AI Byters
Work
Search, enrichment, validation, scoring and Excel exports
Project context
Automation build iterated from v1 to v2

The spreadsheet was the end of a scattered process.

Manual prospecting meant searching for a business, opening its website, finding contact details and deciding what to call first. Each researcher could apply a different standard, and location results could depend on the browser’s location.

I mapped that work as a sequence with an explicit handoff: search, enrich, validate, score and export. The useful output was a list a sales colleague could work through, with a contact route and a reason for its priority.

Build around the next person’s task.

I designed the workflow, defined contact quality rules and built the tool through two versions. I organised the Excel output around priority and channel, including High Priority, Standard, Phone Only, Email+ and Rejects, alongside the complete lead list.

The pipeline could discover companies from a keyword search or enrich a supplied list of company names. These entry points served different tasks while reusing the contact checks and export rules.

One lead, five explicit steps

  1. 01

    Discover
    Target the city and subarea

  2. 02

    Enrich
    Inspect the business website

  3. 03

    Validate
    Check phone and email fields

  4. 04

    Score & save
    Prioritise and checkpoint the lead

  5. 05

    Export
    Separate worklists by priority and channel

In v2, progress is saved after each lead. An interrupted run can resume from completed work.

Check where and how to contact, then rank.

Each city and subarea was geocoded separately, so discovery could target the intended neighbourhood. Website enrichment looked for email and social contact routes, trying a lightweight request before opening a full browser.

Phone checks used the target country. Email filtering removed false positives and preferred business domains. I scored the configured business and contact signals after these checks, so a populated field alone did not become a high priority lead.

The score is a worklist priority, not purchasing intent. It also does not establish permission to contact a person; a team still needs to decide how and whether to use the records.

Save the lead before moving to the next.

The first version checkpointed after every five leads. In v2, I moved that save point to every completed lead and added automatic resumption for an interrupted run. Completed research no longer had to wait for the next batch checkpoint.

The practical outcome was a pipeline with consistent worklists and recoverable progress. Its quality can be inspected in the contact fields, rejection rules and saved state, without treating a contact score as a sales result.

The next handoff remains human: review the priority list, choose the suitable channel and handle the conversation.

Earlier checkpoint

Every 5 leads

Progress was saved in batches.

Revised checkpoint

Every lead

Completed records are saved before the next lead.

A workflow and recovery change, not a measured revenue or sales conversion gain.

Open the work

What makes a lead ready for your team?

Start with a target area, a useful contact route and the rules that separate a usable record from a reject.

Discuss a research pipeline ↗ Email me

Project experience by Mehrab Mashrafi. Updated .