Blog/

How to Build a Targeted B2B Prospect List From a Description

To build a targeted B2B prospect list from a description, write down your ideal customer profile (ICP) in plain English (industry, size, location, and the specific traits that make a company a good fit), match it against real companies, then narrow the results with buying signals like hiring, funding, or tech-stack changes so the list only contains accounts worth a rep's time.

This guide is for founders, sales leaders, RevOps, and SDRs who need a list they can actually work, not a spreadsheet of loosely related companies. It walks through what to define before you start, how to go from a written description to a list, how to narrow that list with signals, and how to check the list is targeted before it reaches outreach.

What do you need before you start building a B2B prospect list?

Before you touch any tool, write your ICP as a short, specific description, not a list of vague filters. Include:

  • Firmographics: industry or sub-industry, employee range, headquarters or target regions, and (if relevant) funding stage or revenue range.
  • The traits that actually predict fit: a specific tech dependency, a business model detail, a compliance requirement, anything that separates a real fit from a company that merely matches the size and industry filters.
  • Exclusions: company types that match the surface criteria but are known bad fits (for example, agencies when you sell to product companies, or a size range you already serve well through other channels).

A vague ICP such as "SaaS companies" or "manufacturers" produces a list you will spend hours pruning by hand. A specific one, such as "Series B fintech companies in the US, 50 to 200 employees, currently hiring for compliance roles," gives you something you can act on directly and reuse as-is when you search.

How do you turn an ICP description into a prospect list?

There are two ways to go from that description to an actual list of companies.

  1. Manual filter assembly. Break the description into individual filters (industry, headcount, location, funding stage) and apply them one by one inside a database or a search tool like LinkedIn Sales Navigator. This works, but every extra trait in your description (tech stack, hiring activity, a specific compliance need) usually means adding another separate tool, then merging and deduplicating the results by hand.
  2. Plain-English matching. Some tools, including Retriever, let you paste the ICP description itself and return a ranked list of matching companies directly, without manually reconstructing it as a stack of filters. Each result comes with a match score and the source evidence behind it, so you can see why a company was included instead of taking the tool's word for it.

Either way, the traits you wrote down in the previous step should map directly onto the search, not get diluted into "any company that's roughly the right size." The tighter the mapping, the fewer companies you will need to remove later.

How do you narrow a list with buying signals?

A list that matches your ICP is a market, not a set of leads to call today. Buying signals narrow that market down to the companies where the timing is right:

  • Hiring signals: open roles that indicate a new initiative, a team buildout, or a budget that just got approved.
  • Funding signals: a recent round, which often means new budget and pressure to show results fast.
  • Tech-stack signals: adoption or removal of a specific tool, which can indicate a gap your product fills.
  • Leadership and social signals: a new executive hire, or LinkedIn activity from decision-makers discussing a problem your product solves.

The order matters: filter by ICP fit first, then by signal. A company with a strong signal but a poor ICP fit is still a poor fit, and chasing it wastes the same rep time you were trying to save. Retriever sets up and continuously tracks these signals (hiring, funding, tech stack, leadership, and LinkedIn or social listening) against your ICP, so a company surfaces only when it matches the profile and carries a signal worth acting on, instead of resurfacing the same static list every quarter.

How do you check that a prospect list is actually targeted, not just long?

A long list is easy to produce and usually a sign the filters were too loose. Before handing a list to a rep, check it against a few concrete questions:

  • Can you point to the evidence for each match? If you cannot say why a specific company is on the list beyond "it matched the size filter," the list is not targeted, it is broad.
  • Is the false-positive rate low when you spot-check it? Pull 15 to 20 companies at random and check them against your written ICP by hand. If more than a handful clearly do not fit, tighten the description and rerun the search rather than pruning by hand every time.
  • Does the list stay current, or does it go stale the moment it's exported? A static export is accurate for a day. Company headcounts change, funding rounds close, and hiring pages update; a list worth working should be checked against fresh signals before outreach, not just at the moment it was built.
  • Is it small enough to actually work? A shorter list where nearly every company is a real fit will outperform a much longer one that is only loosely on-target, because reps spend their limited time on accounts that can actually convert.

How does Retriever help here?

Retriever is built for the exact workflow described above: you describe your ideal customer in plain English, and it returns a ranked list of matching companies, each with a match score and the source evidence behind the match, so you can verify fit instead of trusting a black box. On top of that, Retriever sets up and continuously tracks buying signals (hiring, funding, tech stack, leadership changes, and LinkedIn or social listening) against your ICP, so a company surfaces when it both fits the profile and shows a signal worth acting on. For teams that want this available to an AI agent or an internal tool, Retriever also exposes an MCP server so ICP company search can run programmatically instead of through a UI.

See the product page for how matching and signals work in more detail, or book a demo to try it against your own ICP.

Frequently asked questions

What is the difference between a prospect list and a lead list? A prospect list is a set of companies (and often contacts) that match your ICP but have not yet engaged with you. A lead list is narrower: people or accounts that have already shown some interest, such as filling out a form or attending a webinar. Prospect lists feed the top of outbound; lead lists are closer to the point of conversion.

How big should a targeted B2B prospect list be? There is no fixed number. Size the list to what your team can actually work well with the fit bar you set, not to a round number. A shorter list where nearly every company is a genuine ICP match is more productive than a much longer one padded with loose matches, since the extra volume just adds pruning work later.

Can I build a targeted prospect list without a paid tool? Yes, by manually applying your ICP criteria inside a search tool with a free tier (such as LinkedIn's basic search) and checking each result by hand against your written ICP. It is slower and does not scale past a modest list size, and you will likely need separate steps for enrichment and signal tracking, but it works for a first, small list.

Do buying signals replace the need for a well-defined ICP? No. A signal only matters if it is attached to a company that already fits your ICP. Applying signals to an unfiltered market just produces a longer list of the wrong companies with good timing, which is still the wrong company.

How often should a prospect list be refreshed? It depends on how fast your signals move. Funding and leadership changes are relatively rare and can be checked monthly; hiring and tech-stack signals shift faster and are more useful when tracked continuously rather than re-pulled on a fixed schedule.