About SF Pools
Every public pool schedule in San Francisco, in one place.
WHAT THIS IS
The San Francisco Recreation and Park Department runs nine public pools, and each one posts its schedule as a separate PDF. Finding a lap swim that fits your morning routine means opening several PDFs and comparing them by hand. This site does that comparison for you.
The week grid shows which pools have a program at each hour of the week, now & soon shows what’s open at the moment, and each of the pools has a page with its address and every session on its schedule.
WHERE THE SCHEDULES COME FROM
Every Friday, a script checks each pool’s page on the Rec & Parks site, downloads any schedule PDF that has changed, and has an AI model read it into structured data. It also picks up the closure and alert notices posted on those pages.
Each update is checked for signs of a bad read before it goes live. If one pool’s schedule looks wrong, that pool keeps last week’s data while the others update. You can see what changed in each update on the schedule changes page.
CHECK BEFORE YOU GO
This is an independent project, not a city site. Reading PDFs automatically can get details wrong, and pools change hours, close for maintenance, or cancel sessions at short notice. Before you head out, confirm the schedule on the pool’s page at SF Rec & Parks.
THE POOLS
- BALBalboa Pool51 Havelock StPool page
- COFCoffman Pool1701 Visitacion AvePool page
- GARGarfield Pool1271 Treat AvePool page
- HAMHamilton Pool1900 Geary BlvdPool page
- MLKMLK Pool5701 3rd StPool page
- MISMission Pool101 Linda StPool page
- NBCNBWNorth Beach Pool661 Lombard StPool page
- ROSRossi Pool600 Arguello BlvdPool page
- SAVSava Pool2695 19th AvePool page
FOR AI ASSISTANTS
AI assistants can ask this site what’s open now, what’s coming up, or which sessions match a pool, program, day or time. Add https://sf-pools.vercel.app/mcp as a custom connector (it’s an MCP server, no sign-in needed), or fetch the same answers as JSON from /api/sessions. llms.txt describes both.
THE CODE
The site and the pipeline behind it are open source on GitHub. If a schedule looks wrong or something doesn’t work, opening an issue there is the best way to report it.