More than six months after he said goodbye, here he was, saying hello again. Not even five quarters into the NFL season, the unlikeliest scenario had become reality on a soggy Sunday afternoon in Santa Clara. The San Francisco 49ers quarterback this season was supposed to be anyone but Jimmy Garoppolo, but there he was, Jimmy G himself, ducking his head into the huddle and calling a play.
There was no mistaking him. The crooked smile, the eyes that carry a hint of mischief, the hair graying, Clooney-like, at the temples. And the voice. “He’s got that voice,” second-year guard Aaron Banks says. “It’s a great voice. He sounds like a video game.”
Late in the first quarter Sunday, Niners starter Trey Lance kept the ball on an option play and turned upfield. He was met almost immediately and definitely head-on by Seahawks’ linebacker Cody Barton, who delivered a hard hit to the twisting Lance, who went down awkwardly and was eventually carted off the field with a broken right ankle that will end his second NFL season before it really got started.
And so, roughly 73 game minutes into the season, Garoppolo’s strange journey to nowhere had ended. Here he was, snapping his chin strap onto his helmet, staring through his face mask and into the eyes of his teammates once again.
It all looked and felt so familiar. The 49ers beat the Seahawks 27-7 in the typically methodical Garoppolo style, and there he was afterward, attending to the customs of his craft: trading his helmet for a baseball cap, jogging across the field after another win, hugging the opposing quarterback.
It was almost like he never left.
How did the 49ers, and Garoppolo, get here? The alphas and omegas of this story tend to blur, but let’s begin at the end, or the beginning of the end, or what everybody expected would be the end. On Feb. 1, a few days after the 49ers lost to the Rams in the NFC Championship Game, Garoppolo said goodbye. He went on the platform of the moment — Zoom — and said, “I’ll miss you guys. Thank you guys again. Faithful, thank you very much for everything. It’s been crazy, man. Comebacks at Levi’s, comebacks on the road, ups and downs, it’s been a hell of a ride, guys. I love you guys. So. See ya.”
Everything about it felt right. The tone was in character, heartfelt but casual, and the message was clear in its finality. The timing felt perfect, too; do it early, get it over with, move on. Everyone knew, or at least thought they knew, that 2021 would be Garoppolo’s final season with the 49ers, and the NFC championship loss his last game. It was Lance’s team now; the 49ers had traded three first-round picks for the right to draft him with the No. 3 overall selection in 2021, and Garoppolo had been the conscientious caretaker who carried them through Lance’s gap year. Having such a distinct expiration date is rare in the NFL, but Garoppolo said, “It took the weight off my shoulders. Now let’s just go play football and enjoy this last year with the guys.”
So just like that, after five seasons as a starter, one Super Bowl and two NFC Championship Games, Jimmy G was gone. Teammates said goodbye to Garoppolo and wished him well. General manager John Lynch and coach Kyle Shanahan thanked him for his contributions and praised him for his professionalism.
It all felt scripted, like one of Shanahan’s opening drives. In the months that followed, however, that script would be filled with scribbles on the margin. One of the most successful quarterbacks of the past four seasons (by wins and losses, anyway — he’s 35-16 as a starter in regular-season and playoff games) would become a man apart, drifting like smoke in and out of trade discussions and rumors. As one source close to Garoppolo says, “Nothing fits into a box because there were so many moving parts, so many variables.”
Some of the moving parts, it turned out, were in Garoppolo’s throwing shoulder. He suffered an injury to the back of the shoulder in the Jan. 16 playoff win against the Dallas Cowboys, and originally Garoppolo and his representatives chose a conservative approach that avoided surgery in favor of therapy and rest. During that time, Lynch had discussions with several teams at the NFL scouting combine in Indianapolis. The talks were fruitful enough that Lynch came away believing he would have a deal done quickly.
“I can tell you there were really serious talks with probably two, three teams,” Lynch said at the time. “I felt — you’d have to ask them — like it was going to happen.”
According to multiple league sources, the Niners believed one of those teams — the Washington Commanders — was poised to become Garoppolo’s next NFL home. But that plan was scuttled soon after; Garoppolo’s shoulder wasn’t healing as he and his medical team hoped. After further consultation with doctors, Garoppolo and his representatives opted for surgery that set the beginning of training camp as a target date for a full recovery. By March 1, the plan became public knowledge, and eight days later the Commanders moved on, trading for Indianapolis quarterback Carson Wentz.
Suddenly, the Garoppolo trade market did more than cool. It froze.
The decision to undergo surgery was made with an eye toward Garoppolo’s immediate health as well as his future prospects, whether that be this season or next. Garoppolo’s agents had been given license to seek a trade, and they wanted to avoid misrepresenting the quarterback’s health. (Despite reports to the contrary, an NFL source told ESPN the team was informed of Garoppolo’s intention to undergo surgery.) The timing created some friction between Garoppolo and the team, with the source close to Garoppolo suggesting the team understandably saw surgery as a move that would reduce — or even destroy — the Niners’ hopes of trading him before the draft.
One by one, lines were drawn through an already limited number of options. The Colts traded for Matt Ryan. Pittsburgh, attempting to replace Ben Roethlisberger, signed Mitchell Trubisky as a stopgap for first-round pick Kenny Pickett. The music kept playing, and Garoppolo kept waiting for a place to sit.
Through it all, Garoppolo lingered. He could neither rest nor depart. Training camp began July 26. He threw on a side field during practice, worked out and rehabilitated his shoulder separately from the team, stayed away from meetings — he was, at best, 49ers-adjacent. He issued no public statements but did acknowledge reporters with a wave on his first day of workouts. (Garoppolo declined to comment for this story.) He lingered through the exhibition season, week after week, sure something would turn up. Maybe Cleveland, where Deshaun Watson‘s suspension — stemming from accusations by more than two dozen women of sexual misconduct during massage sessions — was revised from six to 11 games. Maybe Seattle, where Pete Carroll was deciding between Drew Lock and Geno Smith. Maybe the Rams, who were monitoring the status of Matthew Stafford‘s throwing arm.
On Aug. 12, an opportunity: Jets quarterback Zach Wilson departed the preseason opener with a knee injury. The talk of Garoppolo to New York on social media began immediately. Dots were connected. There was familiarity; Jets offensive coordinator Mike LaFleur had been an assistant in San Francisco. Jets head coach Robert Saleh was the 49ers defensive coordinator before taking over the Jets. The talk was short-lived, however; Wilson was diagnosed with a meniscus tear and a bone bruise that would not keep him out of action for long enough to warrant acquiring Garoppolo.
So: nothing. Quarterback-deficient teams that balked after his surgery now held off in the belief the 49ers would release Garoppolo and make a trade unnecessary. A source close to Garoppolo says Cleveland was “absolutely” expected to show interest the second Garoppolo was released. Over the final weekend of the exhibition season, Garoppolo and his agents engaged in the most NFL exercise of all: waiting to see if a starting quarterback got injured during games in which they rarely play.
But during that time a strange thing happened. “Those weeks helped both sides get more comfortable with what eventually happened,” the source close to Garoppolo says. Lynch and Shanahan watched Garoppolo throw as the trade market cratered, and as they worked to convince other NFL teams Garoppolo could help them, a thought kept creeping in: He could help us.
The 49ers are perhaps the least quarterback-dependent championship-caliber team in the NFL. The leaguewide quarterback fetish displays itself a little differently in Santa Clara, where Shanahan’s coaching is seen as a mitigating factor, capable of turning a good but not great quarterback — one such as Garoppolo, for instance — into a consistent winner.
As Shanahan said during a news conference the week of the season opener, “When it comes down to just the quarterback … it’s tough for most teams.” Which makes it more interesting, and perhaps counterintuitive, that before Lance’s injury Shanahan and the 49ers willingly put themselves in a position to engage in the NFL’s favorite pastime: a quarterback controversy. No matter the names involved, the fate of every team in the NFL eventually weaves its way back to the quarterback. It’s unfair, and often knee-jerk stupid, but it’s become as intrinsic to the game as the grain in a piece of wood.
For all of those reasons, it is impossible to separate the decision to keep Garoppolo from the decision to elevate Lance. Aside from his well-documented lack of experience in both college and the NFL, Lance suffered two injuries last season in limited playing time. And he did not play well enough in the preseason — or the season-opening 19-10 loss to the Bears — to allow the 49ers to proceed with utmost confidence with Lance backed by the unproven duo of Nate Sudfeld and Brock Purdy. A team with Super Bowl aspirations — and a head coach who is 8-29 in games not quarterbacked by Garoppolo — couldn’t be one injury away from turning the team over to Sudfeld or someone equally unproven. Lance’s season-ending ankle injury — a sad but not shocking development — hammered home the ephemeral nature of a brutal business. “Next man up” is a heartless cliché. It’s also a pillar of the industry.
During an early August conversation regarding roster construction, Lynch engaged Shanahan on the topic of quarterback depth. He asked his coach a question that tiptoed close to the NFL’s third rail: What about Jimmy? If they could agree to a significant salary cut, Lynch reasoned, it could work for all sides.
Shanahan scoffed at the idea, not because he didn’t like it but because he didn’t believe Garoppolo would agree to both a pay cut and a backup role. But after sleeping on it, Shanahan met with Lynch the next day and told him it would be worth a shot. He agreed to mention it to Garoppolo, whose reaction was both understandable and expected: He and his representatives wanted to wait and see if an opportunity materialized elsewhere before discussing a reduced contract that would keep him with the Niners.
But Shanahan came away encouraged. Garoppolo didn’t shut the door completely.
As the Aug. 30 final cutdown day approached, Lynch received no serious calls regarding Garoppolo. “That’s why we were a little at a loss,” Lynch said. “Because you can talk to his doctor, you can talk to our doctor, you can talk to a lot of people and he was doing well.” It was clear teams were waiting for the final cuts, when it seemed inevitable that Garoppolo’s name would be on the list, allowing him the freedom to negotiate with any team showing interest.
Garoppolo’s contract presented a further complication. The Niners had no intention of keeping him at his full salary-cap number of $26.9 million (none of which was guaranteed to Garoppolo), which meant a reworked deal was a mandatory aspect of any discussion. Fully aware that he was on the brink of free agency — free agency that everyone from Santa Clara to Cleveland expected — Garoppolo kept throwing on the side field, getting treatment from the team’s training staff and surveying the quarterback landscape around the league. He stayed quiet, made no waves and, in the words of running back Jeff Wilson Jr., “He kept being the type of person he is, with the type of character he has. Jimmy has all those traits. He don’t have one bad bone in his body. I’ve been here five years and I don’t think I’ve ever seen Jimmy mad.”
Over time, as the options dwindled and teams waited for his expected release, the Niners became more appealing. After the final exhibition weekend unearthed no new opportunities, Lynch offered Garoppolo an incentive-laden one-year deal that includes both a no-trade and a no-tag clause, effectively giving Garoppolo total control after this season and reducing his cap number to below $14 million. For every regular-season game like Sunday, in which he plays at least 25% of the snaps and the Niners win, he will earn $350,000 in incentives. His role would be different, Lynch explained, but almost everything else was the same: same city, same teammates, same offense, same Super Bowl expectations. In the end, familiar won.
“I’m comfortable here,” Garoppolo said after leading the Niners past Seattle on Sunday. “The players, the scheme, all that stuff — the locker room. It’s comfortable, and I’m familiar with it.”
Before news of Garoppolo’s return became public, Shanahan and Lynch attempted to get out in front of it. They made a list of 15 veterans across every position group — an ad hoc leadership committee — and scheduled a meeting in Shanahan’s office. The goal was not to turn the meeting into a vote; those decisions had already been made. Garoppolo had agreed to tear up his old contract and sign the new one. Lance was informed that the man he had backed up last year would now be his backup, and Sudfeld was told he would be released, leaving Purdy, the rookie from Iowa State, to open the season as the No. 3 quarterback. Shanahan gathered the players he perceived as leaders to explain the team’s thinking before opening the floor for discussion.
Shanahan and Lynch understood this was not just another roster decision. They were dealing with the quarterback position, which comes with its own level of forensic scrutiny, and they were doing something that could very well be without precedent. The 49ers’ communications team has searched to find a situation where a starting quarterback switched roles with his backup the following year without an injury or other event precipitating the change. Their efforts, dating back more than 40 years, have turned up nothing comparable.
Shanahan laid out the situation in granular detail. He went as far as to tell the assembled players that Garoppolo would be taking a pay cut that would bring his salary lower than Lance’s. He told them Sudfeld would be released and that Purdy was one of their new teammates. The reaction in the room was precisely the same as what Shanahan and Lynch felt when they learned Garoppolo would remain a Niners employee: shock.
“I was surprised that nobody made him their guy,” left tackle Trent Williams said. “That surprised me more than anything. … I expected him to be somewhere, somebody’s starting quarterback.”
Once they digested the news, Shanahan and Lynch opened the floor for questions. There weren’t many, according to players who were in the room, but one stood out: What happens if — or more like when — Lance struggles?
Shanahan’s response was simple: He was betting on those 15 guys in the office to make sure the camaraderie they built was strong enough to withstand whatever might seep in from the outside. Days before Lance’s injury, one of the 15, fullback Kyle Juszczyk, says, “It’s the best insurance policy I think you could ever get. … So, you really can sleep well at night because of that. They stressed they wouldn’t be able to do this if they didn’t feel like we had such a strong locker room that can handle this kind of stuff.” That, as much as Lance and Garoppolo’s strong relationship, would make this unique situation work.
“When Kyle [Shanahan] first started talking about it, it was crazy that it was even an option,” linebacker Azeez Al-Shaair said. “I was like everybody else; nobody thought it was possible. When they said it might happen, we were like, ‘F— it — let’s go.'”
Garoppolo walked into the quarterbacks’ room the day after everything went down, looked at Lance and Purdy, smiled his cockeyed grin and defused any potential awkwardness by saying, “It’s good to be back. Let’s get to work.” With that, he was no longer a man apart, no longer the spectral figure throwing passes to low-level staffers on the side field. He was, once again, Jimmy G, Niners (backup) quarterback.
There was a moment of awkwardness, however, but only because it fell to first-year quarterbacks coach Brian Griese to stand before them, pro forma, and define each man’s responsibilities.
He told Lance: “Trey, this is your team — you’re leading it,” He told Garoppolo: “Jimmy, you’re the backup. If anything happens, obviously we’re going to need you. You’ve led this team before but now the circumstances are different.” He finished by addressing all three: “The media and outside people are going to try to make it something crazy, but we all know that’s BS. This is how we’re going to do it, and this is how we’re going to win.”
The three quarterbacks in the room knew all of this, but they also knew that it needed to be said. They waited for Griese to finish, asked no questions and got to work preparing for Week 1 against Chicago.
“We were waiting for that conversation to be had, right?” Purdy says. “But when it happened it was” — here he takes a deep breath and sighs — “OK, now we got that out of the way, let’s play ball. The only awkward moment throughout this whole process was having to have that be said.”
The attention immediately turned to Lance. How would he handle this? Would he perceive Garoppolo as an insurance policy or a threat? “Awesome,” Lance said in his first comments after Garoppolo returned. “It’s good to have him back. Good to have him back in the building, back in the QB room again. Like I’ve said, he’s been a big brother to me since my first day in the league. I know he’s got my back. I’ve got his back.”
There were moments along the way, however, that symbolized the weirdness of the situation. For instance: Jimmy G, Super Bowl quarterback, four-year starter, running the scout-team offense.
“It didn’t really hit us till we saw it that first day,” says Banks, the second-year guard from Notre Dame. “It was like, ‘Oh, s— – that’s Jimmy G taking scout-team reps.'”
Circumstances precluded an extended celebration after Garoppolo returned triumphantly to the field Sunday afternoon. Right tackle Mike McGlinchey called Lance’s injury “haunting,” and Garoppolo chose the most anodyne and least illuminating words, calling his return to the job a “full-circle” moment and saying getting back to running the offense was “like riding a bike.”
Garoppolo played the way he always seems to play — 13 for 21 for 154 yards and a touchdown — but the specifics were lost in the bizarre chain of events, beginning Feb. 1, that brought him to this moment. He was, for the better part of six months, a man floating on the outskirts of everything but rumor. And then, for less than five quarters, he was the backup quarterback, frequently the most popular man in any NFL city. But now he finds himself back in charge, and back under the harsh lights. For a fleeting moment, they were shining elsewhere, but now they’re trained squarely on him.
“I’m not saying I knew this was going to happen,” Garoppolo said. “But I was ready for this in case it did happen, and I just wanted to take advantage of the opportunity.”
There’s a message in there somewhere, maybe something profound about loyalty and professionalism, maybe something banal about the perception of greener grass or the counting of unhatched chicks. Garoppolo is once again — or is it still? — the quarterback of the San Francisco 49ers. It turns out the opportunity he sought was the same one he swore he’d left behind.