Release history
statistics-for-strava releases
Self-hosted, open-source dashboard for your Strava data.
All releases
36 shown
- Allow setting Zwift level above 100
- Improve split gap calculation and add recalculation command
Full changelog
Improvements
- Use non-breaking space as thousands separator to prevent line wrapping
- Allow to set Zwift level over 100
- Improve split GAP calcultion and values
Technical details
- fix: use non-breaking space as thousands separator to prevent line wrapping by @vrkrebs in https://github.com/robiningelbrecht/statistics-for-strava/pull/2015
- ISSUE #2016: Allow to set Zwift level over 100 by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2017
- ISSUE #2018: Use docker compose CMD instead of ENTRYPOINT by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2019
- fix: stabilize split GAP values and add GAP recalculation command by @cgtobi in https://github.com/robiningelbrecht/statistics-for-strava/pull/1997
New Contributors
- @vrkrebs made their first contribution in https://github.com/robiningelbrecht/statistics-for-strava/pull/2015
Full Changelog: https://github.com/robiningelbrecht/statistics-for-strava/compare/v4.7.9...v4.7.10
- Configurable fixed viewport for heatmaps via `initialCenter` and `initialZoom`
- Hungarian (hu_HU) translation added
- Winter sports data included in the Yearly stats chart
Full changelog
New features
- SFS Docker image is now also published on the GitHub Container Registry.
- Added a Hungarian (hu_HU) translation.
- Added an option to configure the heatmap to load with a fixed viewport.
appearance:
heatmap:
# Optional, sets the initial center point of the heatmap as [latitude, longitude].
# When set together with initialZoom, the map will use this fixed viewport instead of auto-fitting to your most active area.
# 🔥 PRO tip: You can easily get the latitude and longitude by navigating to a location in Google Maps. The coordinates are shown in the URL.
# Leave empty to auto-fit.
initialCenter: null
# initialCenter: [51.05, 3.72]
# Optional, sets the initial zoom level of the heatmap (1-18, where 1 is fully zoomed out and 18 is street-level).
# Must be used together with initialCenter.
initialZoom: null
# initialZoom: 12
Improvements
- Added winter sports to the Yearly stats chart.
- Added pre-configured quick links to the date filter options.
Bug fixes
- Fixed the incorrect “Best Efforts YTD” label.
- Fixed an issue where the label of the rightmost data point in weekly stats was partially cut off.
- Fixed pace rounding in the Segments charts.
Technical details
- ISSUE #1996: Update docs with Github container registry reference by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/1998
- Add Hungarian (hu_HU) translation by @czdanika in https://github.com/robiningelbrecht/statistics-for-strava/pull/2002
- ISSUE #2001: Fixed best efforts YTD label by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2003
- ISSUE #1999: Weekly stats, data label of rightmost data point is partially cutoff by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2004
- ISSUE #2000: Pace rounding in Segments charts by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2005
- ISSUE #2006: Add winter sports to Yearly stats chart by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2007
- ISSUE #2008: Add pre-configured links to the date filters by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2010
- ISSUE #2009: Allow to configure heatmap to load on fixed view port by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/2011
New Contributors
- @czdanika made their first contribution in https://github.com/robiningelbrecht/statistics-for-strava/pull/2002
Full Changelog: https://github.com/robiningelbrecht/statistics-for-strava/compare/v4.7.8...v4.7.9
Minor fixes and improvements.
Full changelog
Bug fixes
- ISSUE #1993: An exception has been thrown during the rendering of a template by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/1994
Full Changelog: https://github.com/robiningelbrecht/statistics-for-strava/compare/v4.7.7...v4.7.8
- Grade Adjusted Pace (GAP) for running activities
- Training goal widget with date range configuration
Full changelog
New features
- Introduced Grade Adjusted Pace (GAP) for running activities
- Training goal widget allows goals to be configured based on a specific date range
'config': {
'goals': {
'weekly': [
{ label: 'Cycling', enabled: true, type: 'distance', unit: 'km', goal: 200, restrictToDateRange: {from: '2026-01-01', to: '2026-03-31'} }
],
},
}
https://statistics-for-strava-docs.robiningelbrecht.be/#/configuration/dashboard-widgets?id=traininggoals
Bug fixes
- Fixed cadence accuracy for running and walking activities by correctly doubling the cadence value where needed.
Technical details
- ISSUE #1974: Cadence needs to be doubled for runs and walks by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/1978
- feat(translations): more fr by @christian-vdz in https://github.com/robiningelbrecht/statistics-for-strava/pull/1972
- ISSUE #1976: Provide GitHub Container Packages as alternative to dock… by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/1977
- ISSUE #1979: Calculate and display Grade Adjusted Pace (GAP) for running activities by @cgtobi https://github.com/robiningelbrecht/statistics-for-strava/pull/1981
- ISSUE #1984: Move activity split average heart rate calculation to CalculateActivityMetrics pipeline by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/1989
- ISSUE #1988: Training goal based on date range by @robiningelbrecht in https://github.com/robiningelbrecht/statistics-for-strava/pull/1991
New Contributors
- @cgtobi made their first contribution in https://github.com/robiningelbrecht/statistics-for-strava/pull/1981
Full Changelog: https://github.com/robiningelbrecht/statistics-for-strava/compare/v4.7.6...v4.7.7
- Cadence Distribution chart
- Configuration to exclude activities from Peak Power Outputs
- Zoom/slider controls on FTP dashboard widget
Resolved crashes from missing indices errors, corrected milestone duration formatting, fixed speed distribution charts for imperial units, and improved power output chart readability with Italian translation updates.
- Country milestone tracking
- AI API key redaction
- Segment overview filters
- Relative cost per distance metrics
- Segment average gradient
- Multi-select heatmap filters
- Recording device statistics and purchase tracking
Fixed multiple chart display issues: Eddington metrics now viewable in both unit systems, corrected Y-axis label clipping, fixed Athlete Weight History unit system bug, aligned elevation data in recent activities, corrected segment effort chart colors, fixed pace tooltip values.
- Segment effort vs heart rate scatter chart
- Distance and elevation filters
- Activity stream data compression
This release fixes a critical issue in the Daemon that was introduced in `v4.6.3` **Full Changelog**: https://github.com/robiningelbrecht/statistics-for-strava/compare/v4.6.3...v4.6.4
Focused data compression improvements: compressed API calls for chart rendering, GPX file compression, and Docker image size reduction. Fixed duplicate gear maintenance row rendering and reorganized JavaScript files.
Incremental improvements to activity metric charts on detail pages for enhanced data visualization and accuracy.
- Zoomable metric charts with full raw data
- Must upgrade to v4.4.2 before upgrading to this version
- Training load forecast tab
Fixed webhook processing delays, invalid heart rate formula errors, and improved route resolution with basePath support for custom application paths.
- Athlete profile radar chart
- Enhanced streaks widget
- Data corruption repair tool
- GPX export from pop-up