Brock Purdy threw for 307 yards and two touchdowns and the Iowa State defense made a late stand in the closing minutes as the Cyclones knocked off No. 8 Oklahoma State 24-21 on Saturday.
Breece Hall scored the go-ahead touchdown with 5:29 left, then the Cyclones' defense forced a three-and-out and stopped the Cowboys on fourth down with 1:09 left.
Purdy kneeled twice in victory formation, and fans stormed the field at Jack Trice Stadium as the clock ran out to celebrate Iowa State's first win over a top-10 opponent since 2018.
"It was super fun," Cyclones receiver Xavier Hutchinson said of the postgame scene. "It wasn't necessarily why you play the game, but it was (one of) the pros to playing the game."
It was the seventh straight Oklahoma State-Iowa State game decided by seven points or less.
Purdy completed 27 of 33 passes, and Hutchinson had a career-best 12 passes for 125 yards and two touchdowns for the Cyclones (5-2, 3-1 Big 12).
"I'm just so happy for our team," Purdy said. "It felt good to finish it the right way."
Connecting you to your favorite North Texas sports teams as well as sports news around the globe.
Spencer Sanders went 15 for 24 passing for Oklahoma State (6-1, 3-1), finishing with 225 yards and three touchdowns.
Iowa State led 17-14 in the fourth quarter and was driving to extend its lead until Malcolm Rodriguez and Jarrick Bernard-Converse stuffed Purdy on a fourth-and-2 run at the Cowboys' 42.
Four plays later, Tay Martin caught a 25-yard touchdown pass to put the Cowboys up 21-17.
Purdy then led the Cyclones on an 85-yard drive that Hall finished with his short TD run. Hall extended to 19 his Big 12 record for consecutive games with a rushing touchdown.
"The character of this game is what we've talked about," Iowa State coach Matt Campbell said. "It's not always going to be pretty. It's not always going to be easy."
Will McDonald had back-to-back sacks to snuff the Cowboys' next series. Oklahoma State's final possession reached the Iowa State 45. On fourth-and-2, Sanders passed to Brennan Presley, but Isheem Young and Kym-Mani King combined to keep Presley inches short. The spot of the ball stood after a video review.
"I just thought it was great recognition of what was going on," Campbell said of Young and King's decisive stop.
Presley caught two touchdown passes in the first half and finished with 84 receiving yards.
His first touchdown came on a 5-yard toss from Sanders, giving Oklahoma State a 7-0 lead. On his second TD, the 5-foot-8 Presley leaped over two defenders and landed in the end zone, putting the Cowboys up 14-7 at the half.
Hutchinson scored Iowa State's lone touchdown of the first half on a 1-yard pass from Purdy.
Hutchinson appeared to score on a 54-yard pass early in the third period, but he was penalized for unsportsmanlike conduct for taunting before he reached the end zone.
That placed the ball on the Oklahoma State 18, and three plays later Hutchinson caught a tying 9-yard touchdown pass, stopping in the back corner of the end zone to blow a kiss to fans.
Iowa State, Oklahoma State and Baylor are all tied for second place in the Big 12 behind Oklahoma.
Oklahoma State: The Cowboys' defense had no answer for Hutchinson, who took advantage of mostly man coverage, and the offense converted only 2 of 10 third downs.
Iowa State: The Cyclones won their third straight game and first over a top-10 opponent since they beat then-No. 6 West Virginia on Oct. 13, 2018.
Iowa State probably will be back in the Top 25 after a four-week absence. Oklahoma State likely will fall out of the top 10 after losing for the first time in five one-score games.
Oklahoma State hosts Kansas on Oct. 30.
Iowa State visits West Virginia on Oct. 30.