Heart Rate Variability · Apple Watch

Parth's HRV Dashboard

587 readings across three years. What heart rate variability reveals about stress, location, and recovery.

587 readings
Feb 2023 – Mar 2026
41.5 ms lifetime avg
Lifetime mean
41.5ms
Median: 37.2 ms
Peak year
2025
46.8 ms avg
Last 90 days
38.4ms
Below lifetime avg
Current month
28.7ms
5-month low
Resting HR
62.7bpm
Best: 60.4 in 2025
Primer

Reading This Dashboard

What is HRV?
The time gap between heartbeats varies — even at rest. HRV measures that variation. More variation = a relaxed, adaptable nervous system. Less = the body under strain. Think of it as a daily readiness score from your autonomic nervous system.
How to read the numbers
60+ ms excellent · 40–60 good · 25–40 average · <25 stressed. Trends over weeks matter more than single days. Apple Watch measures SDNN via wrist sensor — it mixes overnight and Breathe session readings. Breathe sessions produce inflated spikes (100+ ms). The 14-day rolling average is the most reliable lens.
Timeline

Full Picture — Feb 2023 to Mar 2026

Daily HRV · 14-day rolling average · lifetime mean (41.5 ms)
Daily
14-day avg
Mean (41.5ms)
Annual

Year by Year

Mean HRV per year
Annual progression
2023
37.9
37.9 ms
2024
41.1
41.1 ms
2025
46.8 — peak
46.8 ms
2026*
37.6
37.6 ms

* 2026 is Jan–Mar only

YoY change
23→24: +8.5%
24→25: +13.9%
25→26: −19.6%*
Resting HR
2023: 63.5 bpm
2024: 63.9 bpm
2025: 60.4 bpm
2026: 64.3 bpm
Patterns

Seasonal & Weekly Rhythms

Average HRV by month (all years)
Summer peak: Jun–Aug average 43.0 ms vs 40.2 ms overall. Jul is the standout at 45.5 ms (72 readings). Apr–May look low partly because 2023's early struggle (Apr 2023: 29 ms, 23 readings) drags the all-years average down heavily.
Average HRV by day of week
Weekend drop: Sat/Sun avg 38.9 ms vs 42.5 ms weekdays. Friday nights show up Saturday morning.
Summer vs Winter — by year

Summer = Jun–Aug, Winter = Dec–Feb. The seasonal gap is real and consistent.

Life

What Life Events Did to Your Heart

Apr 2023 — Birthday
Lowest birthday: 26.8 ms
All-time low (8.8 ms) also this month
May 12, 2023
Lost grandmother
Readings around this period: 14.9–27.3 ms
May 2023 was already a low period, but the readings in the days around this loss are among the lowest in the dataset. The body was already strained; this compounded it.
August 2023
Knee surgery
Surgery window: 44.0 ms — held above annual mean
Major surgery didn't crash HRV. Acute physical stress was handled.
Sep 2024 · Dec 2024
Proposal & Wedding
No watch data for either — the heart was busy elsewhere.
Dec 2024
Left job
What followed: best HRV ever recorded.
Jan–Feb 2025
Started own company
Jan: 50.2 ms · Feb: 53.7 ms — two best months ever
The strongest sustained reading in the dataset came right after the layoff, during the company launch. Purpose and ownership were good for the nervous system.
Oct 2025
Shut down company, moved to Bhubaneswar
Oct avg: 44.0 ms — above lifetime mean
Closing a company is stressful. But the body held. Acute transition, handled.
Nov 2025 → Mar 2026
Building phase · a lot in flux
44.9 → 40.8 → 42.1 → 35.9 → 28.7 ms
Five months of steady decline. Unlike acute shocks (surgery, closure) that held at 44 ms, this extended transition period is registering differently. The body seems to handle discrete events better than open-ended ones.
Birthday arc
+86.6% improvement from birthday 2023 to 2025. Clearest long-term growth signal.
Recent trend — Nov 2025 to Mar 2026
−36% in 5 months. This is not noise.
Resting heart rate by year

HRV and RHR move in opposite directions. 2025 = lowest RHR + highest HRV. 2026 = both reversed.

Streaks

When HRV Stayed Up — and When It Stayed Down

Not single-day spikes or dips — these are sustained periods where the body stayed in a distinct state for weeks.

Sustained highs — 14-day avg above 45 ms
1
Jun 28 – Sep 1, 2025 · 65 days · avg 50.5 ms · Bengaluru
The longest and strongest sustained high. Best 14-day window: Jul 6–20, avg 57.8 ms. Peak summer in Bengaluru — the body at absolute peak.
2
Jan 16 – Mar 1, 2025 · 44 days · avg 52.2 ms · Bengaluru
The golden stretch. 28 consecutive readings above 40 ms in Feb. Highest concentration of 50+ days in the dataset. Company launch energy, Bengaluru stability.
3
Mar 8 – Apr 10, 2024 · 33 days · avg 48.3 ms · Prayagraj
The first real breakout — and the only high period outside Bengaluru. 84% in Prayagraj. A preview of what 2025 would bring.
4
Apr 24 – May 6, 2025 · 12 days · avg 48.0 ms · Bengaluru
Short but strong. Birthday window + travel to Kozhikode and Hyderabad. The birthday reading itself: 52.0 ms.
Sustained lows — 14-day avg below 35 ms
1
Mar – Jun 2023 · ~14 weeks · avg 27–33 ms · Prayagraj (74%) + Bhubaneswar
The deepest trough. Apr 29 – May 28 averaged 22.9 ms — worst 30-day window ever. Loss of grandmother in May compounded it.
2
Nov 2023 – Feb 2024 · ~14 weeks · avg 32–35 ms · Prayagraj (59%) + travel
The long winter suppression. Multiple sub-35 stretches across 4 months. Bengaluru was only 17% of these days. The grind.
3
Feb – Mar 2026 · 5+ weeks (ongoing) · avg 31–33 ms · Bhubaneswar (77%)
Currently active. Two sub-35 stretches in 5 weeks. 7 consecutive readings below 30 ms in early Feb. Hasn't stabilised.
Location pattern: 3 of 4 high periods happened in Bengaluru. The exception — the Mar 2024 breakout — was in Prayagraj. All 3 major low periods were outside Bengaluru: Prayagraj (2023 struggles, winter 2023–24) and Bhubaneswar (current dip).
Recovery track record: Both previous lows recovered into the 2025 peak. The body has come back before.
Location

Your Heart in Three Cities

HRV matched against Google Maps location history. 587 readings, 679 matched to a city. Breathe sessions excluded from averages.

Bengaluru · 261 readings
43.7ms
Median: 43.7 ms
4% below 25
27% above 50
Wife, stability, familiar routines
Prayagraj · 192 readings
37.2ms
Median: 35.4 ms
15% below 25
14% above 50
Hometown, parents
Bhubaneswar · 118 readings
37.5ms
Median: 37.8 ms
17% below 25
12% above 50
Startup base since Oct 2025, but also earlier visits (hometown area)
Average HRV by city
Bengaluru over time — the standout city

Bengaluru 2025 (46.6 ms over 188 readings) is the highest city-year combo by far. Bengaluru 2026 crashed to 33.3 — but that's only 7 readings.

The city gap — in numbers
Bengaluru advantage
+6.5 ms
vs Prayagraj. +6.2 ms vs Bhubaneswar. Consistent across all metrics.
Stress days rate
4× gap
4% of days below 25 ms in Bengaluru vs 15–17% in Prayagraj and Bhubaneswar.
Strong days rate
2× gap
27% of days above 50 ms in Bengaluru vs 12–14% elsewhere.
Travel cities — small samples, take lightly
Hyderabad
54.0
7 readings
Kozhikode
52.8
3 readings
Mysuru
44.5
6 readings
New Delhi
44.4
6 readings
Lucknow
43.5
11 readings
Dubai
42.8
4 readings
Singapore
40.9
4 readings
Ranchi
29.8
6 readings
The Bengaluru signal is real. 261 readings is a large enough sample. It's not just timing — even controlling for year, Bengaluru outperforms: 38.0 ms in 2023, 36.0 in 2024, 46.6 in 2025. The 2025 Bengaluru number (46.6 ms) is where the golden period happened. Whether it's the city, the partner, or the routine — something about being there is measurably better for the nervous system.
🏓 Discovery

The Pickleball Effect

76 tracked sessions from Apple Health. 64 matched to same-day HRV. 12 table tennis sessions also included. 255 total workouts scanned. This turned out to be the single strongest controllable factor in the entire dataset — stronger than location, sleep, or anything else.

Pickleball days
47.1ms
64 matched days
Non-pickleball days
33.4ms
112 matched days
The gap
+41%
+13.7 ms on play days
The carry-over effect

The benefit doesn't vanish overnight. Day after pickleball: 48.3 ms. Day after rest: 35.9 ms. That's +12.4 ms carry-over. The body holds the gains into the next morning's reading.

Shorter sessions (<60 min) actually produce better next-day HRV (49.6 ms) than long ones (>90 min: 43.8 ms). Moderate play recovers better than marathons.

Weekly dose response

Weeks with 3+ pickleball sessions averaged 46.3 ms.

Weeks with zero sessions averaged 32.6 ms.

That's a 13.7 ms gap — and it held across 33 weeks of data. Jul 2025 had 20 sessions and an HRV of 54 ms. Dec 2025 had zero sessions and HRV fell to 38 ms.

The honest caveat: pickleball mostly happened in Bengaluru during the 2025 peak, so location is confounded. But the effect size (+13.7 ms) is more than double the Bengaluru city advantage (+6.2 ms), suggesting pickleball has its own independent contribution. It's the most actionable finding in this dashboard — you can decide to play tomorrow.
Insights

What the Data Says — and What to Do About It

Depth of analysis
587 HRV readings analysed
1,166 location records matched
232 sleep nights matched
76 pickleball sessions tracked
204 Real Madrid matches checked
10 Apple Health metrics tested
What moves HRV up — ranked by effect size

1. Pickleball — +13.7 ms on play days (47.1 vs 33.4 ms, 64 matched days). +12.4 ms carry-over next morning. 3+ sessions/week → 46.3 ms. Shorter sessions (<60 min) recover better.

2. Location — Bengaluru 43.7 ms vs Bhubaneswar 37.5 ms across 379 matched readings. 3 of 4 sustained highs happened in Bengaluru.

3. Vacations — 45.4 ms vs 40.2 ms home base across 604 days (+13%). Breaks reset the nervous system.

4. Breathing practice — spikes to 172 ms show strong parasympathetic responsiveness. 5 min/day at 6 breaths/min is the most validated single HRV intervention.

5. Seasonality — Jul: 45.5 ms (72 readings). May: 32.8 ms (30 readings). Summer + outdoor activity.

6. Weekend consistency — Sat/Sun 3.5 ms lower than weekdays across all 3 years. Protect Friday/Saturday nights.

What doesn't move the needle — despite expectations

We tested every trackable metric in the Apple Health export. These came back near-zero:

Sleep duration
r = 0.03
232 matched nights. Top and bottom HRV days had similar sleep (~7h).
Daily steps
r = −0.03
520 matched days. More steps ≠ higher HRV.
Active calories
r = 0.06
520 matched days. Burning more calories doesn't help.

Life stressors, location, and specific activity type (pickleball, not just "movement") dominate so heavily that generic fitness metrics don't register.

Key patterns
1
The body handles shocks better than chronic uncertainty
Knee surgery: HRV held at 44 ms. Job change: led to the best months ever. The 5-month decline (Nov 2025 → Mar 2026) is the longest sustained drop — open-ended stress registers differently.
2
Median is the honest baseline, not mean
Mean: 41.5 ms. Median: 37.2 ms. The gap is inflated by 14 Breathe sessions. For personal benchmarking, use the median.
3
What pushes HRV down
Chronic open-ended stress (5-month decline) > discrete shocks (surgery held at 44 ms). NYE consistently tanks it (11.6–14.7 ms). Weekend Friday nights cost 3.5 ms every week.
Fun
The Fun Stuff

Not everything needs to be actionable. Some data is just fun to look at.

🏆
All-time high
172.4 ms
Feb 13, 2024 — Breathe session
📉
All-time low
8.8 ms
Apr 29, 2023 — Bhubaneswar
🚀
Biggest bounce
9.9 → 52.0
+425% in 48 hours — Mar 2026
🎉 Holidays
New Year's Eve11.6 → 14.7 ms 💀 Valentine's Day 202568.4 ms ❤️ Birthday arc (3 years)26.8 → 32.2 → 52.0 📈
Love > champagne. Every time.
✈️ Vacation vs home
Trips away45.4 ms (+13%) 🏖️ Home base40.2 ms Travel day penalty−1.2 ms
Vacations reset the nervous system. Travel days don't.
⚽ Real Madrid × HRV

204 matches checked against HRV data. 127 had readings.

Match days cost ~2 ms vs non-match days. Losses dip 4 ms below baseline but bounce back by next morning. Wins? +0.4 ms — same as a random day. Your heart doesn't celebrate La Liga wins. It just punishes losses briefly.

⚡ Quick-fire trivia
Best 30-day window54.6 ms · Jun–Jul 2025 · Bengaluru Worst 30-day window22.9 ms · Apr–May 2023 · Prayagraj Longest streak above 4028 days · Feb 2025 · Bengaluru Highest travel cityHyderabad · 54.0 ms (7 readings) Lowest travel cityRanchi · 29.8 ms (4 readings)
Story

The Bottom Line

In 2023, average HRV was 37.9 ms. By 2025, it was 46.8 ms — a 23% improvement built through recovery from knee surgery (which held at 44 ms during the acute phase), a marriage, and the clarity that came after leaving a job. Jan–Feb 2025 averaged 52.2 ms — the best sustained stretch ever — right as a new company was launching.

The single most important finding: pickleball. On play days, HRV averaged 47.1 ms vs 33.4 ms without — a 41% gap across 64 matched days. Weeks with 3+ sessions: 46.3 ms. Weeks with zero: 32.6 ms. Jul 2025 had 20 sessions and HRV peaked at 54 ms. Jan 2026 had 1 session and sat at 39. Shorter sessions (<60 min) produced better next-day recovery (49.6 ms) than long ones (43.8 ms). No other variable came close to this effect size.

Location was the second strongest signal. Bengaluru: 43.7 ms across 261 readings. Prayagraj: 37.2 across 192. Bhubaneswar: 37.5 across 118. Three of four sustained high periods happened in Bengaluru. All three major lows happened elsewhere — a 17% gap across hundreds of data points.

Several things that should matter turned out not to. We tested 10 Apple Health metrics, matched 232 sleep nights, and cross-referenced 204 Real Madrid matches. Sleep duration: r = 0.03. Daily steps: r = −0.03. Active calories: r = 0.06. RM win rate: r = −0.09. The things that actually showed up: weekend nights (−3.5 ms on Sat/Sun), Breathe sessions (spikes to 172 ms), seasonality (Jul 45.5 ms vs May 32.8 ms), and vacations (+13% over home base).

The current stretch is a 5-month decline — 44.9 to 28.7 ms — coinciding with a move to Bhubaneswar, near-zero pickleball (3 sessions in 4 months vs 39 in Jul–Aug alone), and the open-ended stress of building a pre-revenue company. The data shows the body absorbs discrete shocks well but struggles when uncertainty has no timeline.

The recovery track record is 2 for 2. The birthday arc across three years — 26.8 → 32.2 → 52.0 ms — is the clearest proof that the long-term trajectory is real and the physiological capacity is intact. The current dip is a setback, not an erasure. The roadmap is already in the data.

Appendix

How Your HRV Breaks Down

Histogram — all 587 readings

Right-skewed — Breathe/Mindfulness sessions pull the mean up. Your true daily baseline sits at the 37 ms median.

Days by zone
60+ ms
14.1%
40–60
28.6%
25–40
35.1%
< 25 ms
22.1%
25th percentile
26.3 ms
Median
37.2 ms
75th percentile
50.0 ms
1 in 5 days falls below 25 ms — that's 130+ days of physiological stress showing up in the data.
What this data can tell you
General autonomic trends over time · Recovery relative to your baseline · Signals of stress, illness, or poor sleep · Response to behaviour changes over weeks · Correlation (not causation) between life events and health
What it can't
Diagnose any condition · Distinguish stress vs illness vs poor sleep · Predict future outcomes · Replace clinical ECG measurement · Establish causation · Account for reading type (overnight vs Breathe session)
Methodology note
This dataset mixes passive overnight and active Breathe session readings. 14 readings above 85 ms are flagged as likely Breathe sessions — these are excluded from averages in the monthly/city/pattern charts but shown in the main timeline. Without them: mean drops from 41.4 to 39.7 ms. The median (39.4 ms) is largely unaffected, confirming it's the more honest baseline. Apple Watch uses SDNN via PPG, not clinical rMSSD via ECG. Trends are meaningful; absolute numbers are approximate. Not medical advice.