Enrichment is the only step that costs real money per person, so it belongs last. Run four gates first: is there anything to read, is the problem theirs, do they fit the company criteria, and is the timing plausible. Everyone filtered out costs nothing.
Disclosure: Signl is ours, and it runs this ordering by default. The gates work in any tool, including a spreadsheet, and the argument holds whatever you use. Product behaviour named here was checked against our code on 25 October 2026.
Key facts
- Reading a comment and checking a job title are free. Finding a verified work email is not.
- In a busy thread the majority of commenters fail gate one or two, before any judgement is needed.
- Filter order is a cost decision, not a workflow preference.
- Rejections are the most useful output of the whole process, and most setups throw them away.
- Fit answers who. It does not answer when, and treating it as if it does is the second mistake.
What the wrong order costs
The arithmetic is simple enough to do in your head, and it is the reason this article exists.
Take a thread with 200 commenters. Suppose, after everything, 20 of them are people you would genuinely write to. Your own numbers will differ, and the ratio is what matters rather than the figures.
Enrich first, score after. You pay for 200 lookups. At an illustrative $0.10 a lookup with a 65% match rate, that is roughly $20 for about 130 addresses, of which you use 20. You paid about $18 to look up people you will never contact, and your sequencer now contains 110 addresses somebody will eventually mail anyway because they are sitting there.
Score first, enrich after. You pay for 20 lookups. Two dollars. The other 180 cost nothing, because nothing was bought for them.
That is a tenfold difference on one thread, and the gap widens with reach: a viral post produces more commenters without producing proportionally more buyers. The deeper version of this argument, including why paying per attempt rather than per result makes it worse, is the bounce tax.
The four gates
Run them in this order. Each one is cheaper than the next, which is the whole design.
| Gate | Question | Cost | Typical pass rate in a busy thread |
|---|---|---|---|
| 1 | Is there anything to read? | Free, rule-based | Low. Most engagement is empty |
| 2 | Is the problem theirs? | Free, one sentence of judgement | Moderate |
| 3 | Does the company fit? | Free if you have the data | Moderate |
| 4 | Is the timing plausible? | Free, and the softest gate | High |
Pass rates vary enormously by source and are not worth publishing as numbers. The ordering is the point.
Gate 1: is there anything to read
Pure rules, no model required, no cost at any volume.
- No text at all, or only emoji and punctuation.
- Generic praise of six words or fewer. "Great post", "So true", "This", "Congrats".
- The post's own author replying under their own thread.
- Headlines saying open to work or actively looking.
- Recruiters, unless you sell to recruiters.
In our experience this removes a large share of a popular thread before anything expensive has happened. Signl applies these free, ahead of any classification or lookup.
A reaction with no comment is a special case. It carries no words at all, so there is nothing for gate 2 to read, and the only evidence is the person's headline. Treat reactions from strangers as a lower tier: Signl requires a reaction to clear a default confidence of 60 against 40 for a comment, which is the same judgement expressed as a threshold.
Gate 2: is the problem theirs
One sentence of reading, and the fastest qualifier in this channel is the pronoun.
| What they wrote | What it means | Action |
|---|---|---|
| "We still do this manually" | A buyer describing their own operation | Continue |
| "My clients struggle with this" | An agency or consultant | Partner conversation, not a prospect |
| "I used to see this a lot" | Past tense, often a job seeker | Stop |
| "You should try X" | A vendor in your category | Stop |
| "Does anyone know how to..." | A buyer, earlier stage | Continue |
This gate is where most of the quality comes from, and it takes a second per person. It is also the gate that automation gets wrong most often, which is why the reason needs to be recorded in words rather than as a score.
Gate 3: does the company fit
The ordinary ICP criteria: job title, seniority, industry, company size, country. Nothing clever, and no inference about a company from a field you do not have.
Two rules worth holding to. A missing field is unknown, not a pass. And a hard criterion is hard: a perfect comment from a company in a country you cannot invoice is not a lead. Signl caps the match when a known country falls outside your list, whatever the rest looked like.
If you want to see how your existing list scores against criteria like these before changing anything, our free ICP fit checker does it in the browser without an account, and shows which criteria matched, which did not, and which could not be read at all.
Gate 4: is the timing plausible
The softest gate, and the one to apply last because it is the most likely to be wrong.
Read the tense. "We are rolling it out next month" is closed for now. "We are looking at options" is open. "We left them last year" is open and comes with an objection attached. A person who just bought is not a lead this quarter and may be a very good one in nine months, which is a note in a calendar rather than a lookup today.
This gate should rarely reject outright. It mostly reorders.
Read the rejections
The gates produce two lists, and the second one is the valuable one.
Every person you set aside should carry a reason in words. Not a score: a sentence. "Agency, said my clients" is auditable. "Confidence 41" is not.
Read that pile weekly for the first month. What you are looking for is a pattern of names you recognise as buyers, because that means the filter is wrong rather than the source. The fix is almost always one specific thing: a job title your ICP does not list, a country you forgot, an industry labelled differently in the data.
Signl keeps the reason for every filtered person in a Filtered out tab for exactly this. An invisible rejection teaches nothing, and a wrong one you cannot see is a bad ICP you will keep for a year.
What this looks like with tooling
Four phases in a fixed order: discover, classify, enrich, compose. A person the classifier filters out never reaches an email lookup, which is what turns the argument above into a bill rather than a principle. The plan includes 500 verified work emails a month with nothing charged per person, so the cost of being wrong is a wasted allowance rather than an invoice, and the allowance only moves for people who passed.
The composition step runs last on purpose too. Writing an opening line costs a model call, and writing one for someone you are not going to contact is the same waste one step along.
Limits
- Fit is not intent. All four gates together tell you someone looks like a buyer. Whether they want to talk this month is a different question, covered in LinkedIn buying signals.
- A tight filter on a thin source produces nothing. If a source yields two qualified people a month, the problem is the source, not the gates.
- Gate 2 needs the comment text. A workflow that stores only names and titles cannot run it, which is the practical argument for keeping the verbatim comment on the record.
- None of this makes the outreach lawful. Qualification is a commercial filter. The data protection questions are separate and unchanged: see GDPR and B2B prospecting. This is not legal advice.