grafana/k6 · error
invalid percentile trend stat value '%s', provide a number b
Error message
invalid percentile trend stat value '%s', provide a number between 0 and 100
What it means
Raised by parsePercentile when a p(...) trend stat's inner value fails to parse as a float or falls outside the 0–100 range. Reached only after the p(...) format check has passed.
Source
Thrown at metrics/sample.go:182
if err != nil {
return nil, err
}
result[stat] = dynamicResolver(percentile)
}
return result, nil
}
// parsePercentile is a helper function to parse and validate percentile notations
func parsePercentile(stat string) (float64, error) {
if !strings.HasPrefix(stat, "p(") || !strings.HasSuffix(stat, ")") {
return 0, fmt.Errorf("invalid trend stat '%s', unknown format", stat)
}
percentile, err := strconv.ParseFloat(stat[2:len(stat)-1], 64)
if err != nil || (percentile < 0) || (percentile > 100) {
return 0, fmt.Errorf("invalid percentile trend stat value '%s', provide a number between 0 and 100", stat)
}
return percentile, nil
}
View on GitHub (pinned to 01ffac6f24)
Solutions
- Use a number between 0 and 100 inside p(), e.g. p(99.9)
- Avoid negative values or values over 100
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at metrics/sample.go:182 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of grafana/k6@01ffac6f24 (2026-08-18).
Data as JSON: /api/errors/e111ee87b6c8828d.
Report an issue: GitHub.