cd /news/ai-products/runplan-a-running-coach-whose-plan-e… · home topics ai-products article
[ARTICLE · art-70232] src=runplan.app ↗ pub= topic=ai-products verified=true sentiment=↑ positive

RunPlan – a running coach whose plan engine is open and deterministic

Dan and Katya launched RunPlan, a deterministic running coach for iPhone and Apple Watch that builds training plans from a public Swift package encoding classic coaching methods, not from an LLM or content team. The app is free and the creators have committed to avoiding subscriptions to keep running affordable.

read3 min views1 publishedJul 23, 2026
RunPlan – a running coach whose plan engine is open and deterministic
Image: source

By Dan & Katya · July 10, 2026

Hi! We’re Dan and Katya. We run, and we build things, and for the last year and a half we’ve been making the running coach we always wanted to exist. This post is the short version, for people who just found us.

RunPlan is a coach for iPhone and Apple Watch. You tell it what you’re training for — a 5K, a 10K, a half, a marathon — and when. It builds the whole plan: every week from now to race day, every workout with its structure, every pace derived from a race you’ve actually run. Then the Watch runs it from your wrist — intervals, pace windows, a tap at every transition. The phone can stay home. We use it every day and we love this thing — that’s why it exists.

The part we’re most proud of #

The plans don’t come from a content team, and they don’t come from an LLM. They come from a deterministic Swift package that encodes the classic coaching canon — Jack Daniels’ pacing math, Pfitzinger’s long-run progressions, Higdon’s approachability — as configuration and generators. Same inputs, same plan, every time.

That decision quietly pays for itself every week. Our regression suite renders entire plan catalogs to text and diffs them, so when we adjust one training rule we see exactly which plans moved, and by how much. It’s the most fun we’ve ever had testing anything. The long version of how the engine thinks is on the blog.

And it’s public. If you want to know why Tuesday says 6×800m — or you disagree with a taper — the code that decided it is at github.com/swarog46/training_plan_kit: plan structure, pace zones, progression and deload logic, plus the debug CLI we use to audit our own output. We’d genuinely love issues and disagreements.

What it looks like in practice #

You enter a recent race result once. The app derives your training paces from it — easy, threshold, interval, race — and builds the calendar. Every workout tells you what it’s for, not just what to do. On the run, the Watch shows the current interval and target window, taps your wrist when the segment changes, and saves everything to HealthKit. Deload weeks arrive on schedule whether or not you feel heroic. It speaks nine languages.

None of this was easy, and we’ve written up the fights as we went: the pace number on your wrist took a Kalman filter and a year of arguing, one bug survived eight months of hunting, and there are three problems we still haven’t solved and said so publicly. We like working this way.

The money part #

The app is free right now. What happens later, we haven’t decided — the one thing we’re sure about is we don’t want your subscription. Running is already the cheapest sport there is; we’d like to keep it that way.

So that’s us. If you run — or you’ve been meaning to — give it a try and tell us where it’s wrong. The blog has the rest of the war stories.

── more in #ai-products 4 stories · sorted by recency
── more on @runplan 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/runplan-a-running-co…] indexed:0 read:3min 2026-07-23 ·