Case study
The job titles all matched. The intent was in the comments.
Reps were filtering a contact database by job title, then opening every profile by hand to work out who was worth a message. A prospecting engine now reads the comments under keyword-matched posts, scores buying intent in two AI rounds, and returns a per-person outreach brief.
- Confidence score on every lead
- 1–10Confidence score on every leadAnything below a threshold of 6 is dropped rather than exported
- To a profile dossier
- ~2 minTo a profile dossierAgainst roughly 20 minutes reading a profile and feed by hand
- Sources on one scoring rail
- 5Sources on one scoring rail
Sample content: not published
This engagement is sample content. This page is excluded from the sitemap and search indexing until the details are confirmed.
Finding names was never the problem. Knowing who was in-market was
Contact data is a commodity. Several vendors will sell an accurate list of every Director of Operations in a region. What none of them sell is the knowledge that one of those directors complained about their tooling under a post yesterday.
Reps were moving between disconnected tools: one to spot intent signals, another to build lists by industry and size, a third for local businesses. Each had its own login, its own export and no shared scoring logic, so a rep's judgement was the only ranking mechanism. That judgement does not survive being handed to someone else.
Extracting the signal reliably fails in specific ways, most of which only appear once a run covers more than a handful of keywords:
- Intent lives in the comments, not the post. The post is the bait; the buying signal is three replies down, in someone else's words.
- Buyers and sellers look identical. Under a post asking for a vendor recommendation, a good share of the commenters are competitors pitching. Both use the same vocabulary, often in the same thread.
- The same person surfaces many times. Without deduplication at the profile level, one prospect becomes six rows and pushes genuinely new names down the list.
- Posts arrive truncated. Feed responses clip the body at "…see more", so the context the model needs is missing exactly when it matters.
- Free-tier rate limits bind everything. Called naively and in sequence, a single run took longer than doing the research by hand.
A screen is cheap. Qualification is not. Do them in that order
The obvious design is a single call: give the model a comment, a profile and a company, ask for a verdict. It does not survive volume. A keyword sweep returns hundreds of comments, and enriching every commenter before scoring spends the profile-lookup quota on people who were never candidates, so the run either stalls on a rate limit or costs more than the leads are worth.
So screening happens on the cheapest signal available, and enrichment is earned. Round one is a deliberately cheap pass over comment text alone: buyer or seller, intent high, mid or hidden, and a seniority check. Survivors, and only survivors, get profile and company enrichment. Round two re-reads each one with that full context and returns a qualification verdict with a confidence score of 1 to 10.
The ordering is the architecture, not an optimisation. Fighting it is the most common reason this class of tool works in a demo and stalls in production.
Two modules that judge, three that cover, one export schema
The platform splits along a clear line. Two modules do judgement work: intent scoring reads the comments under keyword-matched posts, and a Lookup dossier assembles enough context to open a conversation. Three do coverage work, finding companies, contacts and local businesses that match a filter. Everything converges on one scoring step and one export schema.
Lookup runs two pipelines. A person summary chains three collection passes (basic profile and activity feed, then a deep pass for experience, skills and email, then a third that recovers the post content the feed truncated) and merges them into one record the model turns into interests, expertise, a career story and an outreach hook. Company intelligence resolves the domain first, then fires ten sources at once across encyclopaedia entries, news and careers searches, and site crawls, with a registry lookup spanning 15+ countries behind it. The output is a briefing, not a list of links.
The reach modules are held to the same standard: they drop records rather than pad them. A company with no contact after three widening attempts is skipped, and a business with neither an email nor a phone never enters the export.
Full autonomy was never the target. The system decides who is worth a message and hands over the context to write it. A person still decides what it says.
Recognise any of this in your own estate?
Start with the problem rather than the technology, and we will tell you honestly whether it is ours to solve.
