PulseSheets syncs your wearable's data into a Google Sheet in your own Drive — filled in, formatted, always up to date. Connect Oura Ring, WHOOP, Withings or Dexcom once, and your full history lands in a clean sheet: one tab per metric, one row per day, revisions synced automatically. The sheet is yours forever — it stays even if you cancel. And it's built so we can't keep your health data: it flows straight from your device's API into your sheet; our database holds only encrypted tokens.
No reviews yetBe the first to leave a review for PulseSheets
Maker
📌
Hey Product Hunt 👋
I built PulseSheets because I wanted my own health data in a place I control — not locked inside an app, not stuck behind a manual export I'd forget to run.
So it does one thing well: connect your wearable, and a formatted Google Sheet in your Drive fills itself in and stays current. Oura Ring, WHOOP, Withings and Dexcom today; Garmin, Apple watch, Samsung devices and Fitbit next.
Two principles I refuse to break:
We never store your health data. It goes device API → your sheet. Our DB holds only encrypted tokens.
You own the output. It's a normal Google Sheet — open it in Excel, export CSV, keep it forever, cancel anytime.
Free plan gives you 90 days of history to try it. Would love your feedback — I'm here all day.
Report
How often does it refresh the data in the sheet, and is there a delay compared to what shows up in the Oura app?
Report
Maker
@nurtenztelwxgi Good question! On Pro it's near real-time — Oura fires us a webhook the moment their servers finish processing your night, and the row lands in your sheet within a few seconds. So the sheet and the Oura app are basically looking at the same thing at the same time; both read from Oura's cloud.
On the free plan you sync manually, once a day.
One thing worth knowing: Oura quietly revises past days sometimes (a sleep score can change hours after you first see it). We handle that — every row is keyed on the date, and a daily job re-checks recent days and updates the row in place instead of appending a duplicate. So your sheet tracks revisions too, not just new nights.
If you ever do see a gap between the app and the sheet, it's almost always the ring not having synced to Oura's cloud yet — once it has, we're seconds behind.
Report
Love that the data flows straight from Oura to a sheet you own instead of sitting on yet another company's servers. The zero-storage approach is a really thoughtful bit of craft.
Hey Product Hunt 👋
I built PulseSheets because I wanted my own health data in a place I control — not locked inside an app, not stuck behind a manual export I'd forget to run.
So it does one thing well: connect your wearable, and a formatted Google Sheet in your Drive fills itself in and stays current. Oura Ring, WHOOP, Withings and Dexcom today; Garmin, Apple watch, Samsung devices and Fitbit next.
Two principles I refuse to break:
We never store your health data. It goes device API → your sheet. Our DB holds only encrypted tokens.
You own the output. It's a normal Google Sheet — open it in Excel, export CSV, keep it forever, cancel anytime.
Free plan gives you 90 days of history to try it. Would love your feedback — I'm here all day.
How often does it refresh the data in the sheet, and is there a delay compared to what shows up in the Oura app?
@nurtenztelwxgi Good question! On Pro it's near real-time — Oura fires us a webhook the moment their servers finish processing your night, and the row lands in your sheet within a few seconds. So the sheet and the Oura app are basically looking at the same thing at the same time; both read from Oura's cloud.
On the free plan you sync manually, once a day.
One thing worth knowing: Oura quietly revises past days sometimes (a sleep score can change hours after you first see it). We handle that — every row is keyed on the date, and a daily job re-checks recent days and updates the row in place instead of appending a duplicate. So your sheet tracks revisions too, not just new nights.
If you ever do see a gap between the app and the sheet, it's almost always the ring not having synced to Oura's cloud yet — once it has, we're seconds behind.
Love that the data flows straight from Oura to a sheet you own instead of sitting on yet another company's servers. The zero-storage approach is a really thoughtful bit of craft.