Kliva turns any of 31,000+ trail and ultra races into a race-day plan: pacing per segment on the real terrain, fueling with the actual gels and drink mixes you carry, caffeine and sodium dosed to your body, and a cutoff margin at every aid station. Then it syncs the plan to your Garmin as a free Connect IQ data field: aid stations, cutoffs and fuel reminders on your wrist, updated over the air. Plus a printable roadbook, a crew sheet link, FIT and CSV export. Free, in five languages.
Kliva runs entirely on Vercel with Next.js, and three things shaped the product. Static rendering: 31,000 race pages in five languages are pre-built and refreshed with cache tags, so one person can serve a global race calendar for less than a race entry per month, and I can invalidate a single race the moment its data changes. Vercel Cron: five scheduled jobs roll race dates to the next edition, check new GPX traces, send registration alerts and a weekly digest. Without them those would be scripts I forget to run. OG image generation: every race and region page gets a designed share card at request time, which is how Kliva links look on Reddit and LinkedIn. Add Vercel Analytics for the sign-up funnel and preview deploys for shipping several times a day solo. The real capability is that one engineer can run a data product at this scale with no ops team at all.
Hey ProductHunt, Simon here. I'm a trail runner in Switzerland.
The thing that broke me was endless excel sheets to build race plan, and inaccurate plans from the existing race planners. I had the whole day planned on a spreadsheet, where to eat, which cutoffs scared me, and none of it was on my watch. Garmin gives you a line on a map and that's it. So I spent the night before adding waypoints by hand, at the end, that didn't match the plan at all. I remember thinking there is no way this is still a manual job in 2026.
So, Kliva. It started as a calendar because I couldn't find one that had every race, not just the big ones and always had issues finding all information in one place. Right now it's 31k races in 100+ countries, scraped from official sources, deduped, with aid stations ( for some of them, working actively to increase that offer ) and elevation profiles where I could get them (not everywhere yet, tell me what's missing in your country and I'll go fetch it).
Then I bolted the actual planner on top. Pick a race, tell it roughly how you run, and it gives you split times per climb, that's based on tens of thousands of results analyzed, which gel at which km (real products, not grams per hour), caffeine and salt dosed to your weight, and how much margin you have at each cutoff. Three versions of the day, because the plan you make on Tuesday is never the day you get on Saturday.
And then the missing piece: a Garmin data field that shows all of it on the wrist. Next aid station, cutoff margin, on plan or not, and a buzz when it's time to eat. Free, in the Connect IQ store. If you don't want another app, there's a FIT download and the aid stations show up as course points. Support to other brands is coming up soon as well.
Everything is free for now. I'm one person, there's no funding, just pure passion and engineering.
Honest ask: if you run, try it on a race you know and tell me where the pacing is off. And if you have a Garmin, tell me your model and whether the field loads, older watches are tight on memory and I'm chasing that.
User base is already growing well organically, already have a few users tried the plans on ultra trail races, feedback is excellent so far.
Your changelog mentions rebuilding timing and validating against tens of thousands of finishers with big error reductions. What’s the core pacing model (e.g., grade sensitivity, climb vs descent penalties, fade), and what data did you find mattered most to get from “reasonable” to “trustworthy” on real trail courses?
It's a grade-adjusted pace model evaluated point by point along the trace, with asymmetric climb and descent costs, a fade model for the back half, and aid-station stop time. Personal modifiers on top: climber vs descender, and how positive you want to split.
What got it from reasonable to trustworthy was not the model, it was the data: calibrating against tens of thousands of real finishers across a lot of races races, by race duration, and cleaning the elevation profiles before anything else. The published grade curves get you 80% of the way. The last 20% is knowing where they are wrong on real trail courses, and that part came from the panel.
Kliva
Kliva
Product Hunt
Kliva
@curiouskitty Thanks for your comment.
Happy to share the shape, not the coefficients.
It's a grade-adjusted pace model evaluated point by point along the trace, with asymmetric climb and descent costs, a fade model for the back half, and aid-station stop time. Personal modifiers on top: climber vs descender, and how positive you want to split.
What got it from reasonable to trustworthy was not the model, it was the data: calibrating against tens of thousands of real finishers across a lot of races races, by race duration, and cleaning the elevation profiles before anything else. The published grade curves get you 80% of the way. The last 20% is knowing where they are wrong on real trail courses, and that part came from the panel.