Skip to content
Automation Squad
TfGSSMade to order

Customer support & tickets

Typeform CSAT response → Google Sheets log + Slack alert on low scores

Low satisfaction scores reach a support lead within a minute, and every score is logged.

CSAT results tend to be read in a monthly report, long after the unhappy customer has gone. This flow logs each Typeform response to a Google Sheet the moment it arrives, with the ticket link and agent name carried in from hidden fields. A score of 1 or 2 also goes straight to a Slack channel with the customer's comment. It works with any helpdesk, because the ticket link travels in the survey URL rather than through an integration.

How it works

  1. Tf

    Trigger

    New response submitted on the CSAT form (Typeform webhook)

    Typeform

  2. if

    Step 1

    Read the score, comment and hidden fields

    From the webhook payload the flow takes the 1-to-5 rating, the comment, and the hidden fields ticket_id, ticket_url and agent carried by the survey link.

  3. GS

    Step 2

    Append the response to the CSAT log

    One row per response: submitted time, ticket ID, ticket link, agent, score, comment and the Typeform response ID so duplicates can be told apart.

  4. if

    Step 3

    Stop unless the score is 1 or 2

    Scores of 3, 4 and 5 stop here; 1 and 2 continue to the alert, and the threshold is one number you can change.

  5. S

    Step 4

    Post the low score to the support lead

    A message in your chosen channel shows the score, the comment word for word, the agent and a link that opens the ticket.

What changes once it runs

  • A 1 or 2 rating is in Slack, with the comment and ticket link, within a minute of the customer pressing submit.
  • Every response sits in one sheet with the ticket and agent attached, ready for a pivot by agent or by week.
  • The alert threshold is one number in the workflow, so widening it to include 3s is a single edit.
  • No helpdesk integration is required; the survey link you already send carries the ticket ID and agent as hidden fields.

What you get

  • The n8n workflow export, plus Make and Zapier versions
  • A Google Sheet template with the seven log columns and a summary tab by agent
  • A setup guide covering the Typeform hidden fields, the survey link format and the Slack app, with placeholder examples for Zendesk and Freshdesk macros
  • The Slack message template with the fields it can show
  • A recorded walkthrough of one response reaching the sheet and the channel
  • 30 days of email support for setup questions

Before you start

  • Typeform Plus or above: hidden fields are gated at Plus, and webhooks need any paid plan
  • A CSAT form with an opinion-scale question and hidden fields named ticket_id, ticket_url and agent
  • A helpdesk macro, closing email or signature that can put the ticket ID, link and agent name into the survey URL
  • A Google account with edit access to the sheet the log lives in
  • A Slack app or bot able to post in the channel where low scores should land
  • An n8n webhook URL Typeform can reach: n8n Cloud, or a self-hosted instance with a public address

Built for

Questions before you buy

My helpdesk already has CSAT built in, so why would I use this?
Built-in CSAT is fine when your plan includes it and its report is all you need. This one is for teams without it, or working from a shared inbox. It puts the score next to the ticket link in a sheet you control, and a low score in Slack the same minute. You can also ask a second question.
How does the response know which ticket it belongs to?
Through Typeform hidden fields. Your helpdesk’s closing email or macro appends ticket_id, ticket_url and agent to the survey URL. Typeform stores them with the response and sends them in the webhook. Placeholder syntax for Zendesk and Freshdesk is in the setup guide.
What if someone submits the survey twice?
Both rows are written. Each carries the Typeform response ID and the ticket ID, so a filter keeps the latest per ticket. A second low score sends a second Slack message. Nothing is silently dropped.
Can it run on Make or Zapier?
Yes, both versions are in the package. On Zapier it is a multi-step Zap with a Filter, so it needs a Professional plan. On Make it is a Router on any plan.

Nearby on the shelf

Whole catalog