Analyzes Google Fit exported data including steps, heart rate, sleep, and activity metrics. Generates health digests and trend reports from Google Fit JSON/CSV exports. Use when the user provides Google Fit data or asks about their Google Fit health metrics.
Analyze Google Fit exported health and fitness data. Generate daily digests, weekly summaries, monthly trend reports, and composite health scores from step counts, heart rate, sleep, activity, weight, and vitals data.
Supported Google Fit export formats:
| Data Type | Google Fit Source | Fields |
|---|---|---|
| Steps | com.google.step_count.delta | count, start_time, end_time |
| Heart Rate | com.google.heart_rate.bpm | bpm, timestamp |
| Sleep | com.google.sleep.segment | stage, start_time, end_time |
| Activity | com.google.activity.segment | activity_type, duration, calories |
| Weight | com.google.weight | kg, timestamp |
| Blood Pressure | com.google.blood_pressure | systolic, diastolic, timestamp |
| Body Temperature | com.google.body.temperature | celsius, timestamp |
| Oxygen Saturation | com.google.oxygen_saturation | spo2, timestamp |
Glob to find JSON or CSV files matching Google Fit export patterns (e.g., **/Fit/**/*.json, **/Google Fit/**/*.csv).Compile the following from imported data for a given date:
Steps:
Active Minutes:
Heart Rate:
220 - age unless user provides measured valueCalories:
Sleep Summary (if sleep data available):
Vitals (if available):
Steps Trend:
Activity Consistency Score:
Heart Rate Trends:
Weight Trend:
Sleep Duration and Quality Trends:
Guideline Comparison:
Composite health score (0-100) calculated from weighted components:
| Metric | Target | Weight | Scoring |
|---|---|---|---|
| Daily Steps | 10,000 | 25% | Linear 0-100, capped at 150% of target |
| Active Minutes | 30 min/day | 25% | Linear 0-100, bonus for vigorous intensity |
| Sleep Duration | 7-9 hours | 20% | 100 in range, decreasing outside |
| Resting HR | Age-appropriate range | 15% | Lower is better within healthy range |
| Weight Stability | Within ±2% of target/baseline | 15% | 100 at target, linear decrease |
Score interpretation:
Age-appropriate resting HR ranges:
When data is missing for a component, redistribute its weight proportionally among available metrics and note the gap.
Map Google Fit activity type integers to human-readable categories:
Cardio:
Strength:
Flexibility:
Daily Activity:
Sports:
For each activity session, extract:
When both Google Fit and Apple Health data are available (cross-reference with apple-health-digest skill):
Evaluate data completeness and reliability:
Completeness Checks:
Sensor Accuracy Flags:
Sync Issues:
Quality Score:
Report quality assessment at the top of every digest or report.
## Google Fit Daily Digest — [DATE]
**Data Quality:** [A/B/C/D] — [brief note]
### Steps
- Total: [count] / 10,000 ([percentage]%)
- Peak hour: [hour] ([count] steps)
- vs. 7-day avg: [+/-count] ([+/-percentage]%)
### Active Minutes
- Total: [minutes] min
- Light: [minutes] min | Moderate: [minutes] min | Vigorous: [minutes] min
### Heart Rate
- Resting: [bpm] bpm | Average: [bpm] bpm | Max: [bpm] bpm
- Zone distribution: Z1 [min] | Z2 [min] | Z3 [min] | Z4 [min] | Z5 [min]
### Sleep
- Duration: [hours]h [minutes]m (efficiency: [percentage]%)
- Stages: Light [percentage]% | Deep [percentage]% | REM [percentage]% | Awake [percentage]%
### Vitals
- Weight: [kg] kg ([trend arrow] [change] from 7-day avg)
- BP: [systolic]/[diastolic] mmHg ([classification])
- SpO2: [percentage]%
### Health Score: [score]/100 ([interpretation])
## Google Fit Weekly Summary — [START_DATE] to [END_DATE]
**Data Quality:** [grade] — [days with data]/7 days
### Steps Overview
| Day | Steps | Goal Met |
|---|---|---|
| Mon | [count] | [yes/no] |
| ... | ... | ... |
| **Average** | **[count]** | **[X]/7 days** |
### Activity Minutes: [total] min ([percentage]% of 150 min guideline)
### Avg Resting HR: [bpm] bpm (trend: [direction])
### Avg Sleep: [hours]h [minutes]m ([consistency score])
### Weight: [start] → [end] kg ([change])
### Weekly Health Score: [score]/100
## Google Fit Monthly Report — [MONTH YEAR]
**Data Quality:** [grade] — [days with data]/[total days] days
### Monthly Highlights
- Best step day: [date] ([count] steps)
- Most active week: Week of [date]
- Longest activity streak: [count] days
### Trend Summary
- Steps: [trend direction] ([avg] daily avg)
- Resting HR: [trend direction] ([start] → [end] bpm)
- Weight: [trend direction] ([start] → [end] kg, [rate] kg/week)
- Sleep: [trend direction] ([avg] avg duration)
### Guideline Adherence
- Weeks meeting WHO activity guidelines: [count]/[total]
- Average weekly active minutes: [minutes] min
### Monthly Health Score: [score]/100 ([vs. previous month])
### Recommendations
- [Actionable recommendation based on data trends]
- [...]
Save each daily digest to: items/google-fit-daily-[YYYY-MM-DD].md
Maintain a running reference at: items/google-fit.md
Structure of items/google-fit.md:
# Google Fit Health Data
## User Profile
- Age: [if known]
- Height: [if known]
- Weight target: [if set]
- Step goal: [default 10,000]
- Preferred units: [metric/imperial]
## Latest Metrics
- Last updated: [date]
- Current weight: [kg]
- Resting HR (7-day avg): [bpm]
- Daily steps (7-day avg): [count]
- Weekly active minutes: [minutes]
- Avg sleep duration: [hours]
## Data Sources
- Primary device: [e.g., Pixel Watch 3]
- Connected apps: [list]
- Export format: [JSON/CSV]
- Date range available: [start] to [end]
## Monthly Scores
| Month | Health Score | Steps Avg | Active Min/Week | Sleep Avg | Resting HR |
|---|---|---|---|---|---|
| [month] | [score] | [steps] | [minutes] | [hours] | [bpm] |
Update items/google-fit.md after each digest generation with the latest metrics and monthly score entry.
Flag the following conditions when detected in the data:
IMPORTANT: This skill provides informational health data summaries only.