Protezione Anti-Spam in Gravity Forms: reCAPTCHA e Honeypot
Lo spam è uno dei problemi più fastidiosi per chi gestisce moduli online. Bot automatizzati scansionano il web alla ricerca di form da compilare con messaggi pubblicitari, link malevoli e tentativi di phishing. Senza una protezione adeguata, la tua casella email si riempirà di submission inutili e le tue entry diventeranno impossibili da gestire. Gravity Forms offre diversi strumenti anti-spam, dal semplice honeypot alla potente protezione reCAPTCHA di Google. In questa guida vedremo come configurare ogni livello di protezione per mantenere i tuoi moduli puliti e funzionali.
Capire lo Spam nei Moduli Web
Prima di addentrarci nelle soluzioni, è importante capire come funziona lo spam nei moduli. I bot spam operano in diversi modi:
Bot semplici: Script automatizzati che cercano tag <form> nelle pagine web e compilano tutti i campi con testo predefinito. Sono i più facili da bloccare.
Bot avanzati: Utilizzano headless browser (come Puppeteer o Selenium) per simulare il comportamento umano. Possono eseguire JavaScript, cliccare pulsanti e persino risolvere CAPTCHA semplici.
Spam manuale: Persone reali (spesso in paesi con basso costo del lavoro) che compilano moduli manualmente. Sono i più difficili da bloccare perché il loro comportamento è indistinguibile da un utente legittimo.
Una strategia anti-spam efficace utilizza più livelli di protezione per bloccare ogni tipo di spam con il minimo impatto sull’esperienza degli utenti legittimi.
Honeypot: La Trappola Invisibile
L’honeypot è il primo livello di protezione anti-spam in Gravity Forms ed è abilitato per impostazione predefinita. Il funzionamento è semplice ma elegante: Gravity Forms aggiunge un campo nascosto al modulo che gli utenti reali non vedono (è nascosto con CSS) ma che i bot compilano automaticamente perché non distinguono i campi visibili da quelli nascosti.
Se il campo honeypot contiene un valore al momento dell’invio, Gravity Forms sa che la submission proviene da un bot e la rifiuta silenziosamente.
Come configurare l’honeypot:
- Apri il modulo nell’editor di Gravity Forms.
- Vai su Settings > Form Settings.
- Nella sezione Form Options, assicurati che l’opzione Anti-spam honeypot sia attivata.
L’honeypot è completamente trasparente per gli utenti: non richiede alcuna interazione e non modifica l’aspetto del modulo. Tuttavia, non è efficace contro i bot più avanzati che sono in grado di identificare e ignorare i campi honeypot. Per questo motivo, è consigliabile abbinarlo ad altri metodi di protezione.

Google reCAPTCHA v2: Checkbox
Google reCAPTCHA v2 con checkbox è la versione più conosciuta del CAPTCHA: mostra la famosa casella “Non sono un robot” che l’utente deve spuntare prima di inviare il modulo. In molti casi, basta il click per superare la verifica. In caso di sospetto, viene mostrata una sfida visuale (seleziona le immagini con semafori, biciclette, ecc.).
Configurazione:
- Vai su Google reCAPTCHA Admin e registra il tuo sito.
- Seleziona “reCAPTCHA v2 – Checkbox”.
- Inserisci il dominio del tuo sito e genera le chiavi (Site Key e Secret Key).
- In WordPress, vai su Forms > Settings > reCAPTCHA.
- Seleziona “reCAPTCHA v2 (Checkbox)” come tipo.
- Incolla la Site Key e la Secret Key.
- Salva le impostazioni.
- Nel modulo, aggiungi il campo CAPTCHA dalla sezione Advanced Fields.
Pro: Molto efficace contro i bot, familiarare per gli utenti, gratuito.
Contro: Richiede un’interazione attiva dall’utente, le sfide visuali possono essere frustranti, impatto negativo sulla UX.
Google reCAPTCHA v2: Invisible
La variante “Invisible” di reCAPTCHA v2 funziona in modo simile alla checkbox ma senza richiedere alcuna interazione nella maggior parte dei casi. Il sistema analizza il comportamento dell’utente (movimenti del mouse, velocità di compilazione, cronologia di navigazione) e, solo se rileva un comportamento sospetto, mostra la sfida visuale.
La configurazione è identica alla versione checkbox, con l’unica differenza che devi selezionare “reCAPTCHA v2 (Invisible)” sia nella console Google che nelle impostazioni di Gravity Forms.
Pro: Nessuna interazione richiesta nella maggior parte dei casi, buona UX.
Contro: Meno efficace della v3 nel rilevare bot avanzati, la sfida visuale appare comunque per utenti con comportamenti atipici.
Google reCAPTCHA v3: Protezione Basata sul Punteggio
reCAPTCHA v3 è la versione più avanzata e rappresenta la scelta migliore per la maggior parte dei siti. Funziona completamente in background, senza alcuna interazione da parte dell’utente. Il sistema monitora il comportamento del visitatore durante tutta la sessione di navigazione e assegna un punteggio da 0.0 (sicuramente bot) a 1.0 (sicuramente umano).
Configurazione:
- Registra il sito nella console reCAPTCHA selezionando “reCAPTCHA v3”.
- In Gravity Forms, seleziona “reCAPTCHA v3” come tipo e inserisci le chiavi.
- Imposta la soglia di punteggio (score threshold). Il valore predefinito è 0.5: le submission con punteggio inferiore vengono bloccate.
Regolazione della soglia: La soglia determina quanto è restrittivo il filtro. Un valore di 0.7 è più restrittivo (blocca più submission ma rischia di bloccare anche utenti legittimi). Un valore di 0.3 è più permissivo (lascia passare più spam ma non blocca quasi mai utenti legittimi). Inizia con 0.5 e regola in base ai risultati.
Con reCAPTCHA v3 non è necessario aggiungere un campo CAPTCHA nel modulo: la protezione è automatica per tutti i moduli.

Akismet: Filtro Anti-Spam Intelligente
Akismet è il filtro anti-spam più utilizzato su WordPress (lo stesso che protegge i commenti dei blog) e si integra nativamente con Gravity Forms. Invece di richiedere un’interazione dall’utente, Akismet analizza il contenuto della submission e lo confronta con un database globale di spam conosciuto.
Configurazione:
- Assicurati che il plugin Akismet sia installato e attivato su WordPress con una chiave API valida.
- Nell’editor del modulo, vai nelle impostazioni dei campi che vuoi proteggere (tipicamente nome, email e messaggio).
- Nella sezione Advanced di ogni campo, imposta il campo Akismet appropriato: “Author” per il nome, “Author Email” per l’email, “Author URL” per il sito web.
Quando Akismet identifica una submission come spam, Gravity Forms la contrassegna come spam invece di eliminarla. Puoi rivedere le entry marcate come spam e, se necessario, ripristinare eventuali falsi positivi.
Tecniche Anti-Spam Personalizzate
Oltre agli strumenti integrati, puoi implementare tecniche anti-spam aggiuntive:
Validazione temporale: I bot compilano i moduli in pochi millisecondi, molto più velocemente di un umano. Puoi aggiungere una validazione che rifiuta le submission inviate entro pochi secondi dall’apertura del modulo. Gravity Forms non include questa funzionalità nativamente, ma può essere implementata con un hook PHP personalizzato.
Domanda di sicurezza: Aggiungi un campo con una domanda semplice che solo un umano può rispondere, come “Quanto fa 3 + 5?” o “Di che colore è il cielo?”. Usa un campo di testo con la validazione condizionale per verificare la risposta.
Blocco IP: Se ricevi spam ripetuto dallo stesso indirizzo IP, puoi bloccare quell’IP a livello di server (tramite .htaccess o firewall) per impedire l’accesso al modulo.
Rate limiting: Limita il numero di submission che un singolo IP può inviare in un determinato periodo. Questo previene i bombardamenti di spam da una singola sorgente.
Confronto tra i Metodi Anti-Spam
Ogni metodo anti-spam ha punti di forza e debolezze. Ecco un confronto per aiutarti a scegliere:
- Honeypot: Efficacia bassa-media, impatto UX nullo, costo zero. Ideale come primo livello di difesa.
- reCAPTCHA v2 Checkbox: Efficacia alta, impatto UX medio, costo zero. Ideale per moduli critici dove la sicurezza è prioritaria.
- reCAPTCHA v2 Invisible: Efficacia alta, impatto UX basso, costo zero. Buon compromesso tra sicurezza e UX.
- reCAPTCHA v3: Efficacia molto alta, impatto UX nullo, costo zero. La scelta migliore per la maggior parte dei siti.
- Akismet: Efficacia alta, impatto UX nullo, costo variabile (gratuito per siti personali). Ottimo in combinazione con altri metodi.

Strategia Anti-Spam Raccomandata
Per una protezione ottimale, consigliamo una strategia multi-livello:
- Honeypot: Sempre attivo come primo filtro (blocca i bot più semplici).
- reCAPTCHA v3: Come protezione principale, con soglia a 0.5.
- Akismet: Come filtro aggiuntivo sul contenuto (individua spam che supera reCAPTCHA).
- Monitoraggio: Controlla regolarmente le entry spam per identificare pattern e regolare le impostazioni.
Questa combinazione blocca la stragrande maggioranza dello spam senza alcun impatto sull’esperienza degli utenti legittimi. Se nonostante tutto continui a ricevere spam, valuta l’aggiunta di validazione temporale o domande di sicurezza.
Gestire le Entry Spam
Le entry marcate come spam non vengono eliminate immediatamente: rimangono nella sezione Spam delle entry dove puoi rivederle. È importante controllare periodicamente questa sezione per verificare l’assenza di falsi positivi (submission legittime erroneamente marcate come spam).
Se trovi un falso positivo, puoi ripristinare la entry cliccando su “Not Spam”. Questo non solo ripristina la entry ma aiuta anche a migliorare il filtro (nel caso di Akismet, la segnalazione viene inviata al database globale per affinare il riconoscimento).
Per una protezione anti-spam professionale dei tuoi moduli WordPress, contatta il team di G Tech Group.
Continua a Leggere: Guide WordPress Essenziali
Migliora il Tuo Sito WordPress
Scopri le nostre guide complete sugli altri plugin essenziali per WordPress: