Swimmer profile
Kalvin Hahn
MaleOpen / SeniorArmy West PointMR · EASTERN
How this works
For each event, your next goal is the lowest elite tier you haven't hit yet (Sectionals → Futures → Winter Juniors → Nationals). The progress bar runs from your previous tier's cut (left edge) to your next tier's cut (right edge); the ▲ marker is your PB. A 50% bar means your PB sits halfway through that gap — not 50% close to the next cut. The All tab lists every event in program order (Free → Back → Breast → Fly → IM, shortest to longest); pick a stroke tab to narrow the view.
| Event | Current PB | Tier achieved | Next goal | Progress |
|---|---|---|---|---|
| 50 Free SCYage 17 | PB22.08 | ✓ Sectionals | Futurescut 21.29 (−0.79 to drop) | SECTIONALS22.1921.29FUTURES 12% through the gap |
| 100 Free SCYage 16 | PB49.12 | below Sectionals | Sectionalscut 48.19 (−0.93 to drop) | Baseline1:12.2948.19SECTIONALS 96% through the gap |
| 200 Free SCYage 20 | PB1:40.74 | ✓ Sectionals | Futurescut 1:37.59 (−3.15 to drop) | SECTIONALS1:45.791:37.59FUTURES 62% through the gap |
| 500 Free SCYage 17 | PB4:29.30 | ✓ Futures | Winter Juniorscut 4:28.79 (−0.51 to drop) | FUTURES4:37.094:28.79WINTER_JRS 94% through the gap |
| 1000 Free SCYage 17 | PB9:23.24 | ✓ Futures | Winter Juniorscut 9:22.69 (−0.55 to drop) | FUTURES9:34.299:22.69WINTER_JRS 95% through the gap |
| 1650 Free SCYage 17 | PB15:47.34 | ✓ Futures | Winter Juniorscut 15:40.39 (−6.95 to drop) | FUTURES16:05.4915:40.39WINTER_JRS 72% through the gap |
| 100 Back SCYage 19 | PB52.51 | ✓ Sectionals | Futurescut 48.59 (−3.92 to drop) | SECTIONALS53.8948.59FUTURES 26% through the gap |
| 200 Back SCYage 17 | PB1:50.13 | ✓ Futures | Winter Juniorscut 1:47.79 (−2.34 to drop) | FUTURES1:52.791:47.79WINTER_JRS 53% through the gap |
| 50 Breast SCYage 17 | PB25.60 | ✓ Futures | Winter Juniorscut (− to drop) | no baseline |
| 100 Breast SCYage 17 | PB54.16 | ✓ Winter Juniors | Nationalscut 53.99 (−0.17 to drop) | WINTER_JRS55.4953.99NATIONALS 89% through the gap |
| 200 Breast SCYage 20 | PB1:53.08 | ✓ Nationals | 🏆 At top tier | complete |
| 50 Fly SCYage 17 | PB23.75 | ✓ Sectionals | Futurescut 22.89 (−0.86 to drop) | SECTIONALS24.0922.89FUTURES 28% through the gap |
| 100 Fly SCYage 17 | PB50.99 | ✓ Sectionals | Futurescut 50.59 (−0.40 to drop) | SECTIONALS52.8950.59FUTURES 83% through the gap |
| 200 Fly SCYage 20 | PB1:48.91 | ✓ Sectionals | Futurescut 1:47.89 (−1.02 to drop) | SECTIONALS1:58.891:47.89FUTURES 91% through the gap |
| 100 IM SCYage 16 | PB54.65 | below Sectionals | Sectionalscut (− to drop) | no baseline |
| 200 IM SCYage 17 | PB1:47.25 | ✓ Winter Juniors | Nationalscut 1:46.79 (−0.46 to drop) | WINTER_JRS1:49.591:46.79NATIONALS 84% through the gap |
| 400 IM SCYage 18 | PB3:46.19 | ✓ Nationals | 🏆 At top tier | complete |