How to Load Zwift or TrainerRoad on a Peloton Bike: A Geek’s Guide


This post started almost 100% for my own reference as a simple notepad file. But enough people asked about my random Instagram stories using it for Zwift and TrainerRoad, that I figured I’d write it up into something semi-cohesive. While the concept of loading apps like Netflix on a Peloton bike is hardly new (with much of it documented on Reddit), loading TrainerRoad or Zwift specifically is relatively unheard of. Both are technically easy to load, but Zwift was much trickier to sort out all the nuanced steps.

Now, the only ‘bad news’: You’ll need power meter pedals to make this work. I can’t get around that (and nobody to my knowledge has). The good news is that you can use even crazy-old Vector 1 or Favero BePro pedals if you can find them on eBay or something. That’s because the Peloton bike actually supports connecting to ANT+ sensors. More on this later.

If you’re tech savvy, the overall install process is pretty easy – about 10-15 mins for TrainerRoad and 15-20 mins for Zwift. If you’re familiar with sideloading Android apps, then it’s trivial. Whereas if you come from the iOS world, you’ll probably scratch your head a few times but keep on chuggin’. To my knowledge, there is nothing here that ‘voids’ your Peloton warranty per se (at worst you simply reset your screen to defaults). But then again, they technically void your warranty for changing out your pedals…so…shrug? Either way, you’re on your own.

In any case, the end resultant of loading Zwift or TrainerRoad on a Peloton bike is that you can ride Zwift or TrainerRoad on your Peloton screen.

Some may be asking: Why?

To which I respond: Some idiot many years ago looked at a piece of horribly moldy cheese that might kill them and thought: I should eat that, maybe it’ll taste good!

And thus, we now have blue cheese and stinky fridges everywhere.

Actually, the answer is simple. As I’ve heard from many of you, you might already have the Peloton bike in your home for its primary purpose (riding the Peloton app). So to be able to re-use it for riding TrainerRoad or Zwift is handy for some folks. In fact, I’ve used it a number of times that way over the last 5 months. At home I keep the Peloton bike in our living room, whereas I have a spare bike on a trainer in a shed thing. All the rest of my trainer/bike gear is at the office. So if I’m also keeping an eye on the kids at the same time as I’m doing a workout, then I’ll likely ride the Peloton bike.

Practically speaking riding the Peloton bike for a TrainerRoad workout is not really any different than a non-smart trainer. The same goes for Zwift. The only difference is that instead of shifting you use the resistance knob. It makes for a perfectly functional TrainerRoad session, but realistically a less than optimal Zwift experience. But you already knew that going into this.

Anyway, let’s get moving.

(Ok, and yes, I’m still planning on writing up my full Peloton review touching on accuracy/usage/etc. All the normal bits. The long pole in the tent was honestly moving it from home to the DCR Studio to get final photos/videos, which, I did via cargo bike this morning as some of you saw on my Instagram stories. So now that’s done, expect a review shortly. Also, for those not following along, the TDLR is that I bought a barely used Peloton back in January in Las Vegas while there for CES. I disassembled it into a million pieces in my hotel room, then brought it on the airplane with me back to Amsterdam and re-assembled it. The 200-post long story of that is on my Instagram Stories archive in two pieces. Enjoy!)

Why You Need Power Meter Pedals:


Now as I stated before, you’ll need power meter pedals here. Any pedals will do. Technically a company like Stages, 4iiii, or even Avio could develop a stick-on style power meter for the Peloton crank arms. Though, that’d probably require some incentive to do so. So till then, power meter pedals are where its at.

The reason you need this is that Peloton does not broadcast your power (or cadence) over any standard protocol (ANT+ or Bluetooth Smart). Instead, that’s done via wires directly into the bike itself for its own app. Surprisingly, despite nearly a million of these bikes out in the wild, nobody has actually decided this successfully as a small app that can run on the bike and broadcast that data. And unfortunately, Peloton has no real incentive to follow industry standards either.

The kicker here is that the Peloton bike has both ANT+ & Bluetooth Smart hardware. So if someone did find a way to do that, then any app could be loaded and connect to it.

I really wish there was a way around this. But I’ve searched the crap out of the internet for more hours than I’d like to admit, and nobody has come up with a solution, specifically to being able to detect the resistance knob level. Speed would be trivial using a magnet sensor. The exact calculation Peloton uses is known, also cadence would be trivial using a magnet sensor also. But without knowing what precise setting the Peloton resistance knob is at, you can’t determine output wattage on a spin bike. The closest someone has come is using OCR on the screen to read the digits in the Peloton app live, and then re-transmitting it. But that won’t work here, since we’re using the screen to run Zwift.

So, until then, any of the following power meter pedals will work:

– Garmin Vector 1, Vector 2, Vector 3 (or the single-sided variants)
– Favero BePro or Favero Assioma pedals (or the single-sided variants)
– PowerTap P1 or PowerTap P2 pedals (or the single-sided variants)
– IQ2 pedals
– SRM X SPD pedals
– SRM EXACT Look Pedals
– LOOK Power Pedals
– Polar Power Meter Pedals (these should work as they follow the BLE standards)

I believe that’s it. Or heck, I suppose you could skip that and find an old PowerCal heart rate strap somewhere, that’d work too (and frankly, for longer duration bits the accuracy probably wouldn’t be all that different than the Peloton bike anyway).

Ok, with that out of the way, let’s talk tech.

The Foundational Bits:


Estimated Time: 5-10 mins

These first steps are required no matter what app you’re installing. And realistically this would be the same whether it was Zwift, TrainerRoad, or Netflix. Maybe even apps like The Sufferfest or others. Note that there are numerous ways to slice the Android onion. In my case, I’m mostly just using the various bases that I found elsewhere. So if you’ve got tweaks, feel free to suggest them in the comments.

Note: I’m writing these instructions using a PC because I’m mostly a PC guy. But if someone writes these foundational instructions for Mac, I’m happy to include them.

1) You need a micro-USB cable, specifically one that supports data (note: I’d recommend the longest one you’ve got around). Most support data, but if you’re unsure and have a Garmin/Wahoo/etc lying around, plug it into your computer and ensure that you can see the Garmin/Wahoo/whatever in your computer. That’ll get plugged into the only port on the back of the Peloton console that you can plug it into.

2) Next, turn on developer mode on the Peloton bike:

A) Login to your bike
B) Tap settings in upper right, then ‘Device Settings’, then select ‘About Tablet’, then tap the ‘Build Number’ box repeatedly until it says you’re a Developer.
C) If you press back once, you should see ‘Developer Options’ showing now below ‘About Tablet’, open the ‘Developer Options’
D) Scroll down to ‘USB debugging’ and enable that, this is basically how you get apps on your Peloton bike


3) Next, we need to install the Android Developer tools on your Windows computer. Again, I come from the Windows world mostly, so I don’t know the steps for Mac. But I assume they’re similar. Select the option that says ‘Download SDK Platform-tools for Windows’. To ‘install’ them, you’re basically just copying the contents to a folder. In my case, to keep things simple, I’ve created a folder called Peloton on my hard drive:


(Note: It may unzip into a folder called ‘Platform-Tools’, that’s fine. I just put everything into the Peloton folder for simplicity here.)

4) Now, plug your Peloton bike to your computer using that USB cable. You should see your Peloton bike show up on your computer. It’ll be a funky name, this is actually just the model of your Peloton bike. The folders under there will vary slightly from mine, since the AzRecorderFree is what I use to capture screen recordings.


5) Now, open up a Command Prompt, and get to the same directory as where you installed all these files. In my case, that’s the Peloton folder on my C:\ drive.

Then once there type: adb.exe devices


6) You’ll get a prompt on your Peloton bike to authorize that request from your computer, press to accept (and probably check that box to make your life easier in the future).

7) Now, type the command again: adb.exe devices

You’ll see this time it shows a device returned (IAPLBS182104347), which simply means it successfully connected to my Peloton bike.


Ok, with these steps done we’re ready to install *ANY* app you want. In other words, you accomplished the hard part. Now it’s easy from here on out!

TrainerRoad Install Steps:


Estimated time: 5-10 minutes

We’ll start with the TrainerRoad steps because frankly it’s the fastest. Everything is in one tidy package and you’ll be up and running in no time!

The way ‘side-loading’ works is that Android apps come in an APK file, which is basically a self-contained file that includes the entire apps. Mostly (as we’ll see in Zwift). But you need to get those files. Because the Peloton bike doesn’t simply have the Google Play store installed, we’ll need to use 3rd party sites to download these same APK files. Sometimes companies will also make them available easily too.

In the case of TrainerRoad, the APK file is available from PureAPK. It shows the most recent/current Android version from January 22nd, 2020.

(Note: Anytime you download an app from a 3rd party service, you risk a scenario where the 3rd party app is compromised. That’s a pretty darn low chance here, but just want to be aware of that.)


Now, download that APK file into that Peloton folder. It’ll make your life easier. You can see the file below in that folder:


Ok, back to your command prompt and type the below and press enter:

adb.exe install TrainerRoad_v2020.3.0.92026_apkpure.com.apk

(Pro Tip: After typing the Tra of TrainerRoad, simply press tab and it’ll finish it for you.)


It’ll come back with ‘Success’ a few seconds later.

Now, back on your Peloton bike press the three dots in the lower right corner, then press ‘About’, and then tap the lower right corner of that box 10 times quickly:

20200614_155501 20200614_155510

Here’s the spot:


Now, you’ll be here, which shows all your apps. You’ll see some general Peloton apps (including the ANT+ Demo app no less!), as well as our new TrainerRoad app:


Simply tap it to open, then login to TrainerRoad as normal:


The screen will go sideways for a second while TrainerRoad downloads all the files. This part of the app isn’t optimized for landscape. No worries. It might even turn upside for a second.


Next, press ‘Pair Devices’. Then press ‘Deny’. You won’t be able to ‘Allow’. Don’t worry, we’ll come back to that in a second. Let it finish pulling all the workouts, you’ll see status at the bottom left corner. It’ll probably take 3-5 minutes. This is no different than on any other TrainerRoad device.


Once it’s done, we need to go fix that permissions issue. Don’t worry, it’s easy!

Tap the time/Bluetooth/WiFi icons in the corner of the screen, that’ll bring you here:


Then, you’ll see the ‘Settings’ menu (above), where you’ll tap ‘Apps’ (above), which brings you to a list of apps. Choose the TrainerRoad app:


You’ll see the above. Then select ‘Permissions’ and enable the ‘Location’ option (not enabled above, but you’ll need to enable it).

Now press back a few times till you’re in the TrainerRoad app. It might still be upside-down, sideways, or such. No worries right now.


At this juncture you can now scan for devices successfully! I don’t know why the sensor pairing here in TrainerRoad depends on the location service, but it does. So without it, you can’t get either ANT+ or Bluetooth Smart connectivity (which, you kinda need). Let it scan for devices, and you’ll now be able to select ‘Next’. Keep pressing next through various menus. Each time it’ll probably rotate your Peloton screen once.

But ultimately press Next enough times and you’ll be here, ready to roll!


You can go into the Devices menu as normal to ensure all your pairings – mostly notably your power meter pedals:


With that, you’re done!

Now, anytime you want to open TrainerRoad it’s easy, simply press the three dots in the lower right corner, then press ‘About’, and then tap the lower right corner of that box 10 times quickly, then tap TrainerRoad. All in it’ll take less than 5 seconds. And then you’re doing your TR workouts as normal:


The above was my workout yesterday, on the Peloton bike using PowerTap P1 pedals, but controlling the resistance knob manually. One tip, is that you can use the Peloton logo on the resistance knob to figure out roughly how much of a turn you need for different intervals. It’s not perfect, and is kinda like using a non-smart trainer.

Go forth and enjoy!

Oh, and if you need to get out of TrainerRoad, you can swipe down from the top of the Peloton screen and then tap the Peloton logo at the bottom. Because TrainerRoad will run in the background after you’re done, I’d recommend either Force Closing the app via Settings, or simply restarting your Peloton bike so it doesn’t slow down the main Peloton app when you use that.

Zwift Install Steps:


Estimated time: 10 minutes

Ok, next up is Zwift. Practically speaking it’s not more difficult than TrainerRoad’s, it’s just totally different. Most people (including myself) got snagged up on this because it’s got one minor catch that if you don’t know to create a special folder, it won’t work.

In the case of Zwift, we’re going to get the APK file from APKFab. That’s because they include the added OBB data you’ll need. Other sites don’t have this, and without it, you’re hosed. You’ll see the big blue button ‘Download XAPK (APK + OBB Data)’.

(Note: Anytime you download an app from a 3rd party service, you risk a scenario where the 3rd party app is compromised. That’s a pretty darn low chance here, but just want to be aware of that.)


Now, download that file into that Peloton folder, it’s big, it’ll take a minute or two. But downloading it to that Peloton folder on your hard drive will make your life easier. You can see the file below in that folder:


Now in your C:\Peloton folder, rename the Zwift APK file to be a .ZIP file instead (right-click > Rename > simply replace the .xapk with .zip):


Now, right-click that Zwift file and extract the contents into a new folder, just call it “Zwift”:


We need exactly one file from this entire boondoggle, the OBB file, just keep clicking down a few levels till you see it (it’s the only file there, paths shown below):


Now, using Windows Explorer, navigate to create a new folder within the Peloton bike’s directory, under Android > obb, called:


It needs to be called exactly that. This is SUPER CRITICAL. It won’t work if you screw this up. Just like below:


Now, copy and paste that obb file to your Peloton bike, in the Android > obb  > com.zwift.zwiftgame folder:

image image

Now, back in that command prompt we need to install the Zwift app. Here’s what you’re typing:

adb.exe install .\Zwift\com.zwift.zwiftgame.apk


Got it? Good, almost there.

(At this point I don’t know where exactly your Peloton screen may be, but ultimately you want to be in the app launcher. If you’re not sure, simply press the Peloton icon to get yourself back to the main Peloton screen and then continue on).

Now, back on your Peloton bike press the three dots in the lower right corner, then press ‘About’, and then tap the lower right corner of that box 10 times quickly:

20200614_155501 20200614_155510

Specifically, where this red box is, is where you tap 10 times quickly:


Now, you’ll be here, which shows all your apps. You’ll see some general Peloton apps (including the ANT+ Demo app no less!), as well as our new Zwift app. But don’t be clickin’ anything yet! We need to give it some permissions first.


So instead, open that Settings icon (the big wheel, not the ‘Settings’ text in the upper right corner):


Then press Apps, and then scroll down to Zwift and open it up:


Open the ‘Permissions’ section, and give it all three: Camera, Location and Storage options (I don’t know why it asks for camera, but it does, it’ll fail later if you don’t – I tried.)


(Pro Tip: Look at the size of the app, if it’s not in the 600MB+ range, and is perhaps around 30-40MB, that means something went amiss with the folder you placed the OBB file in. Double-check that. Mine shows 2GB because I’ve finished the install for this screenshot)

Then press back a few times till you’re here:


Now you can go ahead and open Zwift:


It’ll take a little while, don’t worry. It’s doing its thing downloading more data. A minute or two later, it’ll bring you to the welcome screens you can swipe through, then the login screen:


And from there you pair up your sensors like normal. Both ANT+ & Bluetooth Smart sensors are compatible:


Now, go forth and enjoy Zwift like normal…at all its low-resolution Peloton screen processor glory:

vlcsnap-2020-06-15-00h26m48s556 vlcsnap-2020-06-15-00h27m04s192

Note that I mounted a Quadlock mount to my bike to hold my phone for other stuff, but it works well for holding the Zwift companion app too. Though frankly any phone mount will work well here:

DSC_5876 DSC_5874

You do you on that front, at this point in the setup guide, you’re probably just using duct tape to hold it together.

In any case, you’re done, off you go to use Zwift. Oh, and if you need to get out of Zwift, you can swipe down from the top of the Peloton screen and then tap the Peloton logo. Because Zwift will run in the background after you’re done, I’d recommend either Force Closing the app via Settings, or simply restarting your Peloton bike so it doesn’t slow down the main Peloton app when you use that.



Ok, there ya have it: Zwift or TrainerRoad working just fine on your Peloton bike, albeit with power meter pedals.

Now, is it an optimal Zwift experience? No, of course. But it’s totally doable. I’ve used it numerous times this way. It is however a perfectly functional TrainerRoad experience, especially with longer intervals.

Undoubtedly you’ll have ways these steps can be optimized (to which I’m all ears). And perhaps those folks with the latest generation Peloton screens will get better resolution on Zwift than mine. I’m not sure. Also, you’ll need to remember every once in a while to update your Zwift or TrainerRoad app. There are Android tools that can do it for you when new versions come out, but I haven’t tackled any of those. If someone wants to write some steps in the comments below, I’m totally game for adding them in here.

And maybe at some point I’ll write-up steps for other apps like The Sufferfest, though, it’ll likely just follow one of the variants of either the TrainerRoad or the Zwift install. That pretty much covers the two extremes you’re likely to find on Android app sideloading.

With that – hopefully you found this useful, or something. Given there’s a million Peloton bikes out there, it stands to reason that at least some of you have too much time on your hands like me and want to do this. Thus…good luck!

Note: I fully expect to edit/update these installation numerous times. I also fully expect you’ll have some great tweaks in the comments. So if you’re seeing these on Day 0, they might be a bit smoother a few days later.

Post a Comment

Your email address will not be published. Required fields are marked.
If you would like a profile picture, simply register at Gravatar, which works here on DCR and across the web.

You can click here to Subscribe without commenting

Add a picture



  1. Sam

    This is weird that nobody did a simple app to expose the BT/ANT, it should be pretty straightforward to re-broadcast if you can root your android device

    • Yeah, surprised me too. I can’t imagine it’s all that difficult for the right developer. I suppose there’s been limited cross-over between someone who might be that developer, and someone who might have a Peloton bike (or perhaps, has a Peloton bike but hasn’t been granted spousal authority to dork with it!).

    • Erik Krause

      DC- Use your superpowers to lobby Peloton to broadcast power and cadence. Or do a contest with a great giveaway to get somebody to write the app for us!

    • Andrew

      This is exactly the sort of geekery that piques my interest. I’d humbly submit I might be ‘that developer’, but alas I lack a Peleton bike.
      If you’re looking to advance what is known about the internals on the bike and don’t mind side-loading a debug APK every now and then perhaps I could help out here?
      First thing I wonder about is if a background service was transmitting the internal power/cadence data over BT/ANT+, would TrainerRoad/Zwift be able to use the same BT/ANT+ hardware to receive as well. It _should_ work, but a definite question there.

    • Hi Andrew-

      I’ll hit you up via e-mail.


  2. Next up….. Grand Theft Auto: Peloton!

    • Running at a blistering 0.5FPS!

    • gondezee

      How bout connecting via steamlink or some other screen sharing app from a computer with some umph?

    • Yeah, you could do that. I think to me though, the goal of using the Peloton bike for this sorta thing is the ‘Just works, all in one device’ type objective. Essentially, the same thing that’s made Peloton so successful as a hardware platform is the hardware ecosystem and the fact that it *ALWAYS WORKS*.

  3. Eric

    I guess here is the question. If someone had a Peloton that was gathering dust because they didn’t want to pay the monthly $$$, could they still do this? Zwift is less than half the price.

    • Yes.

      I stumbled upon this realization when I first bought the used bike, because I had to get it reactivated and they were closed that night. So in that scenario you can still get to all the same spots as outlined here – no issues. Again though, you’ll need power meter pedals on it.

    • Dan

      Ray, do you remember how you did this? With a lapsed subscription, the bike boots into log in screen which doesn’t have the three dots to open the about menu. I have zwift installed and working, but can no longer access the list of apps to open.


  4. Tommy

    Instead of side loading zwift and TR, could you not side load the play store?

  5. I’ve really been looking for a way to do this, thanks! Do you think I could do the same with the Tread? Currently use the Garmin footpod for speed wonder if that would register with the Tread.

    • MAGNUS

      I was wondering the same thing… I no longer have the bike but do have the Tread. I’ve run to YouTube videos but would quite enjoy having Zwift up on the screen.

    • My bet is that it would work on Tread – and frankly, better because the barrier to entry for a BLE/ANT+ footpod is like $29 or something for a ZwiftPod. But, I lack a tread (and I’m pretty darn sure I wouldn’t be able to fit that on an airplane…).

      Would love to hear if someone gives it a whirl!

    • Peter Hirsh

      Got me thinking. I have a True 900 treadmill with 16” Touchscreen Console. It connects to Zwift App via Bluetooth and also Bluetooth connectivity to headphones etc. also has a web browser, tv tuner and USB input. Would love to be able to figure out how to sideload Zwift on the treadmill screen instead of covering treadmill with my iPad. Think it would work?

    • MAGNUS

      I will give it a try if someone can share instructions on how to side load via Mac… I dont have a windows machine.

    • Haha but what I would pay to see you get the Tread on an airplane! The bike was so much fun to watch. I am going to give the Tread a try and I’ll report back.

    • Leonardo Rinaldi

      I was wondering the same thing. I am happy to give it a go but (un)fortunately no Windows machine in the house

  6. Ryan

    In terms of why you need to give it permission to your location, is Android counts BLE sensors as part of the location permission. IIRC because you can use them to triangulate your position without using GPS so they chuck them under there.

  7. Nicholas

    I’m interested in the opposite. I’d like to see if it is possible to side/download the Peloton app and see how it runs on something besides the Peloton bike. They obviously have an Android but that isn’t this the same app. It might be fun to see if something else can feed the information into the app besides the Peloton bike.

  8. In your article, you mention the Powercal which I used a few years ago…
    Now, the application HR2VP does the same exept that you can customize parameters such as FTP, resting HR and max HR. It computes power from any HR monitor and broadcasts over ANT+ or BLE.
    This may a good option as well for people who don’t have a power meter!

  9. Ryan

    Re: The Sufferfest, not an option yet as there is no Android version (unless there is a beta version I do not have access to). Any ETA on that?

  10. David Horn

    Zwift and TrainerRoad need location permissions because one of the main uses of BTLE is location tracking.

    Also, when typing the adb commands, you don’t need to type “adb.exe”, just “adb” will do.

    What’s the performance like on Zwift?

    • Yeah, certain habits die hard…

      As for performance, huh…I guess I never added the video. It’s dismal. FPS isn’t unusable, but graphics quality is non-ideal. Functional, optimal no.

      That said, would be interesting if a Gen3 Peloton display is better. Haven’t dug into those specs.

  11. Alberto

    So my question:

    Can I load the Zwift apk on my (not supported) android phone?

  12. Paul E

    So, for this to work you need:

    Zwift or TR subscription
    Power pedals

    In the absence of power pedals, can you use a speed sensor on the wheel and a cadence sensor on the crank arm?

    • Correct.

      No, the problem with the speed/cadence sensor is that the resistance knob isn’t known. Without that, there’s no way to know power. So if you loosen the number it’s literally 10w resistance. Whereas tighten it and it can be like 1,000w.

  13. Domen

    I was wondering what about going in slightly different direction. Running Zwift on other standalone device and meanhwile use Peloton screen for zwift companion app – it’s big touchscreen right before you, so easy to use while suffering.

    • That’d be totally doable and easy. Interesting idea. Basically you can just follow all the steps here, except grab the Zwift Companion app APK instead.

    • Jeremy

      Please update if you get the companion app up and running and zwift running on another device. I have zwift going to my big screen right now via PC. It would be cool to use the peloton screen as the companion app.

  14. Dan

    Need help! Really easy step by step instructions, but when I go to create the new folder (com.zwift.zwiftgame), the android folder doesn’t exist under Internal shared folders. I tried unhiding folders in case it was hidden, but that didn’t help. I tried to create a new folder called Android, but that wouldn’t take because I assume the folder already exists but I can’t access.

    Am I missing something?

    • Hmm, that’s odd. Can you create the folder from the Peloton bike instead?

      If it’s not allowing it via Windows, you could use an Android app called ES Explorer, which allows creation of folder and such.

    • Dan

      That did the trick…. thanks! Tried to install kinomap as well but it crashes when the app tries to turn on gps.

    • Dan, in fact, the Android system requires a gps sensor to activate the Bluetooth Smart connectivity. There is no reason but this is an operating system requirement, not related to the App.

    • Dan

      @kinomap – Thanks for the response. Was hoping to get your app working on the peloton bike. It seems like a great fit, and heck I’m paying for the subscription, might as well use it! For whatever reason, going through trainer setup, a popup appears that the app is requesting GPS, when you touch OK, the app immediately crashes. Too bad!

    • In fact, we should able to skip it as you don’t need any Bluetooth connectivity so no need for the GPS requirement from Android. We have found a way to proceed but the App is not yet the one you got on the play store. If you are interested to have a try using an apk from you, would you mind to ping our support desk and continue the discussion on it. Support@kinomap.com. Great opportunity for you to get a beta tester but feel free.

    • DAN

      Got it working by just skipping the gps request.

  15. Michael Capozza

    THANK YOU for this!
    I tried this and it works like a charm .. for Trainer Road.
    For Zwift, i was able get as far as uploading the .obb file to the Peloton bike, but there was no Android folder within the Internal Shared Storage..
    Not knowing what else to do, I created an Android folder with the same path for the needed file and uploaded the .obb file into the folder you specified.
    adb loaded the necessary files with “success”
    I could get the zwift icon to appear in Apps, but it would not load properly – stating file missing..
    Any ideas?

    • Hmm, that’s odd. Your photo or such didn’t come through. Any chance you can shoot it to me via e-mail (just my first name at domain name).

    • Michael Capozza

      It was just a screenshot (similar to the poster above me) of the Peloton directory which does not have an Android folder in Internal Shared Storage.
      I was able to create such a folder (is it empty by default?) but had the error message I noted.. “File missing” even though the program weighs in at >600 MB in Peloton apps..

  16. Tom

    Wow, this is going to be interesting. Have the feeling that many Peloton users are going through the same transition: enjoy peloton classes the first year, get bored the second, start cycling outdoors more, look at better training methods like Trainerroad, Zwift, Rouvy, etc. Have been running TR on iPhone with powerpedals on the Peloton for quite a while, and now even my wife prefers TR over Peloton classes.
    So with this hack (and no doubt more to follow) it seems likely more Peloton users will start questioning the $40/mo subscription fee in light of alternatives. And that will make Peloton nervous, possibly adding security layers to their system.

    • Michael Capozza

      Thanks Tom,
      I’m actually the opposite. I’m a five time Ironman finisher and now part time triathlete. Just not very good at programming! I’m just trying to find something to do without spending as much time on the road since I’ve watched a bunch of my friends deal with injuries in bike vs car collisions in San Diego.
      So transitioning from using trainer road, zwift, & sufferfest to figuring out how to do workouts on Peloton since it’s quieter for my 5 AM bike sessions than my Kickr.
      You are correct that I’ve run through all the one hour and longer workouts in short order there.

  17. Mark R.

    Peloton *could* put in the extra security layers to prevent folk doing this or they could conceivably ship with all 3 options downloaded/enabled and supported. That, I think, would be the smartest route for them to take.

    I’ll wager they’d sell more hardware (at a premium for enabling the 3 apps) and more subscriptions as a result, as Peloton bikes could be re-configured by multiple users in the home more easily than real bikes on turbos.


    • Yeah, preventing sideloading on Android would be incredibly challenging. They could do steps though to raise the bar of complexity/resilience. Right now the bar is pretty low.

      I’m just hoping someone comes up with a creative way to get that power data out via ANT+/BLE. If so, the world is our oyster!

  18. Kaveh

    Not sure if this is a stupid question/thought but was wondering – if you had a TV with an Apple TV + Zwift app in front of your Peloton bike, would installing power pedals get you most (or all?) of the way there to use the Peloton bike on Zwift? (e.g., something like the Favero Assiomas would transmit power + cadence via BLE to the Apple TV).

    Would that let you use the Peloton bike for Zwift without having to worry about graphical issues and sideloading, etc.?

    • Tom

      Yes, that would work and is what many people have been doing. The simplest form of that is to use a phone or tablet; pc or Apple TV with additional monitor works as well. But requires extra gear and makes the setup ‘messy’. In my case the Peloton was a more digestible option for my spouse than to have a smart trainer, bike, additional tv, etc in the house. And the process Ray described took me a lot less time and hassle than adding a Bluetooth/Ant dongle to an old PC, mounting an additional screen in a location that is actually visible and getting the setup up and running.

    • Correct. I’ve done that too, and that also works just fine.

      The main goal of this entire thing is a self-contained package though of just the bike.

  19. Courtlend Little

    DCR, in what you saw or seen I don’t suppose you saw a way to make the Peloton read power from power pedals? As you note their power readings can have a really broad range. I’d love to be able to this zwift hack but for standard Peloton classes get more accurate power readings via my pedals. I’d they support Ant you’d think it would be a simple matter to offer power support from Ant versus their Dyno.

  20. MrWenzel

    I have a peloton and have enjoyed it, getting a trainer would not be an option for me. Having to swap out bikes for 2 people everyday and the space they would take up. Was planning on getting a Stages Power meter for my bike, now I need pedals we both use SPD. Thanks for helping me spend more money. In fall this looks like it could be a fun option.

  21. Jeff

    Do we know if the Power/Cadence information from the Peloton bike is transmitted to the Android Screen via BT/ANT or hardwire connection? If hardwired can you make a pass-though raspberry device to read/rebroadcast the signal?

  22. Shawn

    Thanks for these instructions! Do you happen to have a solution with ABD not showing connected devices? My micro-usb cable works fine when using it to install Google Play APKs on my Fire Tablet. But connecting it to my Peloton Bike gets the “USB device not recognized and that the Last USB device has malfunctioned” error on my Windows 10 PC and shows no devices listed. USB Debugging is enabled on the bike. I also tried on my Mac. Is this Fire Tablet cable the issue or something else?


    Ray, if you have a lot of time on your hands you can also use your covid lockdown time to make a device that lets Zwift control any spin bike, including the Peloton Bike as well as adding shifters. All for <$50 worth of parts.

    It's a Esp32, LM2596, A4988, and a nema 17 stepper motor.

    It really works well even though my code is functional spaghetti.


      It velcro straps to the head tube and then I’ve made a bunch of adapters for the various size resistance knobs that different bikes have.

    • Woah – that’s crazy cool. How would it know the power though? Or do you basically establish a baseline?


      Just the change from baseline (power on)

      Zwift sends out incline in a percent gradient and the device adjusts the knob a configurable amount for each .01% gradient change. The “shifting” essentially does the same thing – rotates the knob a preset amount in either direction depending on if you press the button strapped to the left handlebar (downshift) or right one (upshift).

      I haven’t done anything yet with ERG mode but it should be possible. The trick here is that it would have to listen to both Zwift and the power meter at the same time.

    • That’s super cool.

      Yeah, I’d love sorta the middle ground – just to tell me what the power is. What’s frustrating is that I know that info would be so trivial easy for Peloton to broadcast. Sigh.


      I might be able to do it but I don’t have direct access to a Peloton. Not one that anyone would risk letting me take apart at least.

      A simple memory scanning tool like “Cheat Engine” for Android might get you pointed in the right direction. If you’re lucky they are decoding the power in a background process that’s running all the time weather the main Peloton app is or not.

      Then it should be possible to write another app that hooks to the memory address and exposes it via whatever method you want.

    • Tom

      That is sooo cool! Had been thinking in that direction but never the courage to really explore it. There are a large number of Pelotons in the the field (1M?) and there might be an after-market for this… I would order one!

    • Darshan Vaidya

      Where could I learn how to do this?

    • Jeremy

      If this can be done for <$50, you should sell a kit to add it to a Peloton. I would definitely buy it. Especially if you got ERG mode for workouts on zwift to work.

    • Jose

      Yes, I would buy it too!
      On the other hand, if this is something you plan to open source, I’ll be happy to contribute

    • Darshan

      I would also love to buy this!

  24. spinnekopje

    On debian based systems you can apt-get install android-tools-adb, a little bit easier compared to windows.
    If you don’t trust other sources to download your apk files from, use another device to download the apps from the play store, using adb you can retrieve them from that device. An howto is easy to find online.

  25. Dave

    Many thanks for the writing up the steps to install Zwift on a Peloton bike.

    I use SPD pedals on my outdoor bikes and Peloton. There’s doesn’t appear to be SPD power pedals on the market. Does the setup also work with power meter crank arms?

    • It would, but there’s no power crank arms that are compatible with a Peloton bike, because you can’t remove the Peloton crank set. There may be some odd left-sided crank arm you could stick on there, but I’m not aware of any of the major power meter crank arm companies having anything compatible.

      More on swapping out that crank arm: link to reddit.com

    • Jeremy

      I am actually going to attempt this as soon as my Peloton arrives next week. From what I have found, Peloton uses an ISIS drive bottom bracket. This is the same drive system that is used in many spin bikes. It is the same drive that is used in many models of Stages spin bikes that have left sided crank arm power meters. I have a Stages Left sided crank arm power meter. The model is a Stages Cycling 971-0101 SPM2, it is bluetooth and ANT+. I plan to pull the left crank and put the power meter in its place. The main thing that I am worried about is clearance as the inside of the crank arm houses all the electronics and it isn’t small. I have seen pictures and measurements of the clearance and it should work. If it works, this ends up being a much cheaper option than power pedals. The crank arm can be found on ebay for around $100-200. I purchased one a year ago for $50. I will update in a week when my bike arrives.

  26. Lindsay R

    You’ve got a typo in your example here 🙂
    Missing a z

  27. Al

    Has peloton already blocked this. I’ve tried to install zwift based on these directions several times with no success. I’ve tried several cables, since most i had returned an error. I found only 1 works from only 1 usb port on my computer, seriously only 1 port will connect to the peloton, the others return an error. My problem is it wont transfer the obb file, it launches the progress window, but closes after a second or two. I also use the command prompt to check connections and it usually returns offline. I’ve tried with a laptop but it wont connect at all, I though it might be the cable but I can open the files on the peloton just cant transfer, plus the connection goes offline after a few seconds in the command line.

    • Jose

      I was experiencing the same issue. I ended up copying the obb file directly to Internal Shared Storage, once there I moved the file folder by folder (Android > obb > com.zwift.zwiftgame). Hope this helps

    • Haris Hussain

      A lot of hiccups along the way but I finally got it! Thank you so much! I even had to do a factory reset at one point. Guys, read the comments for issues with the Android folder. Best of luck!

    • Al

      OK to follow up with the install, I finally got it done. It turned out that all the cables I had tried (7 of them) had some sort of issue. Only 2 cables actually made a connection to the peloton, but no matte what I did it still would not completely transfer the file. I bought an additional cable which performed the same way. I was about to give up when I decided to try one more 1ft long cable that I had from my garmin. It wasn’t easy I had to move my computer, to almost the same height as the pelton, but once connected the files went right over. I spent plenty of time to get this to work ,and glad I did, but wow the graphics are really poor lol.

    • Doug

      Hi Jose, for some reason I don’t see the Andriod folder on the Peloton Internal Shared Storage. I also tried to unhide any files/folders and still have no luck with it. Not sure why I am experiencing this!

    • Jose

      Yeah that was also happening to me, I just created the folders manually

    • Doug

      Hi Jose,

      I was able to create the folder and copy the obb file in the folder. When I got to the install dos command step: adb.exe install .\Zwift\com.zwift.zwiftgame.apk, for some reason I don’t get any response showing success or fail. The install seems to be stuck.

      Have anyone experienced this before?

    • Jose

      Maybe it is your cable, have you tried with other cables? Try getting a good quality cable that supports data transfer

    • Jose

      I ran into the “not being able to copy the obb file” issue this morning when updating Zwift. Restarting the Peloton fixed my issue

  28. Doug

    hey guys, I am having some difficulty installing the Zwift step. I did the initial step correctly and was able to get my laptop successfully connected to my Peloton bike.

    For some reason I dont see the Android folder on the Peloton internal storge drive. Did I mess something up?

    Thanks for helping out!

  29. Erik

    Awesome- Can’t wait to see how it works. Please give us an update when you get it set up.

  30. Dan

    Any idea how to get to the to the “About” screen when you don’t have an active subscription? The three dots don’t appear on the “enter your log in information screen.”

    I have zwift installed and have been using it successfully, but now that the peloton subscription lapsed, can’t get back into the apps.


    • Hmm, weird. When I first bought the bike (in January, used) it was in a clean/reset state. I had a generic Peloton account that I created at a Peloton store or online or something, but it wasn’t linked to a subscription. So I was able to sign-in with that instead.

      When I did that, the only thing accessible to me was free-ride, until I subscribed. This Reddit thread seems to indicate the same: link to reddit.com

      I wonder if something changed in the last 6 months? Out of curiosity, if you create an empty/shell account – what happens when trying to login as that?

    • Dan

      Thanks for the response… it asks to log in with the account that purchased the bike and the activation code. I can do the three classes or free ride without the subscription, but no screen has the three dots to tap on to get to the about menu…

      I reactivated the account to get access, and installed a different android launcher so now, when I tap the Peloton “P” at the bottom of the screen, it goes to an app list instead of the peloton app, We’ll see if that provides access when the subscription expires next month.

  31. Dan

    A tip…. If you also install a launcher (I used NOVA Launcher) and set it as default, the bike boots into a screen that allows you to select which app you want to use. If you select peloton it opens the regular peloton app. Tapping the peloton P brings you back to the app selection screen.

  32. Thanks for sharing this wonderful and knowledgeable content with us