OpenWhoop pairs your WHOOP over Bluetooth and computes recovery, strain, sleep and HRV right in your browser. Nothing leaves your device.
Pair directly over Bluetooth. No firmware mods, no proxies, no official account.
The complete reverse-engineered protocol: live streaming, flash-buffer backfill, and every metric.
Reads live heart rate and RR intervals through the standard Bluetooth heart-rate service — enough for HRV, strain and recovery.
Every number is computed transparently from raw sensor data, on your device.
Textbook RMSSD with Malik artifact filtering, scored against your own 14-day baseline. The RMSSD number WHOOP shows only to subscribers — here it's just yours.
Pairs the strap straight from the browser. No companion app, no bridge.
Everything lives in your browser's IndexedDB. Export JSON anytime.
Cardiovascular load across five HR zones, calorie estimates, and an Acute:Chronic Workload Ratio that flags when you're ramping too fast or detraining.
Train without your phone. Walk back in range and the strap's flash backfills automatically.
Ask why recovery's low, grounded in today's real numbers.
Log alcohol, stress, caffeine. Cohen's d shows what really moves your recovery.
Add to home screen. Works offline, with optional push reminders.
No account, no install. Open the dashboard, pair your strap, done.
Web Bluetooth works out of the box in any Chromium browser on Mac, Windows, or Linux. Safari and Firefox don't support it.
1. Click Launch dashboard.
2. Tap your band to wake it (it won't show while charging).
3. Click Connect Whoop and pick your strap.
It pairs, drains stored data, and starts streaming — all saved in your browser.
Safari can't access Bluetooth, so use Bluefy, a free Web-Bluetooth browser.
1. Install Bluefy (free).
2. Open openwhoop.vatsa.online in Bluefy.
3. Launch the dashboard, tap Connect Whoop, allow Bluetooth.
OpenWhoop is a PWA — add it to your home screen or dock and launch it like a native app, offline-capable.
iPhone: Share → Add to Home Screen.
Desktop Chrome/Edge: install icon in the address bar → Install OpenWhoop.
You need a WHOOP 4.0 or 5.0 you own, and a Web-Bluetooth browser. Self-hosting? See the README.
Every metric, and exactly how it's computed from the raw signal.
| Metric | Source | How it's computed |
|---|---|---|
| Heart rate | live BLE / 0x2A37 | Direct decode |
| RR interval | live BLE / 0x2A37 | Direct decode (1/1024 s → ms) |
| SpO₂ | 4.0 packet byte 5 | Direct decode |
| Skin temperature | 4.0 packet byte 6 | byte − 25 °C offset |
| HRV (RMSSD) | RR intervals, 02:00–06:00 | √(mean of squared successive diffs), Malik filter |
| Recovery | today's RMSSD vs 14-day baseline | z-score → 0–100 |
| Strain | HR through the day | Borg-style load 21·(1 − e^(−load/100)) |
| Resting HR | daily HR distribution | 5th-percentile order statistic |
WHOOP's own algorithms are closed-source; these reproduce the spirit with textbook formulas. Not clinically validated. Not medical advice.
Lapsed subscription? Don't let the hardware sit in a drawer. Pair it and get your numbers back.
Launch dashboard