Skip to content

Every 10 minutes

Fill a category column for new rows

New rows get a category filled in from the text in another column.

Runs
Every 10 minutes
Apps
Google Sheets
AI
Yes, uses the built-in AI allowance
Access
read+write

Send this to your assistant

Create a ClickRuntime automation: every 10 minutes, for rows in my Feedback sheet with an empty Category, read the Comment, pick a category (bug, pricing, feature request, praise) and write it back.

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 marketing coordinator pastes product descriptions, support messages or survey answers into a Google Sheet, and each needs a category or a short summary in the next column. For two hundred rows that is a day of reading and typing. The labels drift as the week goes on, so the same type of message gets Billing from one person and Payments from another, and any filter or pivot table built on that column gives unreliable counts.

Every 10 minutes, ClickRuntime reads the range, finds rows where the target cell is still empty and sends each row's text to ClickRuntime's built-in AI with your instructions, such as choose one of these five categories. The results are written back in one batch update, so the column fills itself as rows arrive.

It works for categories, summaries, tags, translations or any column that can be derived from another one.

What you get out of it

  • Labels follow one set of rules

    The same instructions apply to every row, so similar items get the same category. Filters, pivot tables and charts built on the column can be trusted, which they cannot when labels were typed by different people.

  • Rows are done as they arrive

    Because new rows are picked up every 10 minutes, the column is rarely empty for long. Reports built on it are up to date, without waiting for someone to batch through a backlog.

  • Hours of typing disappear

    Reading and labeling two hundred rows is a day of repetitive work. Having the column filled in the background frees that time for reviewing exceptions and acting on what the data says.

  • Existing data is left alone

    Only rows with an empty target cell are processed. Anything a person has already filled in or corrected stays as it is, so manual fixes are never overwritten by a later run.

  • Easy to adapt to new tasks

    Changing the instruction turns the same setup from categorizing into summarizing or tagging. The same sheet can serve several different needs with only a new description of the output. Nothing needs to be rebuilt when your needs change.

How it works

What happens, step by step

  1. Every 10 minutes ClickRuntime reads your Google Sheet for rows where the category column is still empty.

  2. AI reads each row's text and picks one of your categories, such as bug, pricing, feature request or praise.

  3. The categories are filled into the empty cells all at once.

Before it runs live

  • Connect your Google Sheets account and pick the spreadsheets it may use

What you get

RunsEvery 10 minutes
Fill a category column for new rowstoday, 9:00Succeeded
Google Sheets · Feedback"Export to CSV keeps timing out" → bug "Would love a Slack integration" → feature request

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 Google Sheets 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_fill_a_column_for_new_rows.pyexample
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, report_fetched, credentials, ai

SHEET_ID = "your-spreadsheet-id"
CATEGORIES = ["bug", "pricing", "feature request", "praise"]

@on_trigger
def run(event):
    sheets = build("sheets", "v4", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False).spreadsheets()
    rows = sheets.values().get(spreadsheetId=SHEET_ID, range="Feedback!A2:C").execute().get("values", [])
    todo = [(i, r[1]) for i, r in enumerate(rows, start=2) if len(r) > 1 and (len(r) < 3 or not r[2])]
    report_fetched(len(todo))
    if not todo:
        return {"summary": "Nothing new"}
    data = []
    for i, comment in todo[:50]:
        label = ai.generate(f"Pick one of {CATEGORIES} for this comment. Reply with the category only.\n{comment[:1000]}",
                            max_output_tokens=10).text.strip().lower()
        data.append({"range": f"Feedback!C{i}", "values": [[label if label in CATEGORIES else "feature request"]]})
    sheets.values().batchUpdate(spreadsheetId=SHEET_ID, body={"valueInputOption": "RAW", "data": data}).execute()
    return {"filled": len(data)}

FAQ

Common questions

How do I make sure categories are consistent?
List the allowed values in the instructions, such as Billing, Bug, Question, Praise, Other, and tell the AI to choose only from them. A list of examples for tricky cases improves accuracy further, as does keeping the list short.
What if a label is wrong?
Correct it in the sheet. Since only empty cells are filled, your correction stays. If you see a pattern of mistakes, refine the instruction with an example of the case, and later rows will follow it.
Is there a limit on how many rows it handles at once?
Rows are processed in batches, so a large backlog is worked through over several runs instead of one. For a first pass over thousands of rows, expect it to take a number of runs before the column is complete.
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 “Fill a category column for new rows” from your assistant

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