Tuesday, July 14, 2026

The Navajo Region: Six Districts Where Fewer Than 70% of Students Graduate

In northwestern New Mexico, six districts serving predominantly Native American communities all graduate below 70%, forming a regional crisis that spans the Navajo Nation.

In northwestern New Mexico, where the Navajo Nation extends across mesas and high desert, six school districts share a common problem. None of them graduates 70% of their students on time.

Zuni Public SchoolsET sits at 55.0%. Cuba Independent SchoolsET at 62.3%. Bloomfield SchoolsET at 65.6%. Farmington Municipal SchoolsET at 66.2%. Gallup McKinley County SchoolsET at 67.2%. Central Consolidated SchoolsET at 67.5%.

Navajo region district graduation rates compared to state average

Every one of these districts falls below the state average of 71.1%. Together, they form a regional graduation crisis that is not about one failing school or one struggling district but about an entire geography where the education system produces outcomes that fall short.

Parallel trajectories

The six districts have not moved in lockstep, but they have shared a pattern over the ACGR era: oscillation within a band, without sustained breakthrough.

Navajo region district trends, 2009-2017

Farmington's trajectory is the most instructive. The district reached 71.7% in 2015, briefly crossing the state average. Then it fell back to 71.0% in 2016 and 66.2% in 2017 -- a 5.5-point decline in two years that erased three years of gains. The pattern has repeated across the data window: the rate climbed from 65.9% (2011) to 70.5% (2012), dropped to 67.5% (2013), recovered to 69.6% (2014) and 71.7% (2015), then dropped again.

Farmington graduation rate oscillation, 2009-2017

Gallup-McKinley, the region's largest district, has shown a similar pattern of modest gains followed by retreats. Central Consolidated and Bloomfield have stayed in the mid-60s throughout. Cuba has been the most volatile, swinging from the 50s to the 70s.

Zuni is the outlier in scale -- its 55.0% rate in 2017 is far below the others -- but the pattern of instability is the same. The district reached 79.4% in 2012, crashed to 54.9% in 2014, partially recovered, and crashed again.

What unites these districts

Geography is the obvious common factor. These districts span the Navajo Nation and the Zuni Pueblo reservation in the Four Corners region. They serve predominantly Native American student populations in communities where poverty rates are among the highest in the state and the country.

But other factors may matter as much as demographics. These districts face chronic teacher shortages, with vacancy rates that far exceed the state average. The distances involved -- some students travel 60 miles or more each way on dirt roads -- create attendance challenges that compound over four years. And the relationship between tribal sovereignty and state education policy creates governance complexity that urban districts do not face.

The Yazzie/Martinez ruling, which found the state had systematically failed its Native American students, cited exactly this kind of regional pattern. The court found that the state had not provided the resources, the culturally relevant curriculum, or the teacher quality that these communities needed.

The regional context

The six districts collectively educate a substantial share of New Mexico's Native American student population. Gallup-McKinley alone is one of the 10 largest districts in the state. Farmington is a mid-size city that serves both Navajo Nation students and students from the broader San Juan County area.

The regional nature of the problem is significant because it suggests causes that operate at a level above individual district leadership. A single failing district can be explained by poor management or bad luck. Six districts, spanning hundreds of miles and serving different tribal communities, all stuck below 70% suggests systemic forces at work.

Those forces might include the same ones that produce low graduation rates in rural and reservation communities nationwide: inadequate funding formulas that do not account for the cost of serving remote populations, difficulty recruiting and retaining teachers in isolated areas, and the compounding effects of poverty on educational attainment.

Since 2017

The data ends with the Class of 2017. The intervening years have brought both additional challenges (COVID-19 hit Navajo Nation communities with devastating force) and additional resources (the Yazzie/Martinez compliance funding, federal pandemic relief dollars, and increased tribal investment in education).

Whether those investments have broken the pattern of oscillation in these districts is a question that more recent data would need to answer. Through 2017, the pattern was clear: improvement in these communities has been real but fragile, gained and lost in cycles that never produced the sustained movement needed to close the gap with the rest of the state.

Data source

Data from the New Mexico Public Education Department. Graduation rates are 4-year Adjusted Cohort Graduation Rates (ACGR) for cohorts 2009-2017.

Detailed code that reproduces the analysis and figures in this article is available exclusively to EdTribune subscribers.

library(nmschooldata)
library(dplyr)

grad_data <- bind_rows(lapply(2009:2017, function(y) fetch_graduation(y, use_cache = TRUE)))
grad_data$grad_rate <- grad_data$grad_rate * 100

nav_2017 <- grad_data |>
  filter(is_district == TRUE, end_year == 2017, subgroup == "all",
         grepl("Gallup|Farmington|Bloomfield|Central Consolidated|Cuba|Zuni", district_name, ignore.case = TRUE)) |>
  select(district_name, grad_rate) |> arrange(grad_rate)
print(nav_2017)
cat("All below state avg (71.1%):", all(nav_2017$grad_rate < 71.1), "\n")

# Farmington trajectory
farm <- grad_data |>
  filter(is_district == TRUE, subgroup == "all", grepl("Farmington|FARMINGTON", district_name)) |>
  select(end_year, grad_rate) |> arrange(end_year)
cat("Farmington range:", min(farm$grad_rate), "to", max(farm$grad_rate), "\n")
cat("Farmington 2015:", farm$grad_rate[farm$end_year == 2015], "\n")
cat("Farmington 2017:", farm$grad_rate[farm$end_year == 2017], "\n")

Discussion

Loading comments...