Portland Public Schools · rightsizing scenarios released Oct 5, 2026 · Made with

How much farther is school?

How walk, bike and drive times change for families in each school PPS proposes closing: 14 in Scenario A, 11 in B.

PPS has proposed closing 14 schools (Scenario A) or 11 (Scenario B). This page estimates how each closure changes the trip to school for the families who live in its attendance area, walking, biking, and by car or bus. It covers K–5 closures and the middle-school moves that come with them.

Boundary changes

See what changes, PPS's source map, and other ways to draw the linesDetails, PPS's map, other models

Every option closes the same schools in the selected scenario. They differ only in which open schools absorb each closing school's neighborhood, for K–5 and for grades 6–8. The PPS plan is the district's proposal; the others are alternative boundary adjustments for comparison, not anything PPS has proposed. Choosing one updates every number and map on the page.

Basemap © OpenStreetMapMade with
Families
Map shows
Basemap © OpenStreetMapMade with

What stands out

Which closures add the most travel time

Averages are over the estimated neighborhood students who live in each closing school's area today. Click a row to show it on the map. Click a column heading to sort.

Immersion programs that move

Is each new site central for its program?

Where the longest new trips are

For the grades selected above, neighborhoods ranked by total added student-minutes in the selected travel mode (students moved × minutes added), for the scenario and boundary approach chosen above.

Shorter trips, or fuller schools?

Middle school moves, school to school

Both scenarios turn seven K–8 schools into K–5 schools and close Sellwood Middle School. Grades 6–8 from those areas go to a middle school, often much farther from home than the K–8 was. This table follows the scenario and boundary approach chosen above.

Scenario A and B side by side

Totals for the boundary approach chosen above. Estimates of neighborhood students, 2025–26.

How this was built

Rebuilding PPS's proposed boundaries

PPS's Oct 6, 2026 board packet includes the superintendent's memo and 36×48-inch attendance-area maps for Scenario A, Scenario B and the status quo at each grade band. The maps are vector PDFs exported from ArcGIS Pro, with no geographic coordinates.

  1. Georeferencing. The boundary lines were extracted from the status-quo K–5 map and fitted to the City of Portland's current attendance-area layer, first with school labels as control points and then by iterative closest-point matching on the lines themselves. Median distance between the map's lines and the city layer after fitting: 0.6 ft. All the scenario maps share the same frame, so the same transform applies to A and B.
  2. Erased and new lines. A boundary counts as erased when it is drawn on the status-quo map but not on the scenario map, and it borders a closing school. New lines inside a closing school's area split that area into pieces.
  3. Receivers. The memo names every receiving school, at most two per closure. Each piece of a closing school's area goes to one of those receivers: the only one, or, for a two-way split, whichever receiver is the shorter average walk for that piece.
  4. Checks against the memo. The memo gives split percentages for three closures. The rebuilt splits, weighted by children living in each piece: Maplewood 66 / 34 to Hayhurst / Rieke (memo: 70 / 30); Stephenson 72 / 28 to Markham / Capitol Hill (memo: 70 / 30); Buckman 56 / 44 to Abernethy / Sunnyside (memo: 50 / 50).
  5. Other shifts. Two boundary moves between schools that stay open are described in writing and included: Duniway's southern edge to Llewellyn (A) and part of Whitman to Lewis (B). Both scenarios list more than 30 other "boundary change" schools. Those smaller adjustments could not be read reliably from the maps and are not modeled.
  6. Special cases. Lent enrolls only Spanish immersion students; non-immersion students from the Lent area attend Marysville today (115 of them in October 2025), and the slides send them to Kelly. Rigler is also a whole-school Spanish immersion program, but most of its students live in its neighborhood, so it is treated as that neighborhood's school. César Chávez becomes a Spanish immersion hub, so its neighborhood K–5 students go to Rosa Parks.
Measuring travel time

Travel times come from Felt's isochrone() SQL function, which runs on a self-hosted Valhalla routing engine using OpenStreetMap streets. For each of the 67 elementary, K–8 and middle schools with an attendance area, nested isochrones were traced at fine steps: walking every 3 minutes to an hour, then up to 105 minutes; biking every 2 minutes to 30, then up to 50; driving every minute to 15, then 17, 20 and 25. That is about 4,100 isochrones.

The district was divided into about 3,900 hexagons, each about 0.1 km² (H3 resolution 9). For each hexagon and school, the time is read from the smallest isochrone containing the hexagon's center and interpolated by distance between neighboring bands.

  • Walking uses Valhalla's default adult pace, about 5.1 km/h. Young children walk slower, so real walking times are likely longer.
  • Biking uses Valhalla's default bicycle profile, which favors bike-friendly streets.
  • Driving is free-flow time with no traffic, parking or drop-off line. It also stands in for the school bus here. Real bus rides are longer because routes make stops.
  • Cross-checks. ppsdata.info computed driving times between 119 pairs of schools with a different routing engine (OSRM). The two sets agree closely (correlation 0.96), with Valhalla's times about 19% shorter. Walking and biking times for 48 randomly chosen home–school trips were rerouted with OSRM's foot and bike profiles: correlation 0.996 and 0.994, with Valhalla about 14% shorter. The minutes here therefore lean low, not high.
  • One mile of walking is about 19 minutes at this pace. PPS buses K–5 students who live more than 1 mile from school and middle schoolers beyond 1.5 miles (about 28 minutes). The "over 1 mile" figures use those minute thresholds as a proxy for bus eligibility.
Immersion students: where they live and how far they go

Which programs. The scenarios move ten immersion programs: Spanish from Atkinson to Lent, from Beach, James John and Sitton to César Chávez, and from Scott to Rigler; Mandarin from Clark to Woodstock and from MLK Jr to Boise-Eliot/Humboldt; Vietnamese from Rose City Park to Vestal (Scenario A only); and at middle school, Spanish from Beaumont to Roseway Heights and from Ockley Green to George. César Chávez's own grades 6–8 also move to George, but PPS's counts don't separate its 6–8 immersion students, so they are not included.

How many, and from where. PPS's October 2025 enrollment summary splits each program's students into those from the school's own neighborhood and those from each high-school area. Students from outside PPS or with an unknown address are left out of the map.

Where in each area. Own-neighborhood students are spread over the school's attendance area by school-age children, as for neighborhood students. Students from a high-school area are spread over that area by school-age children, weighted toward homes closer to the program: each added minute of driving from the program cuts a home's weight by about a third. That rate was fitted to the high-school-area split of all 23 elementary and middle immersion programs, and it matches where students come from much better than spreading them evenly. These are estimates for whole areas, not addresses.

Travel times. Same method as the rest of the page, with longer isochrones (walks to 2 hours, bike rides to 90 minutes, drives to 40 minutes) from the 18 schools involved. Felt's routing stops at 2 hours, so longer walks are estimated from bike times at each school's own walk-to-bike ratio and marked “≈”. The times are door to door; they don't include any school bus PPS may provide for immersion students.

Not modeled. Families who leave a program rather than follow it, and building capacity at the new sites.

Who counts as a student here

How many students. PPS's October 2025 enrollment summary counts, for every school, the students who live in its own neighborhood and attend its neighborhood program. Those counts are the student numbers here: they leave out students who transfer in from other neighborhoods and students in immersion programs. For K–8 schools they are split between K–5 and grades 6–8 by grade enrollment.

Where they live. Each school's count is spread over its attendance area in proportion to school-age children from the 2020 Census Demographic and Housing Characteristics file (table P12, census blocks): ages 5–9 plus a fifth of ages 10–14 for K–5, and three fifths of ages 10–14 for grades 6–8. Block counts are split into the hexagons by area. Block-level Census counts include deliberate statistical noise for privacy, which mostly averages out at the hexagon scale.

Student-minutes. With "Weight by number of students" on, each hexagon shows its students × their minutes of travel, one way. Summed over the map, those match the headline averages.

Immersion students are counted separately. The neighborhood numbers leave them out. Switch the map to “Immersion” families, or see “Immersion programs that move,” for the students in programs that change sites.

Building loads in the trade-off chart add each school's immersion students, following the program moves, to its neighborhood students. Capacity is the 2021 Long-Range Facility Plan's functional capacity. These are 2025–26 estimates; PPS's own figures use 2031–32 projections and will differ.

The other boundary approaches

All five approaches close the same schools and make the same program and grade-level changes. They differ in where students from closing schools are sent: K–5 students from closing elementary schools, and grade 6–8 students from Sellwood and the seven K–8 schools that become K–5. The same rule is applied to both, using each middle school's functional capacity. The alternatives leave the two optional middle-school area shifts in PPS's plan (Maplewood to Gray, Irvington to Beaumont) where they are.

ApproachRule
PPS planPPS's receivers and lines, rebuilt from its maps as described above.
PPS rules, shortest tripsKeeps PPS's own rules: at most two receivers per closure, near the building's capacity. Among the six nearest open schools, it picks the one or two that minimize total walking time. Each home goes to the closer of the pair.
Shortest walks within capacityA linear program that sends every home to an open school, minimizing total walking time while keeping each building under 95% of functional capacity. There is no limit on how many schools a closure's area splits among.
Nearest open schoolEvery home goes to the closest open neighborhood school by walking time, ignoring capacity. This is the floor on how little a closure can add.
Whole school to one receiverEach closing school's whole area goes to the single open school with the shortest average walk, which keeps classmates together.
Paths considered and set aside
  • Polygonizing the PDF lines directly. Gaps where lines meet the river or the map frame let neighboring areas bleed together. The approach was replaced with "current GIS polygons, minus erased lines, plus new lines."
  • Labeling map areas by their text labels. Labels sit at uneven offsets from school symbols and sometimes merge with street names. School building locations were used instead.
  • Reading every boundary shift between open schools from the maps. River and frame edges look like erased lines on one map and not the other. Only the two shifts PPS describes in writing were kept.
  • The City's older open-data boundary layer. It predates the 2025 Southeast changes (no Kellogg or Harriet Tubman). The current City of Portland School Boundaries service, last edited Nov 3, 2025, was used instead.
  • Census API for age detail. The API now requires a key, so the bulk 2020 files were used instead: the redistricting file for children under 18, and the DHC file for ages 5–9 and 10–14. Newer American Community Survey estimates exist only for larger block groups and carry sampling error, so the 2020 block counts were kept.
  • Live Felt map embeds driven by the JS SDK. This page runs in a sandbox that blocks third-party frames, so the maps are drawn here from the same Felt-computed data over a Felt-rendered basemap. The Felt maps are linked below.
Limitations
  • The rebuilt K–5 lines follow PPS's maps closely where closures are involved, but are drawn on a ~0.1 km² hexagon grid. Homes within a block or two of a new line may be assigned to the wrong side.
  • About 30 smaller boundary changes at open schools are not modeled, and the middle-school lines follow the memo's rules rather than the 6–8 maps.
  • About 7 in 10 PPS students attend their neighborhood school. Students who transfer, attend focus options or charters, or are in immersion programs are not in the counts.
  • Walk times assume an adult pace on any public street or path, and ignore hills, busy crossings and hazard-based busing.
  • Driving and bus times are free-flow. Bus routes, stops and bell times are not modeled.
Sources and maps
  • PPS, Rightsizing: Comparing three scenarios (Oct 4–5, 2026), the Scenario Release Memo, the 10/06/26 board presentation, and the scenario attendance-area maps, from the Oct 6, 2026 board agenda.
  • ppsdata.info and github.com/meub/pps-data: school roster, enrollment, capacity, immersion counts and boundary extraction.
  • City of Portland, School Boundaries feature service (attendance areas, edited Nov 3, 2025). Portland neighborhood boundaries from PortlandMaps open data.
  • Oregon Department of Education, Fall Membership 2025–26 (grade-level enrollment).
  • US Census Bureau, 2020 redistricting data (P.L. 94-171) and TIGER/Line 2020 blocks.
  • Felt isochrone() (Valhalla on OpenStreetMap) for all travel times.
  • PPS Student Transportation Service Guidelines (rev. 2024) for bus-eligibility distances.