Use Claude to build a decision trail, not just a list
Claude can help discover B2B accounts, inspect public sources and prepare a qualification ledger. The useful output includes companies you should reject and facts you still need. A polished company summary does not make an account qualified.
In our September 23 exercise, Claude searched from an ICP without a supplied company list. The final reviewed ledger contains 0 retain, 4 reject and 1 research. Nothing was sent. This is a worked example of discovery and qualification, not a ready-to-contact list or a performance benchmark.
We used Claude Code 2.1.280, the terminal client, with existing access and only WebSearch and WebFetch enabled for discovery. Claude web is the browser chat surface; Cowork is a separate working surface. Neither was used in this exercise, and these results do not establish identical tools, permissions or behavior there.
You need a defined offer, access to a client with public search, a small research budget and somewhere to save the evidence. No contact database, enrichment API or sending connection was used. Start with the existing Claude prospecting guide, then use this example to inspect what actually happens between a search and a message.
1. Define what qualifies before searching
Our hypothetical seller prepares account lists and message drafts for B2B software teams. We fixed these criteria before the run:
- Business: independent private B2B software product companies with an English product site. Exclude consumer-only apps, pure services firms and publicly listed groups.
- Geography: headquarters in the United Kingdom or Ireland. A local branch does not establish headquarters.
- Size: 50 to 1,000 employees, supported by a dated first-party statement between September 24, 2025 and September 23, 2026. Planned hires and one office's team size do not count.
- Timing: an official, dated commercial hiring or commercial expansion event between June 25 and September 23, 2026. An undated vacancy or a search engine's crawl date is insufficient.
These are choices for this exercise, not a universal ICP. Retain requires every criterion. Reject means the observed record contradicts a requirement, including a stale event. Research means a required fact is missing, conflicting or inaccessible. Retain still does not mean a contact is verified or a message is approved.
- 1. Fix the ICPGeography, business, size and event window.
- 2. Search and check sourcesKeep facts, dates and unknowns separate.
- 3. Evaluate every criterionA public signal does not prove buying intent.
- 4. Record the decisionCriterion fails: reject (4 accounts).Fact unknown: research (1 account).All criteria pass: retain (0 accounts).
- 5. Review messages separatelyVerify every claim and the recipient role. This run: all drafts HOLD, nothing sent.
2. Search for events, then verify the company
The run made 11 searches and 14 fetches, within limits of 12 searches, 18 fetches and 10 candidate companies. Search results supplied pointers; five company records entered the qualification packet. This was actual discovery, followed by qualification of the saved evidence, not a model inventing a list from memory.
For your own search, pair the company category and geography with an event: commercial hiring, an announced office or entry into a new market. Follow a news result to the company-controlled announcement. Verify the official domain and the scope of each claim before joining records. Two brands sharing an office are not automatically the same legal entity.
A compact adaptation of the discovery instruction is:
Find companies from the fixed ICP, using public search only. Keep source URLs, publisher, publication date, event date and observation date separate. Retain only when every required criterion has evidence. Keep unknown facts null. Return reject or research when appropriate. Do not collect people or contacts. Do not send or enroll anyone.
The exact executed prompts are in the download. Our discovery process was interrupted before its final answer. A faulty local timeout check allowed it to run for about 20 minutes, despite a configured 10-minute guard. We then ran two tool-free qualification prompts over the same saved packet. Those were separate steps, not a completed autonomous prospecting session.
The preserved sources are WebFetch extractions, not archived page bytes. Two Bright news fetches returned 404; its careers page redirected to a job board. A failed fetch becomes missing evidence, not evidence that the company lacks a newsroom or never hires.
3. Keep all five decisions visible
Both qualification prompts returned the same counts. The table below reflects a subsequent agent review that corrected several field-level inferences. No human validation has been recorded. Dates below are the publication dates extracted during the run, except the separately identified Fenergo announcement date.
On a small screen, scroll the table horizontally to read sources and decisions.
| Account | Observed source and date | Decision and reason |
|---|---|---|
| Summize | BusinessCloud report, October 3, 2023: Boston office. | Reject. The observed expansion report is outside the event window. Other required facts remain unknown. |
| Fenergo | Enterprise Ireland release, July 8, 2025; announcement July 3. | Reject. Stale announcement about engineering and innovation roles. Planned jobs are not current headcount. |
| Bright Software Group | TheBusinessDesk report, July 22, 2026: Leamington Spa office. | Research. A secondary office report does not establish a primary dated commercial event. Group size, ownership and headquarters scope remain unresolved. |
| Spyrosoft | TheBusinessDesk report, March 14, 2024: Manchester office supporting a BBC contract. | Reject. Stale event. One services engagement cannot establish the company's entire business model. |
| Kappture | Galway Daily report, May 2, 2025: Galway hub expansion. | Reject. Stale event. A hub is not necessarily global headquarters; 20 planned jobs are not total employees. |
Reject applies to the evidence in this exercise, not a permanent judgment about the company. A future qualifying event could justify a new record. We did not loosen the size or freshness requirements to manufacture a shortlist. Choose your own criteria before a new run; do not change them afterward to requalify these results.
Bright shows why a source link is only the beginning. Its official site supports accounting, payroll and compliance software for businesses. However, the BrightPay team page supplied an undated product-family count, not dated whole-group headcount. A brand's head-office address also did not settle the group's headquarters. All of these gaps remain explicit.
4. Prioritize the next research question
Separate account fit from timing. Bright had official product evidence and a recent secondary report, so it deserved a more specific research task: find a dated official commercial announcement, whole-group size, headquarters and ownership evidence. It did not deserve an invented buying-intent score.
An office opening can reflect relocation, consolidation or capacity. Even genuine sales hiring does not prove demand for your service. Keep the observation, possible explanation and next action in separate fields, as in our signal-led outbound framework.
The cost of a false positive starts before a send. Someone reviews the wrong account, buys unnecessary enrichment or drafts around a false premise. Sending it can also damage credibility. We did not measure those costs in this exercise. The practical control is to resolve the missing fact before spending on the next step, while recording why promising-looking accounts stayed out.
5. Check the message even when the ledger looks right
The simple prompt correctly returned zero retained accounts, then wrote a Bright email and LinkedIn draft anyway. These are excerpts from the actual saved Claude Code output, not a screenshot or a reconstruction:
Actual email output, rejected by the reviewing agent
Subject: Leamington Spa and your next commercial hires
Happy to share how similar accounting and payroll software firms have approached it.
Actual LinkedIn output, rejected by the reviewing agent
Happy to share what has worked for other accounting software firms.
“Next commercial hires” was unsupported. The packet also contained no seller experience with similar firms. Elsewhere, the email promised a steadier flow of qualified conversations and introduced an engineering-resource problem that no source established. Adding a caveat after the draft did not make those claims true.
The structured prompt returned initial_drafts: null because no company qualified. One pair of outputs does not establish a general accuracy advantage, but it shows a useful instruction: when retain is empty, stop before drafting.
The reviewing agent prepared the following corrections to demonstrate removing unsupported claims. Both remain HOLD, research incomplete. The seller's offer is hypothetical and still needs verification.
Revised illustrative email, HOLD
Subject: An account-research example for Bright Hello, Bright's website describes accounting, payroll and compliance software for businesses. We prepare company-level prospecting lists and message drafts for review. If that work is relevant to whoever owns new-business prospecting at Bright, would a small account-selection example be useful? [Sender and actual service description to verify]
Revised illustrative LinkedIn message, HOLD
Hello. Bright's accounting and payroll software caught my attention. We prepare company-level prospecting lists and message drafts for review. If that work is relevant to your role, would a small account-selection example be useful?
The product description traces to Bright's official pages. No fresh-event hook survives. Before use, a human must resolve the missing account criteria, verify a relevant recipient role and the sender's real offer, and approve the message. No contact was selected, no platform draft was created and no message was sent.
6. Download the ledger and repeat the review
- Actual-run evidence package: five-account CSV and JSON, source register, exact prompts, saved model outputs, corrections and a README explaining the run's limits.
- Offline qualification helper:
qualify.py, the frozen ICP and separately labeled synthetic fixtures. Requires Python 3.9 or later.
The helper applies true, false and unknown criteria already assigned by a reviewer. It does not discover companies, verify web facts or predict responses. From the extracted helper folder, run:
python3 qualify.py --input fixtures/policy-cases.v2.json --output results/check.json
Its fixtures use reserved .invalid domains. They test policy behavior, including missing evidence and duplicates, and are separate from the five real company records. Replaying saved evidence reproduces a decision rule; a new live search may produce different results.
Choose the next action the evidence supports
Get the Claude prospecting guide
For this run, the next action is further Bright research or a new, explicitly revised ICP exercise. The current list stays on hold. We have not demonstrated a retained account becoming approved outreach.
For your own workflow, use the Claude prospecting guide as the companion, keep the rejected accounts and compare each message sentence with its source. Existing Salesforge, Clay and Apollo guides cover other research and connected-data workflows. This exercise adds inspectable failure cases, not a claim that those alternatives lack controls.
Once you have qualified accounts, Overloop's buying signals can inform prospect prioritization and contextual email and LinkedIn outreach. Related-party disclosure: Max / yourmax.ai is part of Overloop. Max is operated by Sortlist SA, as stated in its terms. Overloop publishes this guide. You can explore Overloop for that next stage; verify the signal coverage and access available to your account. We did not run an automatic Claude-to-Overloop handoff, import, enrichment or campaign in this exercise.
Frequently asked questions
Can Claude find new companies for sales prospecting?
In this Claude Code exercise, WebSearch and WebFetch discovered company sources from an ICP without a supplied list. The final reviewed result was zero retained accounts, four rejects and one research case. Discovery did not establish contact readiness.
Was this tested in Claude web or Cowork?
No. The observed surface was Claude Code 2.1.280. Claude web and Cowork were not tested, so the article does not claim equivalent tools, permissions or results there.
Is the downloadable list ready for outreach?
No. Every account and message remains on hold. The corrections were made by an agent, and human validation is pending. No recipient was selected and nothing was sent.