Roster

Two Verbs Decide Whether An Injured 49er Shows Up On The Roster Page

OverTheCap and Spotrac both carry five 49ers on injured reserve and agree on all five names. The club's own roster page, counted table by table on Sunday afternoon, carries two of them. Every man it leaves out was waived/injured first rather than placed there directly, and the club announced every one of those moves itself.

SK
Sam KezarAug 9, 20264 min read
Every call on this site goes on a public ledger and gets graded. The misses stay up.
Ricky Pearsall, number 1, in a red 49ers practice jersey and black pants, running upfield with the ball tucked under his right arm during a training camp practice at the SAP Performance Facility, an official jogging behind him and the club's own San Francisco 49ers backdrop along the fence. Pearsall carries the largest injured-reserve charge on either money book at $3,419,563.

Five San Francisco players are on injured reserve. Both independent money sources say so and they name the same five: Ricky Pearsall, Darrick Forrest, Tanner McLachlan, Andrew Farmer II and Mikail Kamara. OverTheCap totals them at $5,579,563 and Spotrac at $6,044,563, both read Sunday afternoon, and each list sums to its own stated figure with no residual. The entire $465,000 between the two totals is McLachlan, carried at $540,000 by one book and $1,005,000 by the other.

The club's own roster page lists two of them. Counted table by table at 2:51 p.m. PT Sunday, Reserve/Injured holds Forrest and Pearsall. Farmer, McLachlan and Kamara appear on none of the page's four tables. They were on the active table until the day each was waived, and none of the three has appeared under Reserve/Injured since.

This is a mechanic rather than a mystery, and the club's own transaction log is where it is visible.

Two verbs#

The 49ers transaction log is a public page and it records the move that put every one of these six men where he is.

Forrest, May 28: the club "placed S Darrick Forrest on the Injured Reserve list." Pearsall, August 1, in the release that signed Deebo Samuel: "placed WR Ricky Pearsall on the Injured Reserve list." Those two are on the roster page.

The other four are a different sentence. July 29: the club "waived/injured DL William Bradley-King and DL Andrew Farmer II." July 31: "waived/injured TE Tanner McLachlan." August 2: "waived/injured DL Mikail Kamara." Not one of those four has ever appeared under Reserve/Injured.

Waived/injured is not the end of the move, it is the first half. A player waived while hurt goes onto waivers, and if he clears he reverts to his own club's injured reserve. The league's transaction wire records the second half, one day after the club's announcement in every case, in a classification string it prints in full: Reserve/Injured from Waived/Injured; Not Against 90. Bradley-King and Farmer on July 30, McLachlan on August 1, Kamara on August 3.

Six men, two verbs, no exceptions. Placed directly, and the page carries you. Waived/injured and reverted, and it does not.

What Not Against 90 actually means#

It is a roster-limit label and it is not a cap label, and the difference is the likeliest reason the page can leave three men off without being wrong.

San Francisco's page reads 88 on the active roster and three on Active/PUP. That is 91 bodies against a ceiling of 90, less the international-pathway exemption the league granted Isaac Alarcon on April 28, which is 90 against 90. It has read 90 against 90 every day this site's 53-man tracker has counted it since July 30. Three men the league has formally excluded from that count are, for the purposes of a page whose job is to show the roster, not on the roster.

They are very much on the money. Spotrac heads its own injured-reserve table with the rule: every player on it counts against the team's salary cap. Five names, $6,044,563, and its active-roster table independently heads itself PLAYER (90).

Bradley-King is the case that shows both ends#

He was on that list on Friday and he is not on it now, and his exit is the only complete arc any of these men has produced.

Waived/injured by the club on July 29. Reverted to Reserve/Injured from Waived/Injured on July 30, at $540,000. An injury settlement recorded August 7. And on August 8 the wire's Waivers tab carries him as Terminated Via Waivers, all contracts, with the To column empty, which at that source is how a player clearing is distinguished from a player claimed. Both money books removed exactly $540,000 for him overnight and neither moved its top-51 cap space by a cent, which is what an injured-reserve charge leaving is supposed to look like.

Four transactions between July 29 and August 8, all four on the league's wire, and the club's roster page recorded none of them: it dropped him off the active table and never picked him up anywhere else.

The largest charge, and the man the wire never recorded#

Pearsall is the largest charge on either book, $3,419,563, identical at both. Kyle Shanahan said Saturday that the surgery is season-ending and that the damage is carried over from the 2025 posterior cruciate ligament injury rather than anything camp did, and he separated it from every other name on the list: "We've had a number of injuries in camp, but that's really the only one that's actually been not just a camp injury."

And the league's wire is the best source here without being a complete one. Cameron Sample was waived by the club on August 5. He appears on no tab of the wire, and OverTheCap carries him in dead money at $225,000. Three sources record that he is gone and the one that records the mechanism does not have him.

The reading is testable#

If the two verbs are doing the work, the next 49er placed on injured reserve directly from the active roster shows up on the roster page, and the next one waived/injured who reverts does not. Cut day is August 30 and there will be more of both.

One thing the tables will not settle on is what Farmer plays. He is a defensive lineman on the club's July 29 release, a linebacker on the club's own January signing announcement, and a linebacker at Spotrac. The page that cannot find him at all is at least consistent about it.

Sources. Injured-reserve names, charges and totals from OverTheCap and Spotrac, both read in a browser on August 9 and cited with their own figures. Roster tables counted in a browser off 49ers.com on August 9 at 2:51 p.m. PT. All transaction quotations from the 49ers' own transaction log, read the same afternoon. Reversion dates and classification strings from the NFL's league transaction wire, Reserve List tab, July and August; the Bradley-King settlement and clearance from the same wire's Waivers tab. Alarcon's exemption per Aaron Wilson, carried by Niners Wire, April 28. The Shanahan quotation from his August 8 availability via David Bonilla at 49ers Webzone, with the club's own Day 9 recap independently carrying the season-ending half. Nobody from this site was at any practice or availability described here.

Filed under 49ers

Latest on the 49ers

The whole beat →
The 49ers ran Las Vegas out of its plan before they took the ball away
49ers Deep Dive

The 49ers ran Las Vegas out of its plan before they took the ball away

San Francisco beat Las Vegas 38-17 on Sunday and is 7-1. The five second-half takeaways will be remembered, but the game was settled earlier. The 49ers' first three drives went 37 plays and 242 yards, took 19 minutes and 23 seconds and ended in touchdowns, and San Francisco ran 25 times for 125 yards before halftime. Las Vegas had the ball for 71 seconds in the first 13 minutes. Trailing by 11 at the half, the Raiders ran six times and threw 24 times after it, and Klint Kubiak said that being in position to throw on every down produces interceptions. The pass rush did not cause the turnovers: Cousins was hit twice on eight first-half throws and four times on 24 second-half throws. Two takeaways were punched out of receivers' hands, and one came off a fumbled exchange. The second half also showed a cost. San Francisco threw an interception, was stopped on fourth-and-1 at its own 40, and allowed 222 kickoff-return yards, and Las Vegas started three drives in 49ers territory. The game moved San Francisco's season turnover margin from minus-3 to plus-1. Las Vegas has now allowed 30 or more points six weeks running, so Dallas on Sunday is the first test of whether the formula holds.

Sam KezarNov 10, 20266 min read
The 49ers trade a sixth-round pick for Keenan Allen
49ers Notebook

The 49ers trade a sixth-round pick for Keenan Allen

San Francisco acquired wide receiver Keenan Allen from Indianapolis on Tuesday, deadline day, for a 2027 sixth-round pick, the league transaction wire shows. It is the second trade between the clubs in three weeks, after DeForest Buckner on Oct. 27. Allen, 34, played at Cal and is a six-time Pro Bowler with 1,095 career catches, eighth all time. He had 40 catches for 351 yards and one touchdown in eight games for the Colts, their team lead. The club placed Gracen Halton on injured reserve with a fractured ankle the same afternoon, and its roster page showed 52 on the active roster before Allen was added. Allen joins a receiver room missing Mike Evans and Deebo Samuel Sr. last Sunday. He caught four passes for 26 yards against Dallas in Week 9, and the 49ers play at Dallas on Sunday.

Sam KezarNov 10, 20263 min read
Five takeaways in one half, and the 49ers never sacked Kirk Cousins
Takeaways

Five takeaways in one half, and the 49ers never sacked Kirk Cousins

San Francisco beat Las Vegas 38-17 at Levi's Stadium on Sunday and is 7-1. The 49ers scored touchdowns on their first three possessions, did not punt, and ran 43 times for 190 yards. Las Vegas turned the ball over on five of its six second-half possessions: Jaden Dugger's 35-yard interception return on the first play of the half, two forced fumbles, and interceptions by Renardo Green and Malik Mustapha. The official game book credits San Francisco with no sacks and six quarterback hits, two of them on the plays Green and Mustapha intercepted. Nick Bosa played 39 of 50 defensive snaps in his first game since Sept. 20, and DeForest Buckner played 34. Jordan Watkins caught all four of his targets for 86 yards and his first NFL touchdown. Christian McCaffrey's 12-yard catch set the Super Bowl-era record for touchdown catches by a running back and was Brock Purdy's 100th touchdown pass. Gracen Halton broke his ankle and is out for the season, Shanahan said; Green (back) and Deommodore Lenoir (foot) did not return.

Sam KezarNov 9, 20265 min read

Earlier on the 49ers

Nick Bosa And Christian McCaffrey Did No Drills In The Open Portion Of The First Melbourne Practice
Practice Notebook

Nick Bosa And Christian McCaffrey Did No Drills In The Open Portion Of The First Melbourne Practice

Nick Bosa and Christian McCaffrey did not take part in drills during the portion of San Francisco's first Melbourne practice open to reporters, per Matt Maiocco at NBC Sports Bay Area and Matt Barrows at The Athletic. San Francisco plays the Rams at the Melbourne Cricket Ground on Thursday at 5:35 p.m. Pacific. Reporters leave before team drills, and the club was not required to file a participation report, so what either man did after that is not public. Shanahan said the time difference meant he did not have to talk about injuries until the following day, and did not. George Kittle and Mike Evans practised. Barrows listed six men back from injury: Renardo Green, Romello Height, Jacob Cowing, Vederian Lowe, Gracen Halton and Luke Gifford. Five of the six who sat out the September 2 practice in Santa Clara are on that list; James Thompson Jr. is on no list either way. The club named eight captains, all eight returning from 2025, and Bosa and McCaffrey are two of them. Brayden Willis is back on the practice squad, which now sits at seventeen.

Sam KezarSep 7, 20265 min read
Four Hundred And Forty Punt Returns Since Ted Ginn Jr. Scored The Last One
The record

Four Hundred And Forty Punt Returns Since Ted Ginn Jr. Scored The Last One

San Francisco has returned 440 punts for 3,826 yards since Ted Ginn Jr. ran one back 55 yards against Seattle on September 11, 2011, and none of the 440 has scored. Thirty-five of them gained twenty yards or more, two gained forty, and the longest is a 66-yard return in 2025. Jacob Cowing's 83-yard punt return touchdown at the Chargers on August 20 is longer than any of them and came in a preseason game, so it does not enter the record. He has not returned a punt since, missed the last full practice of camp with a groin injury and did not dress for the finale at Las Vegas. The roster is due at 3 p.m. Pacific on Sunday.

Sam KezarAug 29, 20264 min read
Vederian Lowe Lasted Three Snaps
Training camp

Vederian Lowe Lasted Three Snaps

The 49ers opened camp Sunday, signed a defensive lineman they have employed since 2019, and got three snaps out of the man they are counting on to stand behind a 38-year-old left tackle.

Grant LombardJul 27, 20266 min read