When it came time for the 49ers to decide who would replace one of their best players, there was no simple answer.
Pro Bowl left tackle Trent Williams is seemingly irreplaceable as the protector of quarterback Jimmy Garoppolo’s blind side. On Sunday, in a make-or-break season finale, Williams was declared inactive due to an elbow injury.
“It wasn’t an easy decision,” 49ers coach Kyle Shanahan said in the aftermath of his team’s playoff-clinching 27-24 overtime victory against the Los Angeles Rams.
With our All Access Daily newsletter, stay in the game with the latest updates on your beloved Bay Area and California sports teams!

Shanahan and offensive line coach Chris Foerster decided to open the game with second-year pro Colton McKivitz, who had split time this season on the practice squad and inactive list. McKivitz had not suited up for a game this season before drawing the starting assignment in Week 18.
Rookie Jaylon Moore had been used earlier this season as a backup at both tackle spots.
“Colton’s just been doing real well in practice here the last month,” Shanahan said. “Nothing against Jaylon at all. We planned on rotating them.”
When McKivitz’s play gave the 49ers no reason to make a switch, they held tight with McKivitz. In an almost impossible situation, he appeared to hold up well — aside from surrendering a fourth-quarter sack to Rams veteran edge rusher Von Miller.
San Francisco 49ers
Find the latest San Francisco 49ers news, highlights, analysis and more with NBC Sports Bay Area and California.
McKivitz played all 70 offensive snaps in a game in which the 49ers outgained the high-powered Rams offensive by a 449-to-265 margin.
Williams’ status for the 49ers’ first-round playoff game against the Dallas Cowboys on Sunday remains in question.
“Trent is as much of a soldier as we have on our team and he did everything he could to play,” Shanahan said. “He was heartbroken when he couldn’t.
“He got up here early in the morning and wasn’t able to do it. He wasn’t healthy enough, and I’m just glad that we’re giving him another chance to come back and have another one.”
Here is how much action every 49ers player saw on offense, defense and special teams . . .
Quarterback: Jimmy Garoppolo 70
Running back: Elijah Mitchell 37, Kyle Juszczyk 35, JaMycal Hasty 18, Jeff Wilson 6
Wide receiver: Brandon Aiyuk 65, Deebo Samuel 50, Jauan Jennings 44, Trent Sherfield 10, Travis Benjamin 6
Tight end: George Kittle 66, Charlie Woerner 11, Ross Dwelley 2
Offensive line: Laken Tomlinson 70, Daniel Brunskill 70, Tom Compton 70, Alex Mack 70, Colton McKivitz 70
Defensive line: Nick Bosa 60, Arik Armstead 52, Samson Ebukam 38, D.J. Jones 34, Arden Key 19, Kentavius Street 19, Jordan Willis 15, Charles Omenihu 14, Kevin Givens 10
Linebacker: Fred Warner 65, Dre Greenlaw 63, Demetrius Flannigan-Fowles 9
Cornerback: Ambry Thomas 65, Emmanuel Moseley 65, Dontae Johnson 60
Safety: Jimmie Ward 65, Jaquiski Tartt 39, Darqueze Dennard 21, Talanoa Hufanga 2
RELATED: Grading 49ers' offense, defense in playoff-clinching win
Special teams: Woerner 24, Mark Nzeocha 23, Flannigan-Fowles 23, River Cracraft 19, Sheffield 19, Curtis Robinson 15, Hasty 14, Dwelley 14, Wilson 13, Robbie Gould 12, Josh Norman 12, Dennard 10, Willis 10, Taybor Pepper 9, Juszczyk 9, Armstead 9, Jones 9, Johnson 8, Hufanga 7, Jake Brendel 5, Aaron Banks 5, Brunskill 5, Tomlinson 5, Compton 5, Samuel 5, Benjamin 4, Ward 4, Key 4, Omenihu 4, Mitch Wishnowsky 2, Tartt 1
Did not play: QB Trey Lance, OL Jaylon Moore
Not active: CB K’Waun Williams, DB Jarrod Wilson, LB Marcell Harris, LB Azeez Al-Shaair, T Trent Williams, DL Maurice Hurst