Skip to content

Every 15 minutes

Write social captions for images you drop in Drive

Each image you add to your Drive Posts folder gets a caption and hashtags in your Content sheet, ready to post.

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

Send this to your assistant

Create a ClickRuntime automation: when a new image lands in my Drive 'Posts' folder, write an Instagram caption and hashtags and add a row with the image link to my Content sheet.

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 bakery owner photographs her bakes every morning and saves the best ones to a Drive folder. Writing a caption for each post is the part she puts off, so good photos sit unused and the account goes quiet for a week at a time.

Having a caption and hashtags ready next to each image in a planning sheet turns posting into a quick copy and paste, so the photos you take actually get published.

What you get out of it

  • Photos do not go to waste

    Every image you save gets a ready caption, so posting no longer depends on finding time to write.

  • One planning sheet

    Images, captions, hashtags and status sit side by side, so you or a colleague can schedule posts from one place.

  • A consistent voice

    Captions follow the tone you describe, so the account sounds the same whoever posts.

  • Easy to edit before posting

    Captions are suggestions in a sheet. Change a word, then mark the row as posted.

How it works

What happens, step by step

  1. Every 15 minutes ClickRuntime checks your Posts folder in Google Drive for new images.

  2. It skips images it has already captioned.

  3. AI writes a caption and a set of hashtags from the image's name and description, in the tone you chose.

  4. A row with the image link, caption, hashtags and status Ready is added to your Content sheet.

Before it runs live

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

What you get

RunsEvery 15 minutes
Write social captions for images you drop in Drivetoday, 9:00Succeeded
Google Sheets · ContentFresh out of the oven: our rye sourdough, crackly crust and all 🍞 #northwindbakery #sourdough #realbread #bakery #breadlover | Ready

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 Drive and 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_captions_for_images_dropped_in_drive.pyexample
from clickruntime import on_trigger, credentials, http, state, ai, report_fetched

FOLDER, SHEET = "your-posts-folder-id", "your-spreadsheet-id"
VOICE = "Warm, short, one emoji at most, for a neighbourhood bakery. End with 5 hashtags including #northwindbakery."

@on_trigger
def run(event):
    h = {"Authorization": f"Bearer {credentials.connection('google', 'work')}"}
    since = state.get("since") or "2026-01-01T00:00:00Z"
    files = http.get("https://www.googleapis.com/drive/v3/files", headers=h, params={
        "q": f"'{FOLDER}' in parents and mimeType contains 'image/' and createdTime > '{since}' and trashed = false",
        "orderBy": "createdTime", "fields": "files(id,name,description,createdTime,webViewLink)"}).json()["files"]
    report_fetched(len(files))
    if not files:
        return {"new": 0}
    rows = []
    for f in files:
        cap = ai.generate(f"{VOICE}\nWrite an Instagram caption for a photo named '{f['name']}'. Notes: {f.get('description', '')}",
                          max_output_tokens=200).text.strip()
        rows.append([f["webViewLink"], cap, "Ready"])
    http.post(f"https://sheets.googleapis.com/v4/spreadsheets/{SHEET}/values/Content!A:C:append", headers=h,
              params={"valueInputOption": "RAW"}, json={"values": rows})
    state.set("since", files[-1]["createdTime"])
    return {"captioned": len(rows)}

FAQ

Common questions

How does it know what is in the image?
It uses the file name and any description you add in Drive, so naming a file 'sourdough-rye-loaf' gives the best caption.
Can I set the tone and hashtags?
Yes. Describe your brand voice and any hashtags you always use, and every caption follows it.
Does it post to Instagram for me?
No. It prepares the caption in your sheet with status Ready, and you post when you choose.
What permissions does it need?
Drive read; Sheets 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 “Write social captions for images you drop in Drive” from your assistant

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