I've spent the last while on a problem that turned out to be harder and more interesting than I expected: finding people in public Telegram communities who are actively describing a problem your product solves.
The obvious approach is keyword monitoring, and it fails in both directions at once.
Too noisy: a term like "CRM" matches a recruiter posting a job, a student asking for homework help, and someone complaining about an unrelated bug. For every real signal you wade through dozens of irrelevant matches.
Too narrow: people don't describe problems in vendor vocabulary. Someone who needs analytics writes "we're flying blind on where signups drop off," not "looking for a product analytics platform." No keyword list survives contact with how humans actually write.
So the approach is embedding-based instead: index messages from public groups, embed them, and match against a semantic description of the problem rather than a list of strings. "We're drowning in manual lead research" and "no time to qualify inbound" share zero keywords but land close together in embedding space.
What I underestimated: retrieval is the easy half. Reading public groups isn't novel — plenty of tools do it. The hard part is precision. Hundreds of active groups produce enormous volume, and a filter that's 90% accurate still buries you in false positives. Most of the work has gone into ranking and thresholding, not into the search itself.
Disclosure: this is my product — Leadgram. Posting here because the retrieval problem is the interesting part, and I'd like to hear how others have handled noisy-signal filtering at scale.

0 Comments
No comments yet.