Build a Customer Testimonial Collection System with n8n
Customer testimonials are one of the highest-converting assets a business can have — yet most companies collect them manually, inconsistently, or not at all. Chasing customers for reviews via email th
Customer testimonials are one of the highest-converting assets a business can have — yet most companies collect them manually, inconsistently, or not at all. Chasing customers for reviews via email threads and copy-pasting responses into spreadsheets is the kind of low-value work that automation was made to eliminate. With n8n, you can build a system that requests, collects, stores, and routes testimonials automatically — without writing a single line of custom backend code.
How the System Works
The core idea is straightforward: trigger a testimonial request after a purchase or project milestone, capture the response through a form, store it in a structured database, and route high-quality responses to your marketing assets automatically. n8n connects all of these steps into a single workflow that runs without human involvement.
- Trigger: A new sale in Stripe, a closed deal in your CRM, or a completed project task fires the workflow.
- Request: n8n sends a personalized email via Gmail or SMTP with a link to a Typeform or Tally form asking for feedback.
- Collection: When the form is submitted, n8n receives the webhook, parses the response, and writes it to a Google Sheet or Airtable database.
- Routing: High-rated responses (4 or 5 stars) trigger a second branch — posting to Slack for review, creating a draft in Notion, or publishing directly to your website via API.
The whole flow runs in under 30 seconds from trigger to storage. You go from zero testimonials to a structured, searchable database that grows on its own.
What You Need Before You Build
This workflow connects several services, so gather your credentials before starting. The setup is lighter than it looks — most of the configuration is one-time work.
- n8n instance: Self-hosted on a VPS or via n8n Cloud. Either works — you just need webhook URLs to be publicly accessible for form submissions to reach your workflow.
- Form tool: Tally is free and has a native n8n integration. Typeform works via webhook. Google Forms can work but requires more manual parsing.
- Storage: Google Sheets is the simplest option — no schema design, easy to share with your team. Airtable adds filtering and views at the cost of a slightly more complex setup.
- Email sender: Gmail with OAuth2 credentials, or any SMTP provider. If you're doing high volume, use SendGrid or Resend to avoid hitting Gmail limits.
- Trigger source: Stripe webhook for e-commerce, HubSpot or Pipedrive for B2B sales, or a simple HTTP request from your own app.
If you'd rather skip the assembly and get a pre-wired workflow that's ready to customize, there are ready-made n8n templates built specifically for this use case — connect your credentials and you're running in under an hour.
Building the Workflow Step by Step
Start with the trigger node. If you're using Stripe, set up a Stripe Trigger node listening for the checkout.session.completed event. Map the customer email and name from the event payload — you'll use these to personalize the request.
Add a Wait node set to 48 hours. Sending a testimonial request immediately after purchase feels aggressive. Two days out, when the customer has had time to use what they bought, the response rate is significantly higher.
Connect a Gmail node to send the request. Use the customer name in the subject line and body — "Hey {{name}}, how was your experience?" outperforms generic blasts. Include the form URL as a plain link, not a button — it renders more reliably across email clients.
Add a Webhook node to receive the form submission. Tally and Typeform both send structured JSON — map the fields (rating, text, customer name) to variables. Add an IF node that checks whether the rating is 4 or 5. If yes, route to your marketing pipeline. If no, route to a separate Slack channel so your team can follow up on negative feedback.
For the storage step, use a Google Sheets node in Append mode. Write every submission — good and bad — to a master sheet. This gives you a clean record and lets you run reports on average rating over time without touching the workflow.
Extending the System
Once the base workflow is running, there are several high-value extensions worth adding:
- Duplicate detection: Add a Google Sheets Lookup before writing to check whether this email has already submitted. Prevents the same customer from appearing multiple times if they fill out the form twice.
- Automated publishing: For Webflow or WordPress sites, connect a CMS API node to publish approved testimonials directly to your site without manual copy-paste.
- Slack approval queue: Instead of auto-publishing, send high-rated testimonials to a Slack channel with Approve/Reject buttons using n8n's Slack interactive message support.
- Social proof widget: Write approved testimonials to a public API endpoint and pull them dynamically into your landing page — your testimonials section updates itself as new submissions come in.
- Follow-up sequence: If the customer opened the email but didn't submit the form (trackable via email open pixels or UTM parameters), send one follow-up 5 days later. Two touches is usually enough without becoming annoying.
A customer testimonial system built on n8n pays for itself quickly. The manual time savings are obvious, but the real value is consistency — every customer gets asked, every response is captured, and your marketing team always has fresh social proof to work with. Once it's running, you don't think about it again.

Ja construimos isso pra voce
Nao comece do zero. O Website Form to Pipedrive + Task e um workflow n8n pronto para instalar que faz exatamente isso — em minutos, nao horas.
Instalar por $29 →