Everyone building on Facebook Lead Ads instruments the form. The form fires a webhook, the webhook writes a lead, the lead goes to a CRM. Solved problem.
Then you look at the ad itself and find thirty comments saying "narxi qancha?" — how much is it — and eleven people who typed their phone number directly under the post. None of them touched the form. None of them exist in your pipeline. They raised their hand in public and your system did not notice.
We route leads for advertisers in Uzbekistan, mostly physical goods sold on price and speed of callback. Here is what we learned building the comment path.
A comment is not a lead until three things are true
It has to be reachable. Extracting a phone number sounds like a regex problem and mostly is, until you see what people actually type. Numbers with a greeting glued to the front. Numbers with an order note after them. Numbers in Cyrillic-adjacent formatting. Local numbers with and without the country code, sometimes both in one thread. Normalise to something a partner API will accept before it leaves you — a compacted + and digits — and keep the raw text separately, because the raw text is often where the product they want is written.
It has to be attributable. A form lead arrives with a form id and a page id. A comment arrives attached to an ad. If you want cost-per-lead to mean anything afterwards, resolve the comment back to the campaign that paid for it at capture time, not later.
It has to be deduplicated across sources. The same person very often comments and fills the form, ten minutes apart. If your unique constraint is on the form's lead id, the comment version sails straight past it and your operator calls the same person twice. Dedupe on the normalised phone within a window, not only on the platform's identifier.
Replying is where it stops being an engineering problem
The obvious move is an auto-reply. The obvious auto-reply is "Assalomu alaykum! Telefon raqamingizni qoldiring" under all thirty comments, which reads exactly like what it is and performs accordingly.
What worked was narrower: read the product and price out of that specific ad's own caption, answer the actual question, and ask for the number as the last clause rather than the first. One reply per comment, never a second one, and off by default per page so it is a decision rather than a default.
The failure mode to design against is not a bad reply. It is a plausible reply that invents a price. If the caption does not state one, the reply must not either.
The part nobody warns you about
Your comment section is a list of people who publicly announced they want to buy, with contact details attached, on a competitor's screen as easily as yours.
In a market where several sellers run near-identical creative for the same product, that is not hypothetical. So phone-bearing comments can be hidden automatically — visible to you, invisible to everyone else — and abusive ones removed. The lead still reaches you. It just stops being a shared resource.
This is the sort of feature you only think of after an advertiser explains, patiently, why they stopped replying to comments at all.
Permissions, and asking for them at the right time
Comment access needs Facebook permissions that lead retrieval does not. The instinct is to bundle everything into one consent screen at signup. Do not: you will ask for four extra scopes from every user, most of whom will never use the feature, and lower your connect rate for all of them.
Request them in a second, separate flow triggered when someone actually turns the feature on. Facebook shows only the new scopes on re-consent, so the ask stays small. And treat "does this token carry the scopes" as a live fact you check, not a flag you store — users revoke things, and a stored boolean will happily lie to you for weeks.
Was it worth building
Yes, and not for the reason we expected. The volume matters, but the bigger effect is that comment leads arrive earlier in the buying decision than form leads. Someone asking the price in public is often still comparing. Someone filling a form has usually already decided — sometimes on a competitor.
We build this at Targenix — free Facebook and Instagram lead automation for Uzbekistan: form leads, comment leads and your own landing page, routed to 50+ destinations including CRMs, Telegram, Google Sheets and local CPA networks. There is a written map of the whole platform here, the integration list is at targenix.uz/integrations, and it is genuinely free — the reasoning is at targenix.uz/pricing.
Top comments (0)