Skip to content

Every 15 minutes

Summarise and tag new feedback in Notion

Each new feedback row gets a summary, a sentiment and tags, so you can sort and filter it without reading every entry.

Runs
Every 15 minutes
Apps
Notion
AI
Yes, uses the built-in AI allowance
Access
read+write

Send this to your assistant

Create a ClickRuntime automation: every 15 minutes, for new rows in my Notion Feedback database with an empty Summary, add a one-line summary, a sentiment (positive, neutral or negative) and up to 3 tags.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A Notion database of customer feedback, interview notes or support comments fills up faster than anyone can read it. Each row contains a paragraph or a page of text, and the Summary, Sentiment and Tags columns that were meant to make it useful are empty because filling them in by hand takes two minutes per row. A product manager facing 300 untagged rows cannot filter for complaints about pricing, so the data goes unused.

Every 15 minutes ClickRuntime finds rows whose Summary property is empty, reads the page content, asks its built-in AI to write a one-sentence summary, classify sentiment and suggest tags, and writes them back into the same row's properties. Rows that already have a summary are never touched, so your manual edits are safe.

Teams with user research, feedback boards or note-taking databases use it to make their entries sortable.

What you get out of it

  • Filtering finally works on feedback

    With tags and sentiment filled in, you can show only negative comments about onboarding. A question that needed an afternoon of reading is answered with a view in two clicks.

  • Rows are triaged within minutes of being added

    A new note is summarised on the next run, so reviewers see its gist in the table. They decide which to open without reading each one in full. Reviewers decide which rows to open without reading every one, so a morning of triage becomes a short scan.

  • Backlogs get cleared once

    Rows created before the automation, if their Summary is empty, are processed as well. A year of untouched notes is catalogued without a manual afternoon of effort. Notes that were already in the database before setup are catalogued without a dedicated afternoon.

  • Manual work is respected

    Because only empty Summary cells are filled, anything a person wrote stays as written. The AI adds structure where there is none, and never overwrites a considered note. The AI adds structure where there is none and never overwrites a considered note.

  • Consistent labels support reporting

    One system applies the same sentiment scale to every row, so counts by sentiment are comparable week to week. Charts built on the properties mean something. Charts and rollups built on the properties mean something, because the same scale is used everywhere.

How it works

What happens, step by step

  1. Every 15 minutes ClickRuntime finds pages in your Notion feedback database that don't have a summary yet.

  2. It reads the content of each one.

  3. AI writes a one-line summary, rates the sentiment and adds a few tags.

  4. The summary, sentiment and tags are filled into the page's fields in Notion.

Before it runs live

  • Connect Notion and share the database you want it to use

What you get

RunsEvery 15 minutes
Summarise and tag new feedback in Notiontoday, 9:00Succeeded
Notion · FeedbackSummary: Wants SSO for the Acme team | negative | Tags: sso, security, enterprise

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • 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

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Slack
  • Combine it with other Notion steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
ai_summary_and_tags_on_new_rows.pyexample
from clickruntime import on_trigger, report_fetched, credentials, http, ai

NOTION = "https://api.notion.com/v1"

def headers():
    return {"Authorization": f"Bearer {credentials.secret('NOTION_TOKEN')}", "Notion-Version": "2022-06-28"}

def query(db, body=None):
    resp = http.post(f"{NOTION}/databases/{db}/query", headers=headers(), json=body or {})
    resp.raise_for_status()
    return resp.json()["results"]

def title(page, prop="Name"):
    return "".join(t["plain_text"] for t in page["properties"][prop]["title"])

FEEDBACK = "feedback-database-id"
SCHEMA = {"type": "object", "properties": {"summary": {"type": "string"},
          "sentiment": {"type": "string", "enum": ["positive", "neutral", "negative"]},
          "tags": {"type": "array", "items": {"type": "string"}, "maxItems": 3}}, "required": ["summary", "sentiment", "tags"]}

@on_trigger
def run(event):
    rows = query(FEEDBACK, {"filter": {"property": "Summary", "rich_text": {"is_empty": True}}})
    report_fetched(len(rows))
    if not rows:
        return {"summary": "Nothing new"}
    for row in rows[:25]:
        text = "".join(t["plain_text"] for t in row["properties"]["Feedback"]["rich_text"])[:2000]
        d = ai.generate("Give a one-line summary, the sentiment and up to 3 short tags:\n" + text,
                        json_schema=SCHEMA, max_output_tokens=120).json
        http.patch(f"{NOTION}/pages/{row['id']}", headers=headers(), json={"properties": {
            "Summary": {"rich_text": [{"text": {"content": d["summary"]}}]},
            "Sentiment": {"select": {"name": d["sentiment"]}},
            "Tags": {"multi_select": [{"name": t} for t in d["tags"][:3]]},
        }}).raise_for_status()
    return {"tagged": min(len(rows), 25)}

FAQ

Common questions

How does it know which rows to process?
It queries for rows where the Summary property is empty. Once a summary is written, the row no longer matches, so each row is handled one time unless you clear the cell to have it redone.
Can I use my own list of tags?
Yes. Give the allowed tags, such as Pricing, Onboarding and Bug, and the AI chooses from them. A fixed list keeps the Tags property clean, which matters when you filter or count by tag later.
Does it read long pages?
It reads the page content up to a generous length, and longer pages are summarised in parts. Empty pages with no text are skipped, so a blank row is not given a made-up summary. Very short pages still get a brief summary.
What permissions does it need?
read+write. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Summarise and tag new feedback in Notion” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.