Health
Biological Capacity score: how much energy your body actually has today.
Your calendar says you have six meetings today. But your body slept five hours and your HRV is in the basement. Should you power through or reschedule?
Lifestack answers this with a single number: Biological Capacity. A score from 0 to 100 that tells you how much energy your body actually has right now, personalized to your baseline. Not a generic population average. Your normal.
Biological Capacity
How to read it
50 means you are at your personal baseline. Above 50 means your body has more capacity than usual. Below 50 means you are running a deficit. The score adapts to your physiology over 30 days.
The score combines three signals from your Oura Ring, weighted by how responsive each one is to real-time changes:
| Signal | Weight | Why this weight |
|---|---|---|
| HRV Balance | 40% | Most responsive real-time indicator of your nervous system state |
| Sleep Score | 30% | Sleep quality directly determines next-day capacity |
| Readiness Score | 30% | Captures temperature, recovery, and activity balance |
Capacity warnings
When Biological Capacity drops to concerning levels, a warning appears on your Health dashboard card:
| Level | Threshold | What it means |
|---|---|---|
| Critical | Below 15 | Very low capacity. Consider clearing your schedule and prioritizing rest. |
| Low | 15 to 29 | Energy reserves running low. Be selective about commitments today. |
| Depleted | 30 to 39 | Below your usual range. Take note and plan accordingly. |
These warnings reflect your body's state regardless of your schedule. When combined with a high Calendar Load, they trigger collision detection.
Confidence levels
| Condition | Confidence |
|---|---|
| All 3 metrics + 14 or more days of baseline data | High |
| All 3 metrics with 7 to 13 days, or 2 metrics available | Medium |
| Only 1 metric, or fewer than 7 days of data | Low |
The confidence level appears alongside the score on your dashboard.
What Oura data powers this
Lifestack syncs nine data types from your Oura Ring every hour:
| Data type | What is synced |
|---|---|
| Sleep | Score, total hours, stages (deep, REM, light, awake), efficiency, contributors |
| Readiness | Score, temperature deviation, HRV balance, recovery index, contributors |
| Activity | Score, steps, calories, activity time breakdown |
| Heart Rate | Daily min/max/avg, resting heart rate, intraday samples (30-min averages for the Energy Ring) |
| Sleep Time | Optimal bedtime recommendations and sleep window status |
| Sessions | Meditation, breathing, nap, and rest sessions with mood and biometric data |
| Tags | Personal tags and notes from the Oura app |
| SpO2 | Blood oxygen average and breathing disturbance index |
| Daily Stress | Time in high stress vs recovery, daily summary |
On first connection, 30 days of historical data are backfilled. After that, each sync fetches the last 24 hours to catch delayed Oura processing. Failed syncs retry with exponential backoff.
See the Oura Metrics Reference for a complete breakdown of every field.
Connecting your Oura Ring
- Go to Settings > Integrations
- Find Oura Ring and click Connect
- Authorize Lifestack through Oura's OAuth flow
- Your first sync begins immediately
Data Explorer
Browse your full Oura history at the Health Data page. The explorer provides tabbed views across all nine data types, pagination for navigating history, and CSV/JSON export for your own analysis.
Privacy
- Only the nine data types listed above are accessed via Oura's official API
- OAuth tokens are encrypted at rest using AES-256-GCM
- Health data is stored in your personal database partition and never shared
- Disconnect and delete all synced data from Settings at any time
See Privacy & Security for complete details.