Vancouver Soundings

Vancouver's swim-lesson deficit, measured from the city's own records.

What the City’s own data shows

Sources: two datasets the City of Vancouver released under freedom of information in August 2026. The first is the Park Board’s Activity Totals for every aquatics program 2022–2025 (spots, enrolments, waitlists; FOI 2026-505, release letter), published here in full. The second is a registration-level extract of 151,568 lesson registrations under anonymized child codes (FOI 2026-507, release letter), available on request to journalists and researchers (see the receipts page for why child-level rows aren’t posted for general download). Every aggregate figure below recomputes from the published Activity Totals and analyze_for_site.py (saved output); the child-level findings recompute from the extract via the same published scripts, except where noted. Park Board staff hold the same data with more detail and could reproduce or improve every analysis here. That is an invitation, not a challenge.

1. What “8,000 waitlisted” actually means: about 3,300 children

The Park Board’s only public waitlist figure, “over 8,000 requests for fall swim lessons”, counts wait-list entries, and one child on several lists counts several times. Joining the two datasets gives the conversion the figure has always needed. At the beginner levels, each child generates about 2.5 demand events (registrations plus wait entries). That ratio holds with surprising stability, from Swimmer 1 (2.64) through Swimmer 4 (2.21). Here it is worked out at Swimmer 1 in 2024: 2,718 enrolments and 5,567 wait entries, spread across 3,141 distinct children. (There are more children than enrolments because some only ever waitlisted and never held a spot.) So 8,285 demand events ÷ 3,141 children = 2.64 per child. The full table runs the same division at every level. It is that last column, not wait entries divided by enrolments, that gives the multiplier.

So the fall queue is roughly 3,200–3,400 children, not 8,000. That is still an extraordinary number. At Swimmer 1 in 2024, 3,141 distinct children pursued 2,886 spots, and more than 400 of them never held a spot all year. (Those 400-plus are the distinct children beyond the 2,718 who enrolled, a floor, since some children enrol more than once.) But it is a different number, and the difference matters for planning. A city that counts entries cannot tell whether its queue is deep or wide. This table answers that: deep at the entry levels (2.5 attempts per child), shallow by the Patrol levels (1.0–1.2, where nearly every request is a distinct child and nearly all get in).

2. The pipeline, in one picture

Unique children at each stage in 2024 (lesson levels), and course registrations at the certification stages:

Parent & Tot 2,391 ################################# Preschool 1 2,401 ################################## Preschool 2 1,349 ################### Preschool 3 913 ############# Preschool 4 356 ##### Preschool 5 197 ### Swimmer 1 3,141 ############################################ Swimmer 2 2,419 ################################## Swimmer 3 1,711 ######################## Swimmer 4 1,198 ################# Swimmer 5 977 ############## Swimmer 6 726 ########## Swimmer 7 (Rookie) 424 ###### Swimmer 8 (Ranger) 292 #### Swimmer 9 (Star) 180 ### Bronze Medallion 95 # Bronze Cross 57 # National Lifeguard 48 # Instructor cert (initial) 0 Instructor recert 154 ##

Read it from the top. Three thousand children enter the school-age track. One hundred and eighty remain by Star Patrol. Forty-eight take National Lifeguard, the credential that lets them guard a pool. Then the bar that is not there: zero. That is the number of initial teaching-certification spots a member of the public could register for in the Aquatics catalogue, in this year or any year of the data. The 154 recertification registrations beside it (2024; 6 in 2023, about 50 in 2025) show a standing stock of instructors renewing their credentials. The empty bar shows the public door through which new ones might arrive. Vancouver’s future swim instructors must arrive already certified from an outside provider. The Park Board runs no initial course and trains no one into the role. (Richmond, for comparison, sells the same certification to anyone for $638, and most of its fall courses were full with waitlists by mid-August.) One caveat a Park Board reader will raise: this counts the Aquatics category of the export. A course filed under another category, or run purely as staff training, would not appear. That is why a follow-up FOI (2026-506, revised) asks the yes-or-no question directly.

Two honest caveats. This is a cross-section of one year, not one cohort followed through time; children at Swimmer 6 in 2024 entered years earlier, under different conditions. And the lesson-stage counts include waitlisted children indistinguishably (the released extract lacks a status flag; a corrected extract is on request). Neither caveat changes the shape.

What the 48 at National Lifeguard has to cover. The Park Board’s own August 2022 statement, 152 lifeguards hired but “still down 30% compared to pre-COVID levels,” implies a target complement of roughly 220. A workforce that size and age (students who cycle out to university and other work) turns over somewhere between 15 and 35 percent a year, on the outside evidence. Ottawa hired 266 lifeguards into 1,350 positions in eight months of 2018–19, “a turnover of almost 20 per cent.” Saskatchewan’s Lifesaving Society reports 21 to 32 percent of its instructors not recertifying over each two-year cycle. Burnaby says 75 percent of its aquatic team are students. That range means 33 to 75 newly certified people are needed annually just to keep staffing level, and more while rebuilding a gap. Against that, the city’s own catalogue shows roughly 42 NL course registrations a year, before pass rates. The balance is imported: staff certified in other municipalities, internationally trained lifeguards through the equivalency channel opened in 2023, and other providers. All of them draw from one regional pool that every Lower Mainland employer hires from. And none of those turnover figures is a Vancouver measurement. The City has published no turnover rate for its aquatic staff, and no record released to date contains one. The staffing plan’s most important variable is unmeasured, or at least unshared.

2b. The preschool ladder and the Swimmer 1 reboot

The pipeline chart shows preschool numbers decaying from 2,401 to 197, then rebooting to 3,141 at Swimmer 1. Following individual (coded) children across levels (analyze_preschool_ladder.py; saved output, with the definitions stated in the script) explains it, in three parts.

First, most Swimmer 1 children are new. Only about 38% of 2025’s Swimmer 1 entrants had any preschool history; the school-age gate is where most families first touch the system.

Second, the children who do come up from preschool leave the ladder from every rung, and nearly all restart at Swimmer 1 no matter how far they climbed. Of the 488 who topped out at Preschool 1, 435 entered at Swimmer 1 (89%); so did 211 of the 276 who reached Preschool 4 (76%). Only Preschool 5 changes a child’s placement: 98 of its 172 finishers (57%) skipped past Swimmer 1.

Third, attrition is heavy. Of children whose preschool history ended by 2024, just 23% of those who topped out at Preschool 1 have reappeared in the school-age track, rising to 69% for Preschool 5 finishers.

The design question this raises: the system sells roughly 5,200 preschool spots a year on a ladder whose middle rungs do not advance a child’s school-age placement, then funnels that cohort, plus the no-history majority, onto the single most waitlisted level it runs. Two things would make preschool progress count: recognized crossover placement (the Preschool 5 → Swimmer 2 path exists and works, though few children reach it), or a placement assessment at school-age entry. (Caveats: registrations include waitlisted children; 2022’s missing data cuts off the earliest histories, which is why the 2023 and 2024 entrant cohorts show less preschool history than 2025’s; children whose preschool ran into 2025 have had little time to reappear, so the attrition figures exclude them. Combined classes such as “Preschool 4/5” are counted at the lower level.)

3. The recovery was real, and broad

Between 2023 and 2025 the Park Board expanded every single level: Swimmer 1 +32%, Swimmer 5 and 6 +74%, Patrol levels +29% to +65%, preschool +27% to +52%, Parent & Tot +53%. System-wide, spots grew from about 16,000 (2022) to 23,841 (2025), and wait entries fell 47% from their 2023 peak (Activity Totals; computation). Whoever managed that expansion deserves the credit the queue-focused headlines never give.

The unfinished part is seasonal. The fall entry gate is the season families organize around, and the one the “8,000” figure describes. It shrank from 768 Swimmer 1 spots in fall 2024 to 540 in fall 2025, even as annual totals held. Fall carried 2.2 wait entries per Swimmer 1 spot in both years. The growth went to other seasons; the queue lives in September.

4. The queue cannot be rearranged away

An obvious hope: maybe the spots are just in the wrong places, so shifting them between levels would clear the queue. The data says no. Reallocating 2024’s spots across levels in exact proportion to demand would cut unserved demand by about 2 percent (computation, section D). In 2024, 26,095 wait entries coexisted with only about 3,000 unfilled spots system-wide (23,348 offered, 20,341 filled). Some of that is a mismatch of time and place, but most of it is simple shortage. More than half of all demand events went unserved at the current scale, and demand exceeds supply at nearly every level at once.

This is the most important negative result in the data: no clever rearrangement fixes this queue. What fixes it is teaching time at the hours children can attend. The same datasets show that is roughly six to seven full-time-equivalents of added teaching time (instruction-hours series, modelled from catalogue snapshots), delivered by 20–30 more certified part-timers in the after-school window. Their certification path is the empty bar in the chart above.

What would make this analysis better

Written for Park Board staff as much as anyone: (1) an enrolment-status flag on the registration extract, requested and awaited, which would separate children repeating a level from children queuing for one, and unlock the true repeat rate, format effectiveness (weekly vs. intensive), and waitlist-to-spot conversion odds; (2) unique-child waitlist counts published alongside “requests” in any future public figure; (3) the same analyses run internally on the live system, where none of our caveats apply. The scripts are public and short. The department’s Recreation Software Analysts could rerun everything here in an afternoon, with better data than we have.