The Moveee team
Free coaching · a real route for every ride
It's a fair thing to doubt. For most of the web's life, "in the browser" meant toy-grade — a little game in a tab, not something that could actually train you. So when someone says a browser now runs a full indoor trainer session, the honest first reaction is scepticism. Can a web page really hold your watts, render a real road, and save a ride that counts?
The short answer is yes, and it's worth understanding why — because the mechanism is real, not marketing. We build one of these tools, Moveee Indoor, so we'll use it to show exactly how the pieces fit, and we'll be just as clear about what a browser still can't do.
Two things changed
The browser didn't get magically smarter overnight. Two specific capabilities landed, and together they cover everything a trainer app needs to do:
Web Bluetooth
The browser can now pair directly with your smart trainer, power meter and heart-rate strap — the same live two-way link a native app uses, no dongle or install.
WebGL & WebGPU
Hardware-accelerated 3D graphics, straight from the page. That's what draws a real street, a church, a bridge and a climbing gradient in real time as you ride.
One lets the page talk to the trainer; the other lets it draw a real world. Everything below is just those two working together. And the same pair explains the browser's limits, which we'll come to.
Myth vs reality
Most of the scepticism clusters around a handful of specific worries. Here's each one against what actually happens in a session:
"A browser can't reach my trainer."
Web Bluetooth pairs FTMS trainers, CPS power meters and HR straps directly from the tab.
"It'll be a flat cartoon, not a real ride."
The world is your own route, built from OpenStreetMap and real elevation — actual streets and gradients.
"ERG won't work in a web page."
It does. The trainer holds each interval's target watts across 150+ workouts, or your own.
"The data won't be real training data."
Full power streams with NP, IF, TSS and best efforts — identical to an outdoor ride.
"Close the tab and the ride's gone."
The recording is backed up as you ride — a dropped connection or closed tab can't erase it.
"It won't count toward my plan."
It saves as a virtual ride, lands on your calendar, counts toward your plan, and goes to Strava.
A session, start to finish
Here's the whole thing, from a cold trainer to a saved ride, so you can see there's no sleight of hand:
Pair the trainer
Open Moveee Indoor in Chrome or Edge, hit pair, and pick your trainer from the browser's device chooser.
Choose a route or workout
One of your saved routes, a structured session, free riding, or a private room with up to six friends.
ERG holds your watts
In a workout the trainer sets resistance to each interval's target; off a workout it follows the road's real gradient.
Ride real roads
The 3D world streams in from the map around you — the actual streets, buildings and terrain your route passes through.
It saves as a real ride
Full power data with NP/IF/TSS lands on your calendar, counts toward your plan, and publishes to Strava in one tap.
Nothing in that chain is a compromise. The trainer is under proper control, the world is a real place rather than a fantasy island, and the ride that comes out the other end is indistinguishable from an outdoor one in your log. If you want the training side of the picture — how to structure indoor sessions so they actually move your fitness — our guide to training indoors is the place to start.
Indoors still feels different — that's normal
One thing a browser can't change: indoors is its own environment. Many riders find their numbers sit a little lower on the trainer than on the road, and that's expected — heat, no freewheeling, a fixed position and the mental load all play a part. It isn't a fault of the platform, browser or otherwise. If your indoor figures puzzle you, why indoor FTP is often lower explains what's really going on, so you can set your zones honestly.
What still needs a native app
Being straight about the edges is the whole point of a post like this. A browser trainer app genuinely can't do everything yet:
The honest gaps
No iPhone or iPad. iOS browsers can't pair a trainer over Web Bluetooth, and there's no native Moveee Indoor app to work around it.
Chrome or Edge only. Safari and Firefox don't support Web Bluetooth yet, so pairing won't work there.
No racing scene yet. You can ride with up to six friends in a private room, but there's no big live racing population.
It's alpha. Free while we build it — which honestly means you'll meet rough edges along the way.
None of those are dressed up as features. If you ride from an iPad or you live for mass-start racing, a browser app isn't your tool today, and a native platform will serve you better. But for the core question — can a browser actually train you? — the answer in 2026 is a genuine yes. Open it, pair, and the proof is in your own legs.
See for yourself — it's just a tab
Pair your trainer in Chrome or Edge and ride a real road rebuilt from the map. Full power data, straight to your plan and Strava.
Runs in your browser · Chrome or Edge · no iOS · free while in alpha
Keep reading

A Zwift alternative that runs in your browser — no download, no install
If you want the Zwift experience without the 12 GB download, the launcher and the gaming PC, the answer now runs in a browser tab. Here's how a no-install alternative works — and where it doesn't.

The cycling trainer app that runs entirely in your browser
No launcher, no updates, no disk space — just a tab, your smart trainer and the road. Here's what a browser-native trainer app can do in 2026, and the honest limits of the approach.