Skip to content

Weekly

Get your weekly training totals by sport

Each Sunday night an email lists distance, moving time and elevation for the week, split by run, ride and other sports.

Runs
Weekly
Apps
Strava
AI
Not needed
Access
activity:read_all

Send this to your assistant

Create a ClickRuntime automation: every Sunday at 8pm, email me this week's Strava totals for distance, moving time and elevation, grouped by sport.

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

Strava shows a weekly graph, but it mixes sports, hides elevation behind a tap and only exists inside the app. An athlete who runs, rides and swims has to open three views to answer a simple question: did I train more or less than last week? Without that answer, build weeks become guesswork and recovery weeks get skipped. It is a small gap, but it affects every training decision after it.

On Sunday, ClickRuntime lists the week's Strava activities, sums distance, moving time and elevation gain for each sport and emails you one tidy table. It runs after your long session, so the totals include everything from Monday to Sunday.

It fits anyone following a structured plan, and coaches who ask athletes to send a weekly volume report. Weekly rhythm also makes it easy to compare block against block.

What you get out of it

  • Weekly volume is clear at a glance

    Total distance, hours and climbing per sport sit in one place. You see immediately whether the week matched the plan or ran short. No tapping through tabs, no mental arithmetic, and no mixing of sports in a single total.

  • Overreach gets caught before injury

    A jump in hours or elevation from one week to the next is a classic warning sign. Seeing the numbers side by side makes it easier to back off when a build gets too steep.

  • Coaches get reports without nagging

    An athlete can forward the Sunday email to a coach instead of typing figures into a message. Both sides save time and the numbers are not rounded by memory. Neither of you has to chase or retype anything, and the figures match Strava exactly.

  • Season totals become simple to track

    Because the summaries land in your inbox weekly, adding them up gives yearly volume, which is useful for setting goals and for comparing one training year to the next. A full year of weekly emails also makes an honest reference when a goal feels out of reach.

  • Sunday evening becomes a planning moment

    With the numbers in hand you can decide on Monday's session knowing where your fatigue sits, rather than going on feel alone. The decision becomes calm and informed instead of reactive.

How it works

What happens, step by step

  1. Every Sunday night, ClickRuntime pulls all of your Strava activities since Monday.

  2. It adds up distance, moving time and elevation gain for each sport, such as runs and rides.

  3. You get one email with a line per sport, for example "Run: 42.3 km · 3h51 · 380 m up".

Before it runs live

  • Connect Strava

What you get

RunsWeekly
Get your weekly training totals by sporttoday, 9:00Succeeded
Email · Your training weekRun: 42.3 km · 3h51 · 380 m up Ride: 96.0 km · 3h12 · 1,140 m up

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

  • Run it at a different time, more or less often, or only on weekdays
  • Add an AI step, for example to summarize, sort or draft a reply
  • 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.
weekly_training_summary.pyexample
from collections import defaultdict
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, credentials, http, notify

@on_trigger
def run(event):
    token = credentials.connection("strava", "personal")
    now = datetime.now(timezone.utc)
    week_start = (now - timedelta(days=now.weekday())).replace(hour=0, minute=0, second=0)
    acts = http.get("https://www.strava.com/api/v3/athlete/activities",
                    headers={"Authorization": f"Bearer {token}"},
                    params={"after": int(week_start.timestamp()), "per_page": 100}).json()
    totals = defaultdict(lambda: [0.0, 0, 0.0])
    for a in acts:
        t = totals[a["sport_type"]]
        t[0] += a["distance"] / 1000; t[1] += a["moving_time"]; t[2] += a["total_elevation_gain"]
    lines = [f"{sport}: {km:.1f} km · {secs // 3600}h{secs % 3600 // 60:02d} · {elev:.0f} m up"
             for sport, (km, secs, elev) in totals.items()]
    notify.email_me("Your training week", "\n".join(lines) or "No activities this week.")
    return {"activities": len(acts)}

FAQ

Common questions

Which sports does the summary cover?
Every activity type that Strava returns for the week, grouped by sport: runs, rides, swims, walks, hikes and so on. If you want only certain types, a filter limits the table to those. Anything else is left out.
What time does the Sunday email arrive, and which days does it count?
The schedule time and time zone are yours to choose. A common choice is Sunday evening, covering Monday through Sunday. If your week starts on another day, the start date of the range changes with it.
Does it use moving time or elapsed time?
It sums moving time, which excludes pauses such as traffic stops, because that matches training load better. Elapsed time can be added as another column if you want to see how long you were out in total.
What permissions does it need?
activity:read_all. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run each time it runs (weekly). Checks that find nothing to do 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 your weekly training totals by sport” from your assistant

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