{"url":"/san-francisco/ymca-of-san-francisco-richmond","provider":{"id":"ymca-of-san-francisco","name":"YMCA of San Francisco","kind":"organization","about":"The Y runs before- and after-school programs at school sites and branches in San Francisco, Marin and San Mateo counties. It also holds school-break and summer camps.","website":"https://www.ymcasf.org","phone":null,"email":null,"instagram":null,"founded":null,"credentials":[],"languages":[],"image":null},"location":{"id":"richmond","name":null,"street":"360 18th Ave","unit":null,"city":"san-francisco","zip":"94121","neighborhood":"Richmond","coords":[-122.477223,37.781239],"precision":"exact"},"serviceArea":[],"programs":[{"id":"before-and-after-school-care","type":"afterschool","name":"Before and After School Programs","summary":"School-based before- and after-school care run by each branch at nearby elementary and middle schools, with homework time, play and enrichment.","description":"Each branch runs the program at the public schools nearby (for example Chinatown at Jean Parker and Yick Wo, Mission at Harvey Milk and Monroe, Richmond at Jefferson and Lafayette, Stonestown at West Portal and Miraloma, Marin at several Novato schools). The Y lists elementary and middle school sites, so ages here are estimated as 5 to 13. Hours and the monthly fee are set per site; call the branch. A parent first creates a Community Portal account and may need school and site-director approval.","categories":["homework-help","sports","art"],"ages":{"min":5,"max":13},"format":"in-person","financialAid":true,"registration":{"url":"https://www.ymcasf.org/program/before-afterschool-programs","status":"open"},"afterschool":{"care":true,"meetings":[{"location":"richmond","days":["mon","tue","wed","thu","fri"]}],"pickup":"Runs on the campuses of the partner schools, so children stay at school. Sibling discount of 20 percent."}}],"source":{"url":"https://www.ymcasf.org/program/before-afterschool-programs","fetched":"2026-10-07"},"updated":"2026-10-07","checked":null,"closed":null,"sample":false}