Where it started
ADifesa is a consumer-protection association. It works for people who were charged costs they never owed on a salary-backed loan, a revolving credit card or a loan sold with an insurance policy, and it tries to get that money back. The assessment and the claim are free; the association is paid only out of what it recovers. Its office is in Lissone, near Milan, and it handles cases across Italy.
The Meta campaigns bring in completed forms, and that part already worked. The problem was everything around it: comments pile up under every ad, and requests land in the message inbox. These are people describing something private in public, namely how much they owe a bank.
Whoever writes there isn’t browsing. They have just read the ad and want one thing: to know whether their case qualifies. If nobody answers for a day, they take that question somewhere else.
The job isn’t replying, it’s working out whether the case qualifies
This is the part people underestimate. Anyone can reply “send us a private message”. The value is knowing whether there is a case at all, and the association’s rules are tight.
There are ten active eligibility rules, across five product types, naming eleven banks and lenders. It isn’t a keyword list: each rule has its own window of years and its own conditions. Revolving cards count if they were opened between 2000 and 2017, except for two issuers where the window is wider. A Compass loan counts from 2011 to 2020, a Deutsche Bank or Findomestic one from 2017 to 2022, and only above a certain amount. Business credit lines only for companies trading for five years and above twenty thousand euros. Investment losses yes, cryptocurrency no.
And before any of that, the automation has to work out what is being discussed. Nobody writes “salary-backed loan renewed in 2016” in a comment. They write that a fifth of their salary is being withheld, that they have a card that never ends, that they were sold insurance along with the loan. Those words have to lead to the right product, because the product decides whether a case exists.
The numbers
Production data, May 1 to September 16, 2026.
From July, Instagram direct messages come in too. Volume follows the association’s campaigns, which were scaled back from August. September through the 16th.
| Conversations handled | 2,329 |
| Different people | 1,794 |
| Qualified contacts | 1,033 |
| Complete records, with name, phone and email | 524 |
| Handed to a person | 111 (4.8%) |
| Private messages received | 2,951 |
| Private replies written by the automation | 1,676 |
| Public replies under comments | 1,262 |
Of those 2,329 conversations, 1,065 started as a comment under an ad, 232 as a comment under a post and 1,032 as a direct message.
But the first number we look at isn’t the total, it’s the 524 complete records: name, phone, email and product, which is what an adviser needs to pick up the phone already knowing what the call is about.
Half of these people write when the office is closed
Of the 2,951 private messages received, 1,377 arrived outside working hours, that is 46.7%: 850 on weekdays before nine or after six, 527 at the weekend, 267 between ten at night and seven in the morning.
It’s the easiest number in the project to underrate. It doesn’t say the automation is fast, it says almost half of these requests arrive when there is nobody there to read them. They come on the evenings and Sundays when someone sits down with their statements, and that is exactly when they decide to write.
A phone number under a post is a problem, not a lead
It happens constantly: someone types their phone number into the comment, in the open, under the ad. They want a call back. Meanwhile anyone passing by can read that number.
The automation treats it as an incident to close, not a lead to bank: when a comment contains a phone number or a sensitive detail, it hides the comment and moves the conversation into private messages. This applies under ads and under organic posts, on Facebook and on Instagram.
Public comments also get a deliberate three-minute wait before the reply goes up. That isn’t slowness: a reply that appears the same second someone finishes typing tells everyone there is a machine underneath.
When it hands over to a person, and why
111 conversations out of 2,329, fewer than one in twenty, were handed to someone on the team. The automation closed everything else on its own.
Control stays with the client, and this is the piece a demo never shows: from the control panel the association switches the automation off on a single conversation and carries on by hand, without touching the others. From that moment the chat is theirs and the bot stays out of it.
Then there is a rule that sounds trivial and isn’t: never dance around the fee. The association does get paid, as a percentage of what it recovers. In the comments, “what does this cost me” comes up every day, often with an edge to it. The reply says the assessment and the claim are free and that you pay only if the refund arrives, and it doesn’t try to move the question into private. With an audience that has heard too many promises already, an evasive answer is worth less than nothing.

Instagram came later, and it shows
The project started on Facebook. Instagram direct messages took an extra step: five permissions to be approved by Meta, each with a demonstration video.
The first submission, in May, was rejected. The five videos were re-shot on May 28 with a different method, showing the chain of identity between the Meta portal and the system, and that time it went through. Along the way came a detail worth the story on its own: Meta asked for a demonstration of a function that doesn’t exist in its own API, namely editing an Instagram comment. You can create, hide or delete one; you cannot edit it. The demonstration was rewritten around what the API actually does.
You can see the effect in the data, in qualified contacts coming from Instagram:
| Month | Contacts |
|---|---|
| May | 6 |
| June | 29 |
| July | 117 |
| August | 22 |
| September, to the 16th | 6 |

The post that cost eighteen dollars a day
In July one of the association’s posts went viral in the worst way: thousands of angry political comments, not one of them a case to take on. The automation read them one by one and correctly classified them as irrelevant, but to know that it had to call the model first. Around eighteen dollars a day burned answering nobody.
The fix wasn’t stricter filters, it was a counter. Every post keeps a tally of comments seen and how many turned out to be spam: past a threshold, that single post is muted and its comments never reach the model. In the window observed, 257 posts were tracked and 37 muted.
A muted post doesn’t go blind: words that point to a real product, like the name of a lender or “salary-backed loan”, still get through. We checked it against real comments rather than invented examples before it went live: no good case lost out of thirty-five tried, and all ten genuine leads recognised.
What we got wrong, and fixed
If we only told you what worked, it would be an ad.
- “They withhold a fifth of my salary” was landing in spam. The filter discarded anyone talking about a fraction of their salary, to keep out generic venting. But a fifth is literally a fifth: the association’s main product was being mistaken for noise.
- People who commented again got the opening message twice. Someone already in a chat, coming back to comment under an ad, received a second “how can we help you?”. Now if the conversation is already open, the second message never goes out.
- Reels shared in private restarted the bot. Instagram sends a shared video as a message with no text, and the automation replied to every share. Now an attachment with no words gets no reply.
- On Instagram every contact was called “User c168f1”. The name was being read from a field that doesn’t exist on Instagram. Fixed, and the old names recovered: from 33 nameless contacts down to 4.
How many of those contacts become clients
Our database stops at the complete record. What happens next, once the adviser calls, only the association knows, so we asked them.
The answer: 3 out of every 10 complete records become clients, with at least one case opened.
It is their number, out of their system rather than ours, and we report it as they gave it to us. It is worth reading for what it is: not 30% of everyone who comments, but 30% of the people who reached the end of the conversation and left a name, a phone number, an email and a product.
What these numbers don’t say
We don’t count the human work after a handover, because from that point the conversation continues inside Meta’s own tools and not in our system. And the outcome of the eligibility check isn’t recorded as such: the adviser makes that call, with the documents in hand.
How many refunds came through after that, and for how much, is not our figure and doesn’t belong here. A case study that promises revenue without holding the revenue figure is an ad in disguise.
Frequently asked questions
How many conversations did the automation handle?
From May 1 to September 16, 2026 it handled 2,329 conversations across comments and private messages on Facebook and Instagram, with 1,794 different people. They produced 1,033 qualified contacts and 524 records complete with name, phone and email.
Does it answer public comments too, or only private messages?
Both. Under a public comment it replies after a deliberate three-minute wait, and opens the private conversation in parallel. In the window observed it wrote 1,262 public replies and 1,676 private messages.
What happens if someone posts their phone number in a comment?
The comment is hidden and the conversation moves into private messages. A phone number sitting in the open under an ad is a risk to the person who wrote it, not a lead to collect.
When does a person step in?
Whenever the client decides: from the control panel the automation is switched off on that single conversation and the team carries on by hand. It happened on 111 conversations out of 2,329, fewer than one in twenty.
How many of those contacts become clients?
According to the association, 3 out of every 10 complete records become clients with at least one case opened. That is their figure, from their system: our database stops at the complete record, meaning name, phone, email and product.
How long does it take to set up?
It depends on how well defined the rules are. The long part isn’t the software, it’s writing down exactly when a case qualifies and when it doesn’t: here that meant ten rules with windows of years, minimum amounts and named lenders. For Instagram direct messages, factor in Meta’s approval of the permissions as well.
The close
If you run campaigns on Meta, there is already a queue of people under your ads asking you something. The question isn’t whether to answer automatically, it’s whether your rules are written well enough for someone else to answer in your place.
If you’d like to see how we work before we talk, here’s how we build automations.
Thirty minutes, and we’ll tell you where we’d start.

