CORVALLIS, Ore. -- Riley Nelson threw for 217 yards and three touchdowns and rushed for 87 yards to lead BYU over Oregon State 38-28 on Saturday.
Cody Hoffman had nine receptions for 162 yards and a TD for the Cougars (5-2).
Sean Mannion was 27 of 43 passing for 306 yards for Oregon State (1-5) but was intercepted twice, bringing his season total to nine.
BYU has won four straight. It is 3-0 since Nelson replaced Jake Heaps in the middle of a 27-24 win over Utah State on Sept. 30.
Michael Alisa rushed for 84 yards as the Cougars compiled 282 as a team. They averaged 116 yards on the ground in their first six games.
BYU was 6 for 6 in the red zone and maintained control of the game despite three turnovers.
The Cougars took a 14-0 lead on touchdown runs by Alisa and JJ Di Luigi. Oregon State tied the game after a 1-yard touchdown run by Mannion and Jordan Poyer's 51-yard interception return for a score.
The second half belonged to the Cougars, who rolled off 24 points as Nelson threw touchdown passes to Hoffman, JD Falslev and Kaneakua Friel.
Meanwhile, linebacker Brandon Ogletree wreaked havoc on the Oregon State offense, intercepting a pass and forcing two fumbles on three straight possessions.
Oregon State hoped to the return of tailback Malcolm Agnew would boost its struggling running game, but the team managed just 59 yards on the ground.
It was a victorious homecoming for Cougars head coach Bronco Mendenhall, who played for the Beavers in 1986-87 and served as defensive coordinator under then-Oregon State coach Jerry Pettibone in 1995-96.
Oregon State defensive tackle Castro Masaniai fractured his fibula in the first half.