The California kid looked right at home in Arizona. Just one problem for the 49ers: he didn't play for them.
Buffalo quarterback Josh Allen, who grew up a 49ers fan in the central California town of Firebaugh, lit up the 49ers' pass defense for four touchdown passes and 375 yards Monday night.
The end result: a 34-24 loss by the 49ers at State Farm Stadium in Glendale, Ariz., where they've relocated for much of this month after Santa Clara County's COVID-19 precautions banning contact sports.
With four games to go, the 49ers (5-7) may not need anywhere to play after that, unless they win out to improbably make the playoffs and defend their NFC title. Washington, which upset previously unbeaten Pittsburgh earlier Monday, is the 49ers' next visitor at State Farm Stadium on Sunday.
Allen and the AFC East-leading Bills (9-3) preyed on the 49ers' fourth-ranked pass defense, which struggled with an unproductive pass rush and an injury-laden secondary that was down to fourth-string nickel back Dontae Johnson.
Here are the highs, lows and all you need to know:
— AIYUK'S HOMECOMING: Wide receiver Brandon Aiyuk, who played 17 miles away the past two years at Arizona State, put the 49ers ahead 7-0 with a 2-yard touchdown catch. In an even better catch, he made a 49-yard, spinning reception in the third quarter to spark a touchdown drive pulling the 49ers within 27-17. He finished with five catches for 95 yards.
But Aiyuk's night had mixed results. He bobbled a Nick Mullens pass that Micah Hyde intercepted and returned to the 5-yard line, setting up a BIlls field goal. Earlier in the quarter, Aiyuk missed a block that resulted in a 9-yard loss on a Tevin Coleman run.
Aiyuk's first-quarter touchdown was his fourth in five games; he missed two of the past three games while on COVID-19 reserve, and a positive test kept him out of the 49ers' previous win against the Rams. This touchdown was a worthy reward for Aiyuk's efforts on the 49ers' preceding possession, in which he drew a pass-interference penalty on third down against Levi Wallace and later made a 11-yard catch to the Bills' 10.
— CALI KID: Allen rallied up against his childhood team to post his sixth 300-yard passing game of the season, one shy of Drew Bledsoe's 2002 club record. Allen was 32-of-40 with no interceptions; he is the first passer in Bills history to throw 40 passes and complete at least 80% of them, according to the Elias Sports Bureau.
Allen's first touchdown passes found Cole Beasley (5 yards) and Dawson Knox (4 yards) to bail the Bills from a 7-0 hole. Safety Tarvarius Moore blew assignment to result in Allen's third and fourth touchdown passes to wide open receivers — a 23-yard toss to a Isaiah McKenzie in the third quarter and a 28-yarder to Gabriel Davis.
By halftime, Allen's 236 yards eclipsed the 49ers' average of 206. 5 passing yards per game, the NFL's fourth-best mark. Allen engineered a field goal drive to set the Bills up with a 17-7 halftime lead, which was bad news for a 49ers team that was 0-5 when trailing at halftime this season.
— MULLENS MISFIRES: Nick Mullens had his first three-touchdown game of the seasons but could not answer his counterpart Allen. Mullens found Jordan Reed for a 5-yard touchdown pass in the final minute to make the score more respectable.
Typifying the 49ers' night, Mullens had a potential touchdown pass to Kendrick Bourne reversed by a replay ruling, then after Mullens committed a false start from the 1, a touchdown attempt to Jeff Wilson got wrestled away by Tre'Davious White for a goal-line interception with 6:55 to go.
After thriving on a connection with Deebo Samuel to down the Los Angeles Rams last game, Mullens did not find Samuel until back-to-back completions late in the third quarter. Mullens fell to 2-3 as the 49ers' replacement starter to Jimmy Garoppolo, who is recovering from a Nov. 1 ankle injury and watched from a luxury suite with other injured 49ers, including George Kittle.
— JUSZCZYK SCORES AGAIN: Fullback Kyle Juszczyk may have been stopped for no gain on a third-and-goal try from the 1 in the first quarter, but he came through with points in the third quarter, scoring on a 6-yard pass from Nick Mullens. It was Juszczyk's first scoring catch this season and third touchdown overall.
— WARNER MAKES PLAYS: Linebacker Fred Warner — nicknamed "All-Pro Fred" by teammates in a grassroots campaign — seized the early prime-time spotlight. Warner's fumble recovery at the Bills' 3-yard line. Warner scooped up the ball on one hop as rookie rusher Zack Moss fumbled a handoff.
It was Warner's second career fumble recovery; his first came on the same field two years earlier against the Cardinals. Warner made an acrobatic interception in the second quarter, only to have it nullified by Richard Sherman's illegal contact vs. Stefon Diggs away from the play.
— STRIKE ZONE: Robbie Gould's 45-yard field goal cut the 49ers' deficit to 17-10 in the third quarter, and it marked the 29th in a row he's made from inside 50 yards.
— BEASLEY'S NIGHT: Cole Beasley was evaluated for a head injury after a 31-yard catch on the first series. He returned for a career-best night, reaching that milestone with 113 yards on seven catches/targets in the first half alone. He totaled nine catches for 130 yards and a touchdown, that coming on a 5-yard pass to tie the score at 7.
— GOAL-LINE STOPS: Both the Bills and 49ers got stopped short of the goal-line on their opening drives.
First, the Bills were poised to score an opening-drive touchdown for their fifth straight game. But Josh Allen's fourth-and-goal pass to Lee Smith harmlessly sailed incomplete, after Stefon Diggs' third-down catch got stopped at the 1 by a barrage of defenders (Tarvarius Moore, Richard Sherman, Arik Armstead and Dre Greenlaw).
The 49ers then marched 97 yards, only to get stopped on runs for no gain from the 1 by Kyle Juszczyk (third down) and Jeff Wilson (fourth down).
— HEALTH CENTER: Nose tackle D.J. Jones was ruled out with a first-half ankle injury. Last December, Jones sustained an ankle injury that prematurely ended his season. He missed the 49ers' Nov. 29 win at Los Angeles while on the NFL's COVID-19 reserve list.
— NEW NICKEL BACK: Dontae Johnson started as the slot cornerback, the 49ers' fourth-string option. Emmanuel Moseley was scratched because of a hamstring injury. Also out were K'Waun Williams (ankle) and Jamar Taylor (knee; Injured Reserve).
Moseley was limited in practice by a hamstring strain and listed as questionable. Cornerback Tim Harris, the 49ers' final draft pick last year, got activated for his debut to serve as a reserve with Ahkello Witherspoon.
— COLEMAN RETURNS: Running back Tevin Coleman lost 9 yards on his first carry in a month, due to Aiyuk's missed block. Hindered this year by a Week 2 knee sprain, Coleman suited up for only the fourth time this season and joined a running back corps including Raheem Mostert, Jeff Wilson Jr. and Jerick McKinnon; rookie Austin Walter was inactive.
— TRENT TAYLOR OUT: Wide receiver Trent Taylor was out for the first time this season, and while he's only contributed 10 receptions, he's been their most reliable return specialist. The Bills did not punt through three quarters.