Zwift Play: 14 buttons and haptic shifts
Zwift Play is a pair of controllers that wrap around the drops: seven buttons on each side, a rechargeable battery, and a vibration you can feel when a gear lands. Nothing about them has to be unlocked or refreshed.
Last updated:
The hardware
- Buttons
- 14 — seven on each controller
- Actions in BikeControl
- 42
- Power
- Rechargeable, USB-C
- Mounting
- Drop bar only
- Typical price
- Around 30 USD second-hand; no longer sold new
Fourteen buttons, forty-two actions
Seven buttons a side, and BikeControl reads a single, a double and a long press on each button as three separate actions — more assignable actions than any other controller in our hardware comparison apart from the Zwift Ride. That is enough that plenty of riders fit one side only and keep the other hand free: seven buttons already covers shifting, steering, the action bar and a couple of emotes. The shoulder buttons are the pick of them.
Nothing to unlock, and haptics that tell you it worked
The Play controllers carry none of the Click v2’s firmware restrictions: no encrypted handshake, no 24-hour timer, nothing to refresh before a ride. They also vibrate when an action registers, so a shift confirms itself without you looking at the screen — which is the one thing a virtual drivetrain otherwise never gives you.
Rechargeable, but drop-bar only
They charge over USB-C rather than eating coin cells, which is the right trade for something you use several times a week. The mounting is the catch: they clamp to a drop bar and nowhere else, and the shape is not for everyone — they can sit where your hands want to be on the drops. If your indoor bike has flat bars or aero extensions, look at a controller that straps anywhere instead.
What to know about the Zwift Play
- Native support
- Zwift and Biketerra read the Play natively. MyWhoosh, Rouvy, and TrainingPeaks Virtual need BikeControl in between — and so does any other trainer app.
- Unlocking
- Nothing to unlock: the Zwift Play keeps sending button presses for as long as it is paired with BikeControl.
- How it connects
- The Zwift Play pairs with BikeControl over Bluetooth. BikeControl then reaches your trainer app over Network, Bluetooth, or Accessibility, depending on which app it is — so BikeControl can run on the same device as the app or on a phone beside it.
- Platforms
- BikeControl runs on iOS, iPadOS, Android, Windows and macOS. Apple TV cannot run BikeControl itself, but an app that accepts the Network connection can be driven from an iPhone, iPad, Mac or PC.
- Free and Pro
- BikeControl is free to try for 5 days (7 on Windows); after that the free version allows 15 controller actions a day until you buy Base, a one-time purchase of about 4.99 $. Pro (about 2.50 $/month) adds three actions per button, use on all your platforms, and BikeControl's own virtual shifting without the 20-minute daily limit.
The Zwift Play in each trainer app
- Zwift Play with Zwift (also works without BikeControl)
- Zwift Play with MyWhoosh
- Zwift Play with Rouvy
- Zwift Play with Biketerra (also works without BikeControl)
- Zwift Play with TrainingPeaks
- Zwift Play with any other trainer app
How to use the Zwift Play in any trainer app
- Install BikeControl. Install BikeControl on iOS, Android, Windows or macOS — on the device that runs your trainer app, or on a phone or tablet next to it.
- Pair the Zwift Play. Wake the Play controllers and pair them with BikeControl over Bluetooth — both sides, or just the one you ride with.
- Pick your trainer app. Choose your trainer app in BikeControl. Each one arrives with a default mapping for its own actions, and BikeControl connects over Network, Bluetooth or Accessibility depending on what that app accepts.
- Map the buttons. Change any assignment you like in BikeControl's keymap editor. BikeControl reads a single, a double and a long press on each button as three separate actions, so the Zwift Play's 14 buttons cover more than shifting.
- Ride. Start a ride. The Zwift Play's buttons now trigger the actions you mapped, in whichever trainer app you are using.
Frequently asked questions
Can I use the Zwift Play with trainer apps other than Zwift?
Yes. Zwift and Biketerra read the Play natively. MyWhoosh, Rouvy, and TrainingPeaks Virtual need BikeControl in between — and so does any other trainer app. BikeControl pairs with the Zwift Play over Bluetooth and hands each button press to the app as an action it already understands, so no app has to add support for the hardware.
How many buttons does the Zwift Play have, and can I remap them?
14 buttons, seven on each controller. Every one of them is remappable in BikeControl, and a single, a double and a long press count as separate actions — 42 assignments in total. Shifting is usually two of them; the rest go to steering, the on-screen UI, emotes or whatever your app exposes.
Does the Zwift Play need any kind of unlock or daily refresh?
No. The Zwift Play has no encrypted handshake to refresh, so it keeps sending button presses for as long as it is paired. That is the practical difference between it and the Zwift Click v2.
Which platforms does this work on?
BikeControl runs on iOS, iPadOS, Android, Windows and macOS, and reads the Zwift Play on all of them. It can run on the same device as your trainer app or on a phone next to it, depending on how that app accepts input.
Do I need to pay to use the Zwift Play with another app?
BikeControl is free to try for 5 days (7 on Windows); after that the free version allows 15 controller actions a day until you buy Base, a one-time purchase of about 4.99 $. Pro (about 2.50 $/month) adds three actions per button, use on all your platforms, and BikeControl's own virtual shifting without the 20-minute daily limit.
Comparing controllers, or looking for a different one? See all supported controllers and apps, the Virtual Shifting hub, or download BikeControl — free to try on iOS, Android, Windows, and macOS.