Skip to content

Every 15 minutes

Get short coaching notes after each workout

After every upload you receive a three-line review of pace, heart rate and effort.

Runs
Every 15 minutes
Apps
Strava
AI
Yes, uses the built-in AI allowance
Access
activity:read_all

Send this to your assistant

Create a ClickRuntime automation: when I upload a new Strava activity, email me a 3-line AI review of my pace, heart rate and effort compared with my usual sessions.

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 runner training for a spring marathon logs a tempo session on Strava, glances at the pace graph, and has no idea whether it was too hard for a Tuesday. A coach would say so within minutes, but a coach costs money and most recreational athletes train alone. Without feedback, easy days drift faster and hard days get skipped.

Every 15 minutes, ClickRuntime checks Strava for new activities and ignores ones it has already handled by ID. For each new run or ride it pulls the details, such as distance, moving time, average heart rate and elevation, and asks ClickRuntime's built-in AI to write a short note: what went well, what to watch and how to approach the next session. The note is emailed to you.

It works for self-coached runners, cyclists and triathletes who want a quick second opinion without a subscription.

What you get out of it

  • Feedback arrives while the workout is fresh

    A note within the hour is still useful: you remember how the legs felt and can compare it with the data. Advice read days later rarely changes behavior. Feedback tied to a real session sticks better than generic advice.

  • Easy days get protected

    When the note points out that your average heart rate on a recovery run was in tempo territory, you hear it before the pattern becomes an injury. Training stays polarized the way the plan intended.

  • No extra subscription or API key

    The writing step uses ClickRuntime's built-in AI, so you do not need to buy another service or manage a model key. The cost of coaching-style comments stays low. There is nothing to set up beyond your Strava connection.

  • Patterns surface across weeks

    Because each activity gets its own note, repeated themes show up in your inbox: pacing too fast early, skipped warm-ups, climbing volume. Spotting them is the first step to fixing them.

  • Each workout leaves a written record

    The emails build a searchable training diary with context on how sessions felt and what the data suggested, handy when you review a build before a race. Looking back is far easier when each session already has a note.

How it works

What happens, step by step

  1. Every 15 minutes, ClickRuntime checks Strava for activities you have uploaded.

  2. It skips any workout it has already reviewed, so each one gets feedback only once.

  3. For each new workout it fetches the full details, and AI compares the pace, heart rate and effort with your recent sessions.

  4. You get an email titled after the activity with three short coaching notes.

Before it runs live

  • Connect Strava

What you get

RunsEvery 15 minutes
Get short coaching notes after each workouttoday, 9:00Succeeded
Email · Coach notes: Morning RunPace 5:12/km, 8 s faster than your usual easy run. Avg HR 152, a touch high for this pace; effort was solid, not a recovery day.

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 Strava 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_coach_feedback_on_each_new_activity.pyexample
from clickruntime import on_trigger, credentials, http, state, ai, notify, report_fetched

API = "https://www.strava.com/api/v3"

@on_trigger
def run(event):
    h = {"Authorization": f"Bearer {credentials.connection('strava', 'personal')}"}
    recent = http.get(f"{API}/athlete/activities", headers=h, params={"per_page": 20}).json()
    seen = set(state.get("seen") or [])
    new = [a for a in recent if a["id"] not in seen]
    report_fetched(len(new))
    if not new:
        return {"new": 0}
    usual = [f"{a['sport_type']} {a['distance']/1000:.1f}km {a['moving_time']//60}min HR {a.get('average_heartrate')}"
             for a in recent if a["id"] in seen][:10]
    for a in new:
        d = http.get(f"{API}/activities/{a['id']}", headers=h).json()
        review = ai.generate(
            f"New: {d['sport_type']} {d['distance']/1000:.1f}km in {d['moving_time']//60}min, "
            f"avg HR {d.get('average_heartrate')}, suffer score {d.get('suffer_score')}.\nUsual:\n" + "\n".join(usual),
            system="You are a running coach. Reply in exactly 3 short lines: pace, heart rate, effort.",
            max_output_tokens=150).text
        notify.email_me(f"Coach notes: {d['name']}", review)
    state.set("seen", [a["id"] for a in recent])
    return {"reviewed": len(new)}

FAQ

Common questions

Does it comment on every activity type, including walks and swims?
It reads whatever Strava returns, so any logged activity can get a note. If you want only runs and rides, a filter on the activity type skips the rest and saves you inbox clutter. Say so if you want to exclude short activities.
Will the same workout get feedback twice?
No. The run stores the IDs it has processed and skips them on later checks. If Strava edits an activity after upload, for example a corrected title, it will not trigger a second note. Edits and re-uploads are ignored once an activity is handled.
Is this a replacement for a human coach?
No. The note is generated from the numbers in the activity and cannot see injuries, sleep or life stress. Treat it as a quick, consistent read of the data and use your own judgment or a coach for plan changes.
What permissions does it need?
activity:read_all. 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 “Get short coaching notes after each workout” from your assistant

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