descriptive only
These are historical per-period rates and splits for Ben Shelton (ATP), not a prediction and not an edge claim. descriptive_only: true.
as of 2026-07-19T03:41:37.066640+00:00Ben Shelton (ATP)Tennis players -- player_id 210097as of 2026-07-19T03:41:37.066640+00:00
hard wr career
0.6183
clay wr career
0.5294
grass wr career
null
hard wr recent
0.624
clay wr recent
0.5294
grass wr recent
null
clay minus hard career
-0.0889
clay minus hard recent
-0.0946
grass adapt career
-0.0687
grass adapt recent
-0.0717
sample floor -- hard_wr: hard_n>=30 | clay_wr: clay_n>=30 | grass_wr: grass_n>=30 | clay_minus_hard: clay_n>=25 & hard_n>=25 | grass_adapt: grass_n>=15 (per metric, career+recent_form independently; below floor shows n/a)download card PNG -> docs/img/atlas/tennis/ben_shelton_atp.png
sample floor
as of 2026-07-19T03:41:37.066640+00:00
An entity earns a descriptive card only after clearing a minimum-sample floor, so rates are not read off tiny samples. The floor for this pack is hard_wr: hard_n>=30 | clay_wr: clay_n>=30 | grass_wr: grass_n>=30 | clay_minus_hard: clay_n>=25 & hard_n>=25 | grass_adapt: grass_n>=15 (per metric, career+recent_form independently; below floor shows n/a). Entities below the floor are deliberately left off -- we do not print rates we cannot stand behind.