Privacy Policy

Last updated: August 31, 2026

Spinbike ("the App") is a cycling activity tracker that connects to Bluetooth sensors to record your rides. Your privacy matters to us. This policy explains what data the App accesses and how it is handled.

Data We Collect

The App collects the following data locally on your device only:

Data Storage

Ride history, exports, settings, and Bluetooth device information are stored on your device using the browser's local storage and IndexedDB. The App does not send your ride history to any server.

Data Sharing

The App does not share your data with anyone by default. When you use the export feature (TCX, FIT, CSV formats), files are saved to your device. You control what happens with exported files.

Optional Live Room

Opening Live Room to watch does not publish your name or sensor values. If you explicitly choose Share my ride, the App sends your chosen live name and only the current sensor values you enabled: power, heart rate, and/or cadence. These values are relayed about once per second to people in the room. Your completed ride, history, profile, and exports are not uploaded.

Emoji cheers contain the selected emoji kind, the rider they are sent to, and an optional sender name. Live values and individual cheers are short-lived room messages. The relay keeps only the latest rider snapshot while a rider is connected; a rider's own device may save aggregate cheer counts with that ride.

Bluetooth Permissions

The App uses Bluetooth Low Energy to connect to cycling sensors (power meters, heart rate monitors, cadence sensors). Bluetooth is only activated when you initiate a sensor connection. The App does not scan for or interact with Bluetooth devices without your action.

Usage Analytics

The App uses Vercel Web Analytics, a cookieless, aggregate analytics service provided by our hosting provider, to count page views and visitors. Nothing is stored on or read from your device for analytics — no cookies, no identifiers. Visitor counts are derived from a salted hash that resets daily, so the App cannot recognize you across days. Your rides, sensor readings, settings, and any other personal data are never transmitted for analytics. Optional Live Room traffic is handled separately as described above.

Third-Party Services

Apart from the hosting provider's analytics described above, the App does not integrate any third-party advertising, crash reporting, or tracking services. Optional Live Room messages are processed by a Cloudflare Worker and Durable Object solely to deliver the room to connected participants.

Children's Privacy

The App does not knowingly collect data from children under 13. The App does not collect personal information as an account. Optional Live Room sharing is described above.

Data Deletion

You can delete all App data at any time by clearing the App's data in your device settings, or by uninstalling the App. Because ride history remains local, uninstalling removes that local data permanently. Disconnecting from Live Room removes the rider's current relay snapshot; individual live messages are not retained as ride history by the relay.

Changes to This Policy

We may update this Privacy Policy from time to time. Changes will be reflected in the "Last updated" date above. Continued use of the App after changes constitutes acceptance of the updated policy.

Contact

Spinbike is operated by Christian Olsson, who is the data controller for the limited processing described above. If you have questions about this Privacy Policy, or want to exercise a data protection right, email privacy@spinbike.se.