The final week of the MHSAA football regular season is complete. Conference champions have been crowned, playoff spots will be announced Sunday, and for half of the state’s teams, their seniors played their final football game of their lives. It’s always a special and emotional week of football, and our team at MSR has all of the scores below. In addition, you can find final conference standings on the Standings page, and the Week 9 audio recap on the MSR Football Show page. On Sunday, visit our Facebook page for a Football Playoff Preview Show, where we react to the bracket announcements.

 

OK RED

Caledonia 14 Jenison 7: The Fighting Scots take down the ‘Cats, but are unable to play spoilers and sneak into the postseason. Caledonia got an overtime touchdown from Ryne Wysocki before stopping Jenison to secure the win. Wysocki finished with 100 rushing yards on 27 carries, while quarterback Andrew Hanna also rushed for a touchdown and 59 yards. Caledonia finishes #33 in Division 1, while Jenison stays in the postseason at #32.

East Kentwood 49 Grand Haven 29

Hudsonville 28 Grandville 25: The Eagles complete their first undefeated regular season since 1978 (8-0-1) with a win over Grandville. At the half, Hudsonville trailed 10-7, but Braden VanLaecke threw a pair of touchdown passes to push the Eagles ahead. Owen Haarsma also finished with two touchdowns, both rushing scores.

Rockford 49 West Ottawa 15

 

OK BLACK

East Grand Rapids 34 Forest Hills Central 6

GR Catholic Central 21 South Christian 14: The Cougars are perfect, completing a 9-0 regular season for the first time since 2021. Check out the game recap here!

Forest Hills Northern 70 Northview 35: FHN scored the most points in a game since they defeated Grand Rapids Central 74-0 in 2009 in the Rams’ final game as a program. This win doesn’t end Northview’s program, but it does end their 2025 season by eliminating them from the postseason. Owen Ostipow was remarkable, rushing 19 times for 430 yards and five touchdowns, while also throwing a sixth score. That is the 13th most rushing yards by a single player in MHSAA single game history. Colton Sawyer added 165 rushing yards and three scores, as the victors racked up 635 rushing yards as a team, unofficially the 4th highest total in MHSAA single game history. The 670 total offensive yards is unofficially the sixth highest total in MHSAA history.

Holland Christian 35 GR Christian 22

Middleville 49 Wyoming 0

Benton Harbor 12 Ottawa Hills 6

 

OK GOLD

East Grand Rapids 34 Forest Hills Central 6

GR Catholic Central 21 South Christian 14: The Cougars are perfect, completing a 9-0 regular season for the first time since 2021. Check out the game recap here!

West Catholic 28 Zeeland West 16: The Falcons win this battle of the birds, finishing with an 8-1 record. Both teams will qualify for the playoffs this season. Read about the double Octopus evening here!

Pontiac Notre Dame Prep 34 Unity Christian 25

Zeeland East 28 Hamilton 21

 

OK GREEN

Forest Hills Eastern 37 Reeths-Puffer 22

Byron Center 38 Morris (IL) 26: The Bulldogs secure their fifth straight victory to end the regular season at 6-3, securing their bid in the postseason. Easton Wychers threw for three touchdowns in this victory, connecting with three different receivers for a score. Keaton VanKampen and Owen DeYoung each had two interceptions, as Byron Center forced six Morris turnovers.

Forest Hills Northern 70 Northview 35: FHN scored the most points in a game since they defeated Grand Rapids Central 74-0 in 2009 in the Rams’ final game as a program. This win doesn’t end Northview’s program, but it does end their 2025 season by eliminating them from the postseason. Owen Ostipow was remarkable, rushing 19 times for 430 yards and five touchdowns, while also throwing a sixth score. That is the 13th most rushing yards by a single player in MHSAA single game history. Colton Sawyer added 165 rushing yards and three scores, as the victors racked up 635 rushing yards as a team, unofficially the 4th highest total in MHSAA single game history. The 670 total offensive yards is unofficially the sixth highest total in MHSAA history.

Middleville 49 Wyoming 0

Toledo Central Catholic (OH) 35 Mona Shores 13

Cincinnati Moeller (OH) 56 Muskegon 13

GR Union 46 Burton Atherton 0

 

OK SILVER

Belding 52 Godwin Heights 20

Hopkins 12 Fruitport 7

Olivet 49 Comstock Park 14

Wyoming Kelloggsville 40 Holland 34

 

OK WHITE

Forest Hills Eastern 37 Reeths-Puffer 22

West Catholic 28 Zeeland West 16: The Falcons win this battle of the birds, finishing with an 8-1 record. Both teams will qualify for the playoffs this season. Read about the double Octopus evening here!

Hastings 48 Wayland 34: The Saxons defeat their neighbors in a Week 9 non-league bout. Each team relies on their ground attack, as there was just one completed pass. Hastings rushed 42 times for 530 yards, with Jonah Hamp finishing with 267 yards and four scores on twelve carries. In defeat, Wayland rushed 56 times for 415 yards, with Jake Reeder turning 35 carries into 204 yards and two touchdowns.

Holland Christian 35 GR Christian 22: Needing a win to qualify for the postseason, the Maroons got it done. Grif Leuuw was 7/13 passing for 124 yards and a score, while rushing for 93 yards and another touchdown. Zaye Myaard rushed 11 times for 180 yards and a score. Both of these teams will play next Friday in the postseason.

Spring Lake 49 Allendale 20

Zeeland East 28 Hamilton 21

 

RIVER CITIES ALLIANCE

Cedar Springs 27 Coopersville 21: The Red Hawks needed overtime to finally best the Broncos. Cedar Springs finishes with an 8-1 record this year, and although Coopersville is 4-5, they will likely be playing in the postseason. Read the game recap here!

Kenowa Hills 56 Sparta 35: The Knights won their first RCA title with a perfect league record. Lundon Hampton rushed for five touchdowns in this victory, as Kenowa’s 8-1 regular season record is their best since consecutive 8-1 seasons in 2008-09.

Lowell 37 Greenville 13

Spring Lake 49 Allendale 20

 

CSAA GOLD

Big Rapids 48 Alma 7: The Cardinals bounced back from their tough loss to Coopersville, thrashing Alma, who needed to win to secure a playoff berth. Big Rapids rushed 36 times for 296 yards and six touchdowns, with eleven different players rushing for at least 8 yards. Freddy Ortiz and Jack Bollman each rushed for two touchdowns, while Bollman also caught a touchdown from Cole Haist.

Kent City 38 Grant 8

Ludington 48 Tri-County 7

Reed City 52 Standish-Sterling 15

Lakeview 7 Chippewa Hills 0

Newaygo 26 Fremont 16: After eight frustrating defeats, Newaygo ends their 2025 campaign with its first victory. Damone Moore rushed for two touchdowns, while Nathan Watson secured a 57-yard touchdown pass. The Lions rushed for 263 yards on 54 carries in this victory.

 

CSAA SILVER

Central Montcalm 6o Hart 24

Kent City 38 Grant 8

Saranac 39 White Cloud 0

Lakeview 7 Chippewa Hills 0

 

WMC LAKES

Ludington 48 Tri-County 7

Mason County Central 37 Manistee 24

Montague 28 Ravenna 25

Orchard View 35 Shelby 34

Portland 35 Whitehall 7

Oakridge 41 North Muskegon 27

Newaygo 26 Fremont 16: After eight frustrating defeats, Newaygo ends their 2025 campaign with its first victory. Damone Moore rushed for two touchdowns, while Nathan Watson secured a 57-yard touchdown pass. The Lions rushed for 263 yards on 54 carries in this victory.

 

WMC RIVERS

Central Montcalm 6o Hart 24: The Hornets locked themselves into the playoffs, while ending Hart’s season simultaneously. Zayne Cooper passed for 367 yards and five touchdowns. Central Montcalm scored forty first half points, and they scored the final 36 points in this game after the game was tied at 24 with six minutes left in the first half.

Mason County Central 37 Manistee 24

Montague 28 Ravenna 25

Orchard View 35 Shelby 34

Oakridge 41 North Muskegon 27

 

OTHER 11-MAN

Buchanan 46 Muskegon Catholic Central 6: Needing to win to qualify for the state playoffs, MCC ran into a buzzsaw when it faced Buchanan. The Bucks scored the first 46 points, outgaining the Crusaders 285-37. MCC failed to complete their lone pass attempt, and they only had two first downs. This is the first time that MCC has missed two straight playoffs since 2003-04, and their four wins in two seasons is their lowest total since they went 2-16 in 1962-63.

Cassopolis 28 Maple Valley 21

Frankenmuth 42 Armada 14

Freeland 47 Cadillac 28: Freeland cruised to victory in a game that was much more lopsided than the final score indicates. Freeland scored the game’s first 41 points, and led 47-6, before the Vikings got three late touchdowns to trim the final deficit. Max Heyn had just nine carries for 108 yards and two touchdowns, while he completed five passes for 100 yards and four more touchdowns.

Kalamazoo Central 52 Loy Norrix 10

Kalamazoo United 25 Schoolcraft 20

Lawton 23 Constantine 14

Portage Northern 46 Stevensville Lakeshore 21

Traverse City West 21 Traverse City Central 20

East Jordan 20 Elk Rapids 6

Creighton Prep (NE) 35 Norfolk (NE) 13

 

SWMFL-I

Brown City 44 Bridgman 36

Gobles 62 Twin City Sharks 50

Calvin Christian 49 Wyoming Lee 6

Marcellus 38 Bangor 0

Martin 50 Northpointe Christian 7

Eau Claire v New Buffalo – score not yet reported

Fennville v Onaway, Saturday – 12:00

 

SWMFL-II

Holton 50 Muskegon Heights 6: The Red Devils captured their second win of the season, taking care of their lakeshore rivals and rushing for 378 yards as a team. Ryan Cross was the only of six Holton players to score twice, rushing for touchdowns of 11 and 38 yards. Tayshawn Robertson-Moody led Muskegon Heights with 71 rushing yards on just eight carries.

GR Sacred Heart 61 Brethren 8

Marcellus 38 Bangor 0

Martin 50 Northpointe Christian 7

Gobles 62 Twin City Sharks 50

Lawrence def Bloomingdale, forfeit

Eau Claire v New Buffalo – score not yet reported

 

OTHER 8-MAN

Concord 50 Bellevue 10: On Senior Night, the seniors showed out for the ‘Jackets. Gavin Riske finished with 500 career completions, as he was 11/13 on Friday, throwing two touchdowns and catching a third. Trenton Frazer shattered every school rushing record this season, and he finished his year with 170 rushing yards and four total touchdowns.

Mendon 76 Lenawee Christian 43: The Hornets complete their first undefeated regular season since 2017 with a rout of Lenawee Christian. Mendon rushed 43 times for 521 yards, with Owen Gorham leading the way with 301 yards and four touchdowns. James Lux rushed 10 times for 132 yards and three touchdowns, while also adding a 70-yard fumble recovery touchdown.

Rudyard 26 Newberry 8: A stunning defeat at the hands of the Bulldogs ends Newberry’s season. The Indians finish 17th in playoff points after a loss to the previously 2-6 Rudyard squad.