Platform

Sourcing

One source: LinkedIn's own search, run through your connected account. No scrape vendor, no per-lead cost, and the search sees what your account sees.

The trade runs both ways. Classic LinkedIn search returns a name, a headline, a location string and a profile URL — no structured company field, no job title field, no country code. Everything downstream that used to arrive as data has to be inferred, which makes two AI passes load-bearing rather than decorative.

Sales Navigator’s pitch is a single people search with rich filters. Classic has no such thing, but it has four narrower searches, and picking the right one per signal beats running a generic one. The signal kind picks the instrument.

Signal kindInstrumentWhat it returns
keyword_engagementPosts, then their reactions and commentsThe audience of a matching post, not its author
news_mentionPosts, keeping the authorsPeople who published on the topic
hiringJob postings, then people at the posting companiesA dated buying trigger, plus a real company domain
everything elsePeople searchProfiles matching the ICP filters

Two of those are what make a free account viable. Engagement beats authorship: a post has one author and often hundreds of engagers, so one reactions call returns dozens of identities where a people search returns rows that each still need enriching — and a reaction says what a person responded to and when. Job postings are the only route to a company domain: job search is the one search returning a numeric company id, and the company profile route is the one place a real website exists.

The ICP gate

A sweep pulls up to about 120 candidates per signal on a fifteen-minute cadence and expects to reject the large majority. The gate returns two judgements in one pass: a binary ICP membership decision, and a 1–5 intent score for those who pass. Rejects never become contacts — ICP is the floor, not a score. Soft maybes are rejects.

Budgeted, not greedy

The binding constraint is not money — LinkedIn allows roughly 100 calls a day per account and restricts your account when that is exceeded. So discovery is cheap and per-person enrichment is scarce: fan-out per sweep is a fixed constant, company lookups are cached including their failures, and paths returning many people per call are preferred over paths returning one.

Suppression is checked twice

Only the hiring path knows a company domain at sourcing time. On every other path the enrichment callback is the first moment an email or domain exists, and therefore the first moment a suppressed company or address can be recognised. The second check runs before the queue fill, so a suppressed contact is never queueable rather than unqueued afterwards.

Was this page helpful?