A method, implemented in a computing device, for accurately estimating gait characteristics of a user, the method comprising: monitoring a first plurality of parameters indicative of movement of the user, wherein monitoring the first plurality of parameters includes monitoring (i) a first GNSS-derived speed of the user and (ii) a step count of the user; processing values of the monitored first plurality of parameters to determine values of a second plurality of parameters indicative of movement of the user, wherein processing values of the monitored first plurality of parameters includes applying, as inputs to an estimator having the second plurality of parameters as estimator states, one or both of (i) values of at least one of the monitored first plurality of parameters, and (ii) values of at least one parameter derived from one or more of the monitored first plurality of parameters and predicting, at each of a plurality of time intervals, that values of the estimator states are unchanged from respective values of the estimator states at a most recent time interval, wherein the estimator is a Kalman filter, a non-linear estimator or a particle filter, and at least two parameters of the second plurality of parameters are collectively indicative of a mapping between step frequency of the user and step length of the user, wherein the mapping includes (i) a slope of a line representing the mapping between step frequency of the user and step length of the user, and (ii) an intercept of the line representing the mapping between step frequency of the user and step length of the user; and causing a graphical user interface of the computing device or another computing device to display values of one or both of (i) at least one of the second plurality of parameters, and (ii) at least one parameter derived from one or more of the second plurality of parameters. monitoring a first plurality of parameters indicative of movement of the user, wherein monitoring the first plurality of parameters includes monitoring (i) a first GNSS-derived speed of the user and (ii) a step count of the user; processing values of the monitored first plurality of parameters to determine values of a second plurality of parameters indicative of movement of the user, wherein processing values of the monitored first plurality of parameters includes applying, as inputs to an estimator having the second plurality of parameters as estimator states, one or both of (i) values of at least one of the monitored first plurality of parameters, and (ii) values of at least one parameter derived from one or more of the monitored first plurality of parameters and predicting, at each of a plurality of time intervals, that values of the estimator states are unchanged from respective values of the estimator states at a most recent time interval, wherein the estimator is a Kalman filter, a non-linear estimator or a particle filter, and at least two parameters of the second plurality of parameters are collectively indicative of a mapping between step frequency of the user and step length of the user, wherein the mapping includes (i) a slope of a line representing the mapping between step frequency of the user and step length of the user, and (ii) an intercept of the line representing the mapping between step frequency of the user and step length of the user; and processing values of the monitored first plurality of parameters includes applying, as inputs to an estimator having the second plurality of parameters as estimator states, one or both of (i) values of at least one of the monitored first plurality of parameters, and (ii) values of at least one parameter derived from one or more of the monitored first plurality of parameters and predicting, at each of a plurality of time intervals, that values of the estimator states are unchanged from respective values of the estimator states at a most recent time interval, wherein the estimator is a Kalman filter, a non-linear estimator or a particle filter, and at least two parameters of the second plurality of parameters are collectively indicative of a mapping between step frequency of the user and step length of the user, wherein the mapping includes (i) a slope of a line representing the mapping between step frequency of the user and step length of the user, and (ii) an intercept of the line representing the mapping between step frequency of the user and step length of the user; and causing a graphical user interface of the computing device or another computing device to display values of one or both of (i) at least one of the second plurality of parameters, and (ii) at least one parameter derived from one or more of the second plurality of parameters.