Come evitare che un chatbot WhatsApp vada in loop: limite di tentativi, risposta alternativa e una via d'uscita
“Mi dispiace, non ho capito. Scelga un'opzione.” Una volta va bene. Alla terza il cliente è già andato via. Un contatore, un ramo alternativo e una regola di passaggio a un operatore trasformano un bot che gira a vuoto in un bot che sa quando fermarsi.
Team MonoChat Aggiornato: 8 min di lettura
In questa pagina
Un chatbot WhatsApp va in loop quando non riesce ad abbinare la risposta del cliente e continua a fare la stessa domanda. Per fermarlo, dia a ogni domanda un ramo alternativo per le risposte inattese, conti quante volte il bot ha chiesto e passi la conversazione a una persona dopo due o tre tentativi, con la cronologia allegata. In MonoChat bastano tre nodi: Domanda e risposta con la sua uscita Su altro, Imposta variabile di flusso per contare e una condizione If sul conteggio che porta ad Assegna conversazione.
Questa guida spiega perché i loop si verificano su WhatsApp, come progettare la risposta alternativa e come creare passo dopo passo un limite di tentativi.
Perché i loop del chatbot costano più di quanto fanno risparmiare
I bot fanno risparmiare su ogni conversazione che portano a termine. Fanno perdere su quelle in cui intrappolano il cliente. In un articolo dell’aprile 2026 sulla California Management Review, Yuqing Ren e Rongjin Zhang riuniscono i dati della ricerca:
- più sondaggi rilevano che il 53–77% degli intervistati ha avuto un’esperienza negativa o frustrante con un chatbot;
- un sondaggio Gartner su 5.728 clienti ha rilevato che il 64% preferirebbe che le aziende non usassero l’IA per l’assistenza clienti e che il 53% valuterebbe di passare a un concorrente per questo motivo;
- lo stesso sondaggio Gartner ha rilevato che solo il 14% dei problemi di assistenza clienti viene risolto completamente in self-service;
- il 70–80% dei clienti preferisce parlare con un operatore umano.
Gli autori indicano il “loop del chatbot” come una delle principali fonti di questa frustrazione: invece di passare la mano, il bot continua a fare domande, a ripetere informazioni o a scusarsi. Segnalano inoltre che “nessun percorso semplice verso una persona” è ciò che trasforma un piccolo fastidio in una perdita di fiducia.
Niente di tutto questo è un argomento contro i bot. È un argomento a favore di bot che sanno quando fermarsi.
Perché i bot WhatsApp si bloccano
La maggior parte dei bot WhatsApp è fatta di menu: una domanda con pulsanti di risposta o un elenco. I limiti di Meta li plasmano. Un messaggio con pulsanti di risposta ha al massimo 3 pulsanti di 20 caratteri ciascuno; un messaggio a elenco ha al massimo 10 righe in tutte le sezioni, con il titolo di ogni riga di al massimo 24 caratteri. Anche entro questi limiti, i clienti fanno comunque quattro cose che il menu non aveva previsto:
- Scrivono invece di toccare. “la seconda”, “consegna”, “2”.
- Rispondono a un’altra domanda. Il bot chiede il numero d’ordine; il cliente manda la foto del pacco.
- Scrivono qualcosa che il menu non copre. “Mi è arrivato rotto” davanti a un menu Traccia / Reso / Parla con noi.
- Tornano più tardi su una domanda che il bot aveva posto il giorno prima.
Un bot che tratta ognuno di questi casi come “non valido, scelga di nuovo” va in loop. Un bot che ha un piano per ciascuno no.
Le regole di WhatsApp vanno nella stessa direzione. La sua Business Messaging Policy consente l’automazione durante la finestra di 24 ore, ma dice che le aziende “must also have available prompt, clear, and direct escalation paths”: un trasferimento in chat a un operatore, un numero di telefono, un’email, un’assistenza web, una visita in negozio o un modulo di assistenza.
Come MonoChat legge una risposta
Prima di creare il limite, conviene sapere cosa fa il nodo Domanda e risposta con una risposta:
- Un pulsante o una riga dell’elenco toccati vanno all’uscita di quell’opzione.
- Una risposta scritta viene confrontata con i titoli delle opzioni. Se è abbastanza vicina a uno di essi, conta come quell’opzione: “Traccia il mio ordine” corrisponde a un pulsante “Traccia ordine”.
- Un numero sceglie l’opzione in quella posizione, quindi “2” significa il secondo pulsante o la seconda riga.
- Tutto il resto (testo che non corrisponde a nulla, una foto, un messaggio vocale) va all’uscita Su altro del nodo.
Il loop quindi non nasce dall’abbinamento, ma da ciò che si collega a Su altro. Se la lasci puntare di nuovo alla stessa domanda senza alcun limite, il bot chiederà all’infinito.
Creare un limite di tentativi, passo dopo passo
L’esempio è un menu per le domande sulle consegne di un negozio online. I clienti scelgono Traccia ordine, Reso o Altro.
1. Porre la domanda
- Vada in Impostazioni › Automazione › Flussi e apra il flusso del Suo bot, oppure ne crei uno.
- Aggiunga un nodo Domanda e risposta con la Sua domanda e tre pulsanti. Mantenga i titoli dei pulsanti brevi e distinti: titoli simili rendono più difficile abbinare le risposte scritte.
- Colleghi l’uscita di ogni pulsante al ramo di quell’argomento.
2. Contare i tentativi
- Aggiunga un nodo Imposta variabile di flusso e vi colleghi l’uscita Su altro della domanda.
- Aggiunga una riga: nome
attempts, operazione Aumenta di, valore1. Anche un valore vuoto conta come 1, e una variabile non ancora esistente parte da 0, quindi la prima risposta sbagliata la porta a 1. - Le righe vengono eseguite in ordine. Se vuole conservare ciò che il cliente ha scritto, aggiunga una seconda riga che Imposta
last_answercome testo da{{message.text}}.
3. Decidere: chiedere di nuovo o passare la conversazione
- Dopo Imposta variabile di flusso, aggiunga un nodo If.
- Nella condizione, apra il gruppo Flusso e scelga Valore della variabile di flusso:
attempts, Maggiore o uguale a,2. - Colleghi Falso a un nodo Invia messaggio che chiede di nuovo, in modo più chiaro, e poi torni al nodo Domanda e risposta.
- Colleghi Vero al passaggio a un operatore del punto 4.
Il secondo tentativo non deve ripetere il primo parola per parola. Dica cosa può fare il bot e mostri di nuovo le opzioni:
Mi dispiace, qui posso aiutarLa con queste tre cose. Tocchi un pulsante oppure scriva il numero: 1 Traccia ordine · 2 Reso · 3 Altro
4. Passare la conversazione come si deve
- Aggiunga un nodo Assegna conversazione sul ramo Vero e scelga il team o l’agente che si occupa delle domande sulle consegne.
- Prima di esso, aggiunga un Invia messaggio che dice al cliente cosa succede ora: “La passo a un collega. Può vedere questa chat, quindi non dovrà ripetere nulla.”
- Se ha degli orari di lavoro, aggiunga prima un If con Entro l’orario di lavoro. Fuori orario, dica quando una persona risponderà, invece di promettere una risposta immediata.
L’operatore vede l’intera conversazione nell’inbox del team, comprese le risposte che il bot non ha saputo abbinare.
5. Dare a “Altro” una vera uscita
“Altro” è il pulsante che più spesso porta a un loop, perché apre una domanda a testo libero a cui il menu non sa rispondere. Lo colleghi direttamente ad Assegna conversazione, oppure a un passaggio IA in grado di leggere il testo libero, e non a un altro menu.
Come appare la conversazione
Cliente: buongiorno il pacco mi è arrivato danneggiato
Bot: Buongiorno Giulia! Qui posso aiutarLa con gli ordini. Di cosa ha bisogno? [Traccia ordine] [Reso] [Altro]
Cliente: è rotto
Bot: Mi dispiace, qui posso aiutarLa con queste tre cose. Tocchi un pulsante oppure scriva il numero: 1 Traccia ordine · 2 Reso · 3 Altro
Cliente: (invia la foto della scatola)
Bot: La passo a un collega. Può vedere questa chat, quindi non dovrà ripetere nulla.
Operatore: Buongiorno Giulia, sono Marco. Mi dispiace che il pacco sia arrivato danneggiato, vedo la Sua foto. Organizzo subito la sostituzione.
Due tentativi, un solo passaggio chiaro, e la foto è già davanti all’operatore.
Quando il bot è un agente IA
Gli agenti IA leggono il testo libero, quindi vanno in loop meno spesso sui pulsanti, ma possono comunque girare in tondo: chiedere dettagli che il cliente ha già dato o ripetere una risposta che non è servita. Due regole valgono anche qui:
- Limiti l’esecuzione. Il nodo Agente AI di MonoChat lavora entro un budget di esecuzione e prosegue su Completato, Budget superato, Tempo scaduto o In caso di errore. Colleghi a una persona ogni uscita tranne Completato.
- Conti i turni. Lo stesso contatore con Imposta variabile di flusso funziona attorno a un passaggio IA: aumenti
ai_turnsa ogni risposta del cliente e passi la conversazione dopo un numero a Sua scelta. La nostra guida al passaggio dall’IA a una persona approfondisce il messaggio di passaggio e l’instradamento, mentre testare un agente IA prima del lancio mostra come scoprire le domande a cui non sa rispondere prima dei Suoi clienti.
Checklist
- Ogni nodo Domanda e risposta ha l’uscita Su altro collegata.
- Un nodo Imposta variabile di flusso aumenta un contatore
attemptssu quel ramo. - Un nodo If con Valore della variabile di flusso decide se chiedere di nuovo o passare la conversazione (2 o 3 tentativi).
- Il secondo tentativo è formulato in modo diverso e mostra le opzioni con i numeri.
- “Altro” va direttamente a una persona o a un passaggio IA, mai a un altro menu.
- Assegna conversazione manda la chat al team giusto, con un messaggio che dice cosa succede dopo.
- Fuori orario di lavoro, il bot dice quando risponderà una persona.
- I passaggi IA mandano Budget superato, Tempo scaduto e In caso di errore a una persona.
Per iniziare
I limiti di tentativi si creano nel builder no-code di automazione dei flussi di lavoro. Inizi con il piano Basic gratuito su app.monochat.ai, oppure legga la nostra guida per creare un chatbot WhatsApp e le opzioni dei messaggi interattivi di WhatsApp.
Fonti
- Yuqing Ren e Rongjin Zhang, “Chatbot Frustration is Real: Hidden Costs and Best Practices”, California Management Review Insights, 28 aprile 2026 (consultato il 3 novembre 2026)
- WhatsApp Business Messaging Policy (consultata il 3 novembre 2026)
- Messaggi interattivi con pulsanti di risposta (Meta for Developers) (consultato il 3 novembre 2026)
- Messaggi interattivi a elenco (Meta for Developers) (consultato il 3 novembre 2026)
- Centro assistenza MonoChat: Flows, Set Flow Variable e Flow Variables (consultato il 3 novembre 2026)
Metta in pratica con MonoChat