Daily
Turn event feedback into a report doc and Slack highlights
Feedback responses are analysed into a Google Doc report, and the top three insights are posted to your Slack channel.
- Runs
- Daily
- Apps
- Google Docs, Slack
- AI
- Yes, uses the built-in AI allowance
- Access
- service account; chat:write
Send this to your assistant
Create a ClickRuntime automation: every day after my event, analyse the new feedback responses with AI, write a report Google Doc and post the top 3 insights to #events in Slack.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
An events team runs monthly workshops and collects feedback through a form. The responses sit in a spreadsheet nobody has time to read closely, so the same complaints about room temperature and session length come back event after event.
A written report with themes and quotes, plus three highlights in Slack, puts the feedback in front of the people who plan the next event. Changes get made while the comments are still fresh.
What you get out of it
Feedback that gets read
Three insights in the team channel are hard to ignore. A full report is there for anyone who wants detail.
Themes, not a wall of comments
Responses are grouped into what people liked and what to fix. Planning discussions start from clear points.
A record for every event
Each report is a dated doc. Comparing this month with last shows whether changes worked.
Faster turnaround
The report is ready the day after the event. Speakers and sponsors can get their feedback while they still remember the session.
How it works
What happens, step by step
Every day, ClickRuntime reads the feedback responses added since the last report.
If there are none, it stops without posting anything.
AI groups the comments into themes and writes a short report with suggestions.
The report is saved as a new Google Doc and the top three insights are posted to your Slack channel with a link.
Before it runs live
- Connect Google Docs
- Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Google Sheets
- Combine it with other Google Docs and Slack steps into one automation
Under the hood
The code that runs this automation
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, state, ai, notify
SHEET_ID = "your-responses-sheet-id"
@on_trigger
def run(event):
creds = Credentials(credentials.connection("google", "work"))
rows = build("sheets", "v4", credentials=creds, cache_discovery=False).spreadsheets().values().get(
spreadsheetId=SHEET_ID, range="Form Responses 1!A2:Z").execute().get("values", [])
done = state.get("done") or 0
new = rows[done:]
if not new:
return {"responses": 0}
lines = "\n".join(" | ".join(r[1:])[:400] for r in new[:300])
report = ai.generate(f"Analyse this event feedback. Write a report with themes, what worked, what to fix and quotes without names:\n{lines}", max_output_tokens=1500).text
top = ai.generate(f"Give the 3 most important insights from this report as 3 short bullet lines:\n{report}", max_output_tokens=150).text
docs = build("docs", "v1", credentials=creds, cache_discovery=False).documents()
doc = docs.create(body={"title": "Event feedback report"}).execute()
docs.batchUpdate(documentId=doc["documentId"], body={"requests": [{"insertText": {"location": {"index": 1}, "text": report}}]}).execute()
notify.slack(f"Feedback from {len(new)} responses:\n{top}\nhttps://docs.google.com/document/d/{doc['documentId']}", channel="#events")
state.set("done", len(rows))
return {"responses": len(new)}FAQ
Common questions
Where do the feedback responses come from?
Are individual responses quoted in Slack?
Can I run it only after specific events?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Write a weekly competitor report into Google Docs and share it in Slack
Every Monday a research report on your competitors is written into a Google Doc, with a short summary and link posted in Slack.
See how it worksWrite a weekly report Doc from your numbers and post it to Slack
Every Monday last week's numbers become a written report in Google Docs, and the key points and link are posted to Slack.
See how it worksDraft RFP answers in a Google Doc and share them in Slack
Send an RFP questionnaire to a link and get a Google Doc with a draft answer to every question, based on your company profile, posted to #sales for review.
See how it worksKeep exploring
Set up “Turn event feedback into a report doc and Slack highlights” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.