Quale soluzione fa per te?
Casistica A – semplice per tutti: un unico grafico delle risposte che si aggiorna automaticamente a ogni nuova risposta.
Casistica B – per i team che devono confrontare gruppi: una Tabella pivot, filtrabile per canale, lingua, o qualsiasi altra colonna.
Ogni risposta raccolta dal Sondaggio diventa subito una nuova riga su Google Sheet non appena viene inviata. Crea un Grafico o una Tabella pivot sopra e il Report sarà sempre aggiornato da solo: senza esportazione, senza copia e incolla, senza aspettare che qualcuno prepari i dati.
Ecco il Report che ottieni nel caso A, un Grafico che si aggiorna da solo per ogni Risposta:
E questa invece è la Tabella pivot del caso B, filtrata per canale tramite uno slicer:
Come funziona. Survio manda ogni Risposta completata a un URL Webhook. Uno strumento di automazione (in questa guida usiamo n8n) la riceve e scrive la riga sul tuo foglio. Survio spedisce, n8n scrive e il foglio aggiorna il Report automaticamente.
Nuovo/a sui Webhook di Survio? Inizia da Webhooks: invia risposte ai tuoi altri strumenti in tempo reale e poi torna qui.
Cosa farai
Entrambi i Report funzionano nello stesso modo: ogni Risposta diventa una nuova riga in una scheda chiamata responses.
Panoramica | Casistica A: un Grafico | Casistica B: Report per segmento |
Risultato | Un Grafico aggiornato in tempo reale che mostra come sono distribuite le Risposte | Una Tabella pivot filtrabile per canale, lingua o qualsiasi altra colonna |
Strumenti | Survio, n8n, Google Sheets | Survio, n8n, Google Sheets (Tabella pivot e slicer) |
Ideale per | Piccole aziende che vogliono un Grafico semplice sempre allineato | Team che confrontano gruppi diversi, come clienti online e in negozio |
Prima di cominciare
Un Sondaggio Survio su un piano a pagamento. I Webhook non sono disponibili sul piano Free e ogni piano stabilisce quanti Webhook puoi avere per Sondaggio (guarda l'articolo sui webhook).
Un account n8n (Cloud o self-hosted).
Un account Google per usare Google Sheets.
In questa guida userai un breve Sondaggio soddisfazione: Valutazione a stelle, una Domanda a scelta singola "Complessivamente, quanto sei soddisfatto?", una Domanda a scelta "Come hai acquistato questa volta?", un campo commento libero e la Domanda e-mail opzionale. Ma puoi usare il Sondaggio che vuoi: abbina le tue Domande al passaggio 5.
Passo 1 — Prepara il foglio
Crea un nuovo Google Sheet e rinomina il primo tab in
responses.Nella riga 1 inserisci le intestazioni delle colonne. Ti consigliamo
Response ID,Submitted,Rating (1-5),Satisfaction,Channel,What could we do better,E-mail,Order ID,LanguageeSource.
Lascia Response ID come prima colonna. È l’identificativo univoco di Survio per ogni Risposta. n8n lo usa per aggiornare la riga giusta ed evitare duplicati se la consegna viene ritentata.
Passo 2 — Crea il Webhook in n8n
In n8n, avvia un nuovo flusso di lavoro e aggiungi un nodo Webhook come trigger.
Imposta HTTP Method su POST.
Vai sul tab Production URL e copia l’indirizzo.
Clicca Publish. L’indirizzo Production accetta richieste solo dopo la pubblicazione del flusso.
Usa sempre il Production URL, non il Test URL. Il Test URL funziona solo finché l’editor di n8n è in ascolto; appena chiudi la finestra, Survio non riesce più a inviare. Survio ritenta l’invio delle consegne fallite per circa un giorno, dopo 5 giorni di errori consecutivi il Webhook viene disattivato.
Passo 3 — Collega il Sondaggio in Survio
Apri il tuo Sondaggio e vai su Raccogli risposte.
Nella barra laterale, sotto Automazioni & integrazioni, scegli Webhooks e clicca su + Aggiungi un webhook.
Incolla il Production URL di n8n in Webhook URL e clicca su Salva webhook. L’attivazione è immediata.
Passo 4 — Manda una Risposta test e trova gli id delle tue Domande
Apri il Sondaggio dal link normale e compila una Risposta fino in fondo. Solo le Risposte completate vengono inviate da Survio, quindi assicurati di arrivare alla fine.
Vai in n8n e apri il tab Executions. La Risposta arriva in pochi secondi.
Apri il dettaglio dell’esecuzione, clicca sul nodo Webhook, poi espandi
body, quindidatae infineanswers. Ogni Risposta mostra il suoquestion.id, l’etichetta (label) della Domanda e laanswer.Segna l’id di ogni Domanda che vuoi esportare come colonna. Puoi anche cliccare su Pin per continuare a lavorare su questa Risposta senza dover ripetere il Sondaggio.
Scegli sempre le Risposte in base a question id. Le Risposte arrivano come elenco. Se poi aggiungi una Domanda, gli indici possono cambiare e le colonne rischiano di assegnarsi Risposte sbagliate. Gli id delle Domande invece non cambiano mai.
Cerchi l’e-mail del Rispondente? Non usare data.email, resta vuoto se la mail arriva da una Domanda o parametro URL. Leggi il valore dalla Risposta alla Domanda e-mail o da data.parameters.
Passo 5 — Trasforma ogni Risposta in una riga
Servono due nodi: Prepara riga estrae le Risposte, Salva Risposta su foglio scrive tutto su Google Sheets.
Prepara riga
Aggiungi un nodo Edit Fields (Set) dopo il nodo Webhook e chiamalo
Prepare row.Nel campo Fields to Set aggiungi un campo per ogni colonna, lasciando il tipo String. Il nome campo deve essere identico all’intestazione della colonna, il valore è quello dell’espressione sotto.
Metti gli id delle tue Domande (90403153 ecc.) annotati al Passo 4 e personalizza il fuso orario (Europe/Prague, se serve).
Nome campo | Valore |
Response ID |
|
Submitted |
|
Rating (1-5) |
|
Satisfaction |
|
Channel |
|
What could we do better |
|
| |
Order ID |
|
Language |
|
Source |
|
Salva Risposta su foglio
Aggiungi un nodo Google Sheets dopo Prepara riga, chiamalo
Save response to sheete scegli l’operazione Append or Update Row.Collega l’account Google, poi seleziona il file in Document (sceglilo dalla lista o incolla l’ID in By ID) e la scheda
responsesin Sheet.Imposta Mapping Column Mode su Map Automatically e Column to match on su Response ID.
Perché un nodo separato per Prepara riga? Se cambi foglio o tab lato Google Sheets, n8n cancella i collegamenti interni. Con le espressioni in Prepara riga non perdi nulla: il nodo Google Sheets accoppia solo nomi tra campi e intestazioni.
Clicca su Publish di nuovo. Le modifiche sono attive solo dopo la pubblicazione.
Qualche nota sulle espressioni:
Le Domande a scelta singola arrivano come
{ ids, labels, value }.labels[0]è il testo della Risposta scelta. Se la Domanda è a Risposta multipla, usalabels.join(', ')per mettere tutte le scelte insieme.valuecontiene il testo libero inserito se scegli "Altro".Gli orari sono in UTC. L’espressione Submitted li converte nel fuso tuo, Google Sheets poi li tratta come date/ore normali.
I parametri nell’URL con il trattino, come
order-id, scrivili comeparameters['order-id']. Survio non accetta underscore nei parametri.Il titolo del Sondaggio non è incluso nei dati mandati da Survio. Se hai più Sondaggi che scrivono sullo stesso foglio, aggiungi una colonna Sondaggio con il nome del Sondaggio nel nodo Prepara riga.
Invia un’altra Risposta: in pochi secondi, spunterà una riga nuova sul foglio.
Casistica A — Grafica le Risposte
Aggiungi una nuova scheda e chiamala
report.Scrivi
Satisfactionin A1 eResponsesin B1. Da A2 ad A6 elenca le Risposte come sono nel Sondaggio.In B2 inserisci
=COUNTIF(responses!D:D,A2)e trascinalo fino a B6.Seleziona A1:B6 e vai su Inserisci → Grafico. Google Sheets suggerisce un Grafico a colonne. Per cambiare titolo, vai in Personalizza → Titoli grafico e assi.
Ogni Risposta nuova va a riempire responses, così i conteggi e il Grafico si aggiornano da soli – proprio come nell’esempio in alto.
Casistica B — Confronta gruppi con Tabella pivot
Nella scheda
responses, seleziona i dati e scegli Inserisci → Tabella pivot, quindi Nuovo foglio.In Righe aggiungi Satisfaction. In Valori aggiungi Response ID, poi cambia Sommario da SOMMA a CONTA.VALORI.
Vai su Dati → Aggiungi slicer e scegli la colonna Channel. Seleziona i valori che ti interessano e salva con OK. Il risultato sarà simile alla Tabella pivot mostrata in alto.
Puoi filtrare per qualsiasi colonna: Channel (domanda), Language (lingua compilata dell’utente), Source (come è arrivata la Risposta – ad es. link diretto o Invito email) o Order ID.
Le selezioni fatte con lo slicer non restano al prossimo accesso. Riaprendo il file, lo slicer torna a mostrare tutti i valori. Se vuoi fissare il filtro, salvalo come predefinito dal menu dello slicer.
Scarica il flusso di lavoro già pronto
Non vuoi fare i Passi 2 e 5 a mano? Scarica direttamente il nostro flusso: cerca il file survio-responses-to-google-sheets.json tra gli allegati a fine articolo, poi:
In n8n crea un flusso nuovo vuoto. Dal menu (i 3 puntini accanto al nome) scegli Importa e poi Da file. Carica il file scaricato.
Apri Prepare row e aggiorna gli id delle Domande e il fuso orario Europe/Prague con quelli tuoi.
Apri Save response to sheet. Finché manca la configurazione, vedrai un avviso rosso: collega l’account Google, scegli foglio e tab
responses. n8n mette Mapping Column Mode su Map Each Column Manually: riportalo su Map Automatically e metti Column to match on come Response ID.Apri Survio Webhook, copia il Production URL in Survio (passo 3) e poi clicca Publish.
Prova tutto da cima a fondo
Manda una Risposta attraverso il link al Sondaggio. In pochi secondi dovresti vedere una nuova riga sulla scheda
responses.Controlla che Response ID sia compilato: è la chiave per evitare duplicati.
Su n8n guarda la tab Executions. Ogni invio e i suoi dati sono riportati lì.
Risolvi i problemi più comuni
Problema | Causa | Soluzione |
Non arriva nulla in n8n | Hai inserito il Test URL in Survio o non hai pubblicato il flusso | Inserisci il Production URL in Survio e premi Publish |
Survio non accetta il Webhook URL da n8n self-hosted | n8n mostra un indirizzo interno invece di quello pubblico | Imposta |
"Listen for test event" non mostra nulla anche dopo aver inviato il Sondaggio | Survio invia verso il Production URL; la modalità ascolto guarda il Test URL | Guarda la tab Executions |
Una modifica non ha effetto | Il flusso è pubblicato, ma la modifica no (il pulsante Publish è con pallino) | Clicca di nuovo Publish |
La stessa Risposta appare due volte | Hai impostato su Append Row, o non hai indicato la colonna di confronto | Usa Append or Update Row e scegli Response ID per il confronto |
Una colonna resta vuota e ne compare una nuova in fondo | Il nome campo in Prepara riga non è perfettamente uguale all’intestazione | Rinomina il campo su Prepara riga esattamente come l’intestazione e cancella la colonna extra |
Vedi [object Object] in una cella | Hai mappato una Risposta a scelta senza usare | Usa |
Colonne riempite con Risposte sbagliate dopo una modifica al Sondaggio | Risposte prese per posizione nella lista | Mappa usando |
La colonna E-mail resta vuota | Hai mappato da | Leggi l’e-mail dalla Risposta alla Domanda specifica o da un parametro URL |
Mancano le Risposte precedenti alla configurazione | I Webhook inviano solo Risposte raccolte dopo essere stati creati | Esporta manualmente le vecchie Risposte da Survio e incollale sul foglio |
Survio ha disattivato il Webhook | Il Webhook URL ha fallito l’invio per 5 giorni di fila | Risolvi il problema e riattiva il Webhook in Survio |
Altre cose utili da sapere
Survio manda solo Risposte completate, una per volta, in pochi secondi.
Niente invii retroattivi: nessuna Risposta precedente la creazione del Webhook viene spedita, né durante una pausa.
Un invio fallito viene ritentato fino a 8 volte (circa 27 ore) e ogni tentativo attende fino a 30 secondi di risposta. Se abbini su Response ID, i doppi non ti danno problemi.
Dopo 5 giorni di fallimenti consecutivi, Survio disattiva il Webhook. Dovrai riattivarlo tu.
Mettere in pausa il Webhook conserva lo slot; eliminarlo invece è definitivo.
Survio non mostra log delle consegne nell’app. Il tab Executions di n8n è il tuo registro.
Inviare Risposte ai Webhook non consuma Risposte extra dal tuo piano.
Vuoi che lo configuriamo per te? Vai nella pagina Webhooks in Survio, clicca su Ottieni setup da esperto, dicci cosa vuoi automatizzare e il nostro team ti prepara, testa e consegna il tuo Webhook già pronto.
