COLUMBUS, Ohio -- Second-ranked Ohio State's 40-20 victory over Buffalo on Saturday at Ohio Stadium was not the blowout that many expected, but it extended the nation's longest winning streak to 13 games and kept coach Urban Meyer unbeaten as he begins his second season with the Buckeyes.
Ohio State started fast behind Heisman Trophy candidate Braxton Miller, bolting to a 23-0 lead in the first quarter and then coasting to its 35th straight win in home openers despite a few brain and leg cramps along the way.
The junior quarterback completed 15 of 22 passes for 178 yards and two touchdowns, with one interception that was returned for a TD, and rushed for 77 yards on 17 carries.
"His statistics aren't bad," Meyer said. "I probably see it the way you saw it. He came out of the chute fast but then he started cramping. I think he can do better."
Senior running back Jordan Hall, starting in place of suspended Carlos Hyde, rushed for a career-high 159 yards and two touchdowns on 21 carries. The Buckeyes gained 261 yards on the ground to Buffalo's 73.
"It was a good win. We'll take it," Hall said. "But we're not satisfied with it. We know there's a lot to work on."
The Bulls, who finished with a 4-8 record last season and came in as 34-point underdogs, made the game interesting early in the third quarter.
On the first possession, quarterback Joe Licata found Alex Neutz for a 10-yard touchdown pass that trimmed Ohio State's lead to 30-20.
Buffalo could have pulled even closer, but a personal foul penalty against Buffalo nullified a Miller fumble at his 1 on a sack. Ohio State took advantage of its good fortune, driving 91 yards in 14 plays to boost the margin to 37-20 on a 21-yard touchdown pass from backup quarterback Kenny Guiton -- subbing for the cramping Miller -- to wide receiver Chris Fields.
"I really think that (fumble) would have changed the game," Buffalo standout linebacker Khalil Mack said. "That was a big blow, but we fought back."
The Buckeyes capped the scoring with a 39-yard field goal by Drew Basil with 7:05 remaining in the game.
"When we needed a couple of plays, (Miller) had a couple of big ones for us," Meyer said. "Quarterbacks have to do that. That's part of the job description -- to get us out of a jam and be a great player -- and at times he looked like that player."
Licata helped keep Buffalo in the game. He connected on 19 of 32 passes for 185 yards with two touchdowns and one interception. Neutz was on the receiving end of nine passes for 98 yards.
"We don't feel good about losing," Licata said. "But there are a lot of positives that came out of this."
It looked like the Buckeyes would make the game a blowout in the first quarter, scoring on all three of their possessions.
Miller, a third-year starter as a junior, made a Heisman statement with his first throw, a 47-yard touchdown strike to junior receiver Devin Smith on the opening possession.
Miller was just as impressive on the next drive, completing all three of his passes, including a 7-yard touchdown throw to Fields. Guiton's two-point conversion pass to Hall made it 16-0 with 7:05 left in the first quarter.
Hall boosted the Buckeyes' lead to 23-0 with 38 seconds left in the first quarter, bursting untouched up the middle for a career-long 49-yard touchdown run.
"We preached all week about coming hard and starting fast, and I think they did that," Meyer said. "The two quick scores in the first quarter was script. We can't play much better than our guys did. We were pushing the ball down the field and our guys were making plays."
Two Ohio State mistakes gave Buffalo some life and led to second-quarter touchdowns.
After a fumble by Buckeyes freshman speedster Dontre Wilson, Licata threw a 16-yard touchdown pass to Matt Weiser to make it 23-7 with 9:18 left in the second quarter. On Ohio State's next possession, Mack intercepted a Miller pass and returned it 45 yards for a touchdown, pulling Buffalo to 23-13.
"I give a lot of credit to Ohio State for coming out and putting us down 23-0 early," Buffalo coach Jeff Quinn said. "But I was proud of the way our kids responded. We were able to outscore them in the second, third and fourth quarters."
The mistakes appeared to light a fire under the Buckeyes. Wilson returned the ensuing kickoff 51 yards and Hall sprinted 37 yards on the next play for his second touchdown of the game and a 30-13 lead.
Mack was a beast for the Bulls. In addition to the interception, he finished with eight tackles and 2 1/2 sacks.
"His presence was noticed without a doubt and against quality opposition," Quinn said.
Ohio State outgained Buffalo 460-258 in total yards.
"When you score 40 points and gain 460 yards or something like that and you're disappointed, that's a good sign," Meyer said. "But we've got a long way to go."
NOTES: Ohio State All-Big Ten linebacker Ryan Shazier went to the locker room in the first half with cramps but returned in the third quarter. He still led the team with 6 1/2 tackles. ... Buckeyes starting safety C.J. Barnett missed the game with a lower leg injury. ... Ohio State defensive lineman Tommy Schutt is out six to eight weeks with a broken foot. Chase Farris moved from the offensive line to defensive line this week to add depth. ... Buffalo defensive coordinator Lou Tepper is quite familiar with Ohio State, having faced the Buckeyes while he was coach at Illinois from 1991 to 1996. Tepper's teams beat Ohio State twice, but his 1995 Fighting Illini gave up 314 yards rushing to Heisman Trophy winner Eddie George. ... Buffalo's final game last season also was in Columbus. The Bulls lost to Bowling Green during Thanksgiving weekend at Crew Stadium, home of Columbus' Major League soccer team. ... Ohio State and Buffalo met for the first time in history. ... Ohio State last lost a season opener in 1999.