The San Francisco 49ers held their 11th full training camp practice on Tuesday as they continued preparations for the 2026 NFL season. The practice was a joint session with the Tennessee Titans, whom the 49ers will face in Thursday night's preseason opener.
Head coach Kyle Shanahan observed the entire practice. Notably, he was out of the cast that went over his left hand, replacing it with a brace.
Below are some of the key takeaways from the 10:15 a.m. PT practice at the SAP Performance Facility, compiled from multiple media reports.
Noteworthy non-participants
These are the players who did not practice and are not on an injury list.
- RB Kaelon Black (adductor)
- DE Nick Bosa (soreness, tendinitis)
- WR Jacob Cowing (hip flexor)
- LB Luke Gifford (hamstring)
- RB Jordan James (rib fracture)
- FB Kyle Juszczyk (finger fracture)
- WR Christian Kirk (calf strain)
- OT Vederian Lowe (high-ankle sprain)
- RB Christian McCaffrey (tightness)
- S Malik Mustapha (hamstring strain)
- OL Brett Toth (concussion)
- DE Keion White (adductor)
Injury updates
Wide receiver Mike Evans returned to practice after dealing with a quad strain. However, he only participated in individual drills.
Defensive end Nick Bosa (soreness, tendinitis) and running back Christian McCaffrey (tightness) remained sidelined. It was the fifth consecutive practice Bosa has missed and the second straight for McCaffrey.
"Just soreness, tendinitis," Shanahan said of Bosa. "It's a pretty normal thing with ACLs ... It's a normal thing, and that's why we've got to be smart here for week to week. But I'm feeling no concerns about him being any more than that."
Shanahan also wasn't overly concerned about McCaffrey, suggesting that keeping him out of practice was simply precautionary.
RELATED Shanahan shares injury updates on McCaffrey, Bosa
Unavailable players
Physically unable to perform (PUP)
- RB Isaac Guerendo (pectoral)
- TE George Kittle (Achilles)
- DE Mykel Williams (ACL)
Injured reserve (IR)
- DL Andrew Farmer (back)
- S Darrick Forrest
- DE Mikail Kamara (ACL)
- WR Ricky Pearsall (PCL)
Reserve/left squad
Fight Club
Several scuffles broke out between the 49ers and Titans at the start of Tuesday's joint practice session. The intensity quickly turned the workout into a highly physical practice, though probably not in the way the coaching staffs had hoped.
4 scrums in first 10 minutes of 49ers-Titans joint sparring match, one started by Renardo Green hit on Wan'Dale Robinson
Titans boot OT Austin Drculus
— Cam Inman (@CamInman) August 11, 2026
One of the biggest skirmishes came after 49ers cornerback Renardo Green made contact with Titans wide receiver Wan'Dale Robinson.
Matt Lively of CBS Sports Bay Area tallied at least eight fights during the practice.
Other 49ers involved in the extracurricular activity included offensive linemen Robert Jones and Dominick Puni, defensive tackle Osa Odighizuwa, and linebackers Fred Warner and Dre Greenlaw.
"I don't want it because we just have a rule on both sides: if you throw a punch, you're out," Shanahan said after practice. "So I think we got two guys thrown out. I'm not sure (which players). I just got told two. And I don't know if that's accurate.
"You don't really care about scuffles. You just hate losing guys. A player loses all the reps for the day, and then your position is down for the whole day. That can usually be a chain reaction for other guys, so that's why we don't want that to happen."
Offensive lineman Austin Deculus was among the Titans players kicked out of practice after taking a swing at a 49ers defender before throwing him to the ground.
49ers defensive leader Fred Warner assured reporters that the scuffles weren't an attempt to get into the Titans' heads.
"We're not trying to fight and do all this other stuff," Warner said. "We're trying to play football, and that's what I had to try to tell the guys early on. I brought everybody together and told them we're not going to get through today if we continue on this path."
You warm up over there
Several observers found it amusing that the 49ers had the Titans warm up on the field closest to the electrical substation while San Francisco warmed up and went through its early individual work on the farthest field.
It was probably just a coincidence, but the arrangement didn't go unnoticed.
Offensive notes
49ers quarterback Brock Purdy continues to shine and looks ready for the regular season. ESPN's Nick Wagoner had him completing 21 of 27 pass attempts, including two touchdowns to wide receiver Demarcus Robinson and one to tight end Luke Farrell.
More importantly, Purdy didn't throw an interception against the Titans' defense.
"His best throws came in a move-the-ball sequence in which he dropped a perfect ball between three defenders to rookie WR De'Zhaun Stribling that would have gone for a long touchdown," Wagoner wrote. "And then, he had another layered throw over LB Cody Barton for a big gain to TE Jake Tonges."
Shanahan didn't notice too many mistakes from his starting quarterback.
"Brock's a really good player, so I expect him to have good plays, so I notice all the bad plays," Shanahan said. "And I didn't notice as many bad plays today, so I think he had a hell of a day."
49ers quarterback Mac Jones threw a couple of interceptions.
49ers wide receiver Deebo Samuel got some work in the jet sweep, showcasing his versatility.
Titans linebacker Cody Barton broke up a pass intended for Stribling. However, the rookie receiver finished practice with an impressive seven catches during team drills, making several big plays against the Titans' defense.
"The more he's out there, the more he'll get confident," Shanahan said of Stribling. "We truly believe he's made of the right stuff. We know his ability, and now it's about him going through a lot of situations that he hasn't been through. I expect him to fail out a number of times in practice, but he's good enough and made of the right stuff that he'll eventually start getting through it.
"You've seen a lot of those today, and hopefully, we can keep doing that more and more so he's ready in Week 1. And it won't stop there. There'll be ups and downs throughout the whole year, but that's why we try to generate as much as possible in practice."
Patrick Taylor Jr. was the 49ers' first-team running back with McCaffrey still sidelined.
Defensive notes
The 49ers' defense struggled early but bounced back quickly. It didn't give up much to the Titans' offense during team drills, and the defense was clearly the better group during the joint session.
"I think we kind of found our groove a little bit after some of that fiery business going on at the beginning," linebacker Fred Warner said.
49ers cornerback Jakob Robinson intercepted Titans quarterback Will Levis after 49ers linebacker Larry Worth applied pressure during team drills. The pass was intended for Titans wide receiver Hank Beatty, who was running an out-breaking route.
Later, Worth and linebacker Jaden Dugger created pressure on Levis, forcing an incompletion. The 49ers' pass defense was stout throughout the practice.
49ers defensive tackle Osa Odighizuwa got pressure on Titans quarterback Cam Ward. Titans players were upset after Odighizuwa grabbed Ward's jersey as the quarterback tried to move out of harm's way. On the very next play, 49ers safety Ji'Ayir Brown intercepted Ward.
On one play, several members of the 49ers' defensive front surrounded Titans quarterback Mitch Trubisky for what would have been an easy—and potentially painful—sack in a game.
49ers safety Siran Neal stuffed Titans tight end Xavier Restrepo for a five-yard loss after a catch from Trubisky. On another play, 49ers cornerback Jack Jones had tight coverage against Titans wide receiver Elic Ayomanor, resulting in a Trubisky incompletion.
49ers cornerback Renardo Green showcased good coverage against Ayomanor, leading to an incomplete pass from Ward.
49ers defensive tackles Alfred Collins and Osa Odighizuwa, along with defensive end Romello Height, recorded would-be sacks during team drills. Odighizuwa and Titans offensive tackle Daniel Moore Jr. scuffled after Odighizuwa's sack.
Next practice
The 49ers won't hold a full practice again until after the team's preseason game against the Tennessee Titans on Thursday night.
Social media: 49ers practice updates
Former #49ers first round pick Solomon Thomas out for joint practice ⚔? pic.twitter.com/D2ZDUrHAOJ
— OurSF49ers (@OurSf49ers) August 11, 2026
#49ers Christian McCaffrey not in pads today, but out early working through some warmups pic.twitter.com/yhuJ1l0pNG
— OurSF49ers (@OurSf49ers) August 11, 2026
Titans QB 1 Cam Ward getting loose for joint practice against the #49ers 👀 pic.twitter.com/JcHDuQ3YsE
— OurSF49ers (@OurSf49ers) August 11, 2026
Former #49ers DC Robert Saleh chopping it up with current 49ers DC Raheem Morris 🤝 pic.twitter.com/PztyBfwf5t
— OurSF49ers (@OurSf49ers) August 11, 2026
#49ers WR Mike Evans is BACK! pic.twitter.com/d8b7FQ7Jd9
— OurSF49ers (@OurSf49ers) August 11, 2026
#Titans #49ers joint practices underway. Substation and Levi's Stadium in the background. pic.twitter.com/EwUgo7yRcQ
— TURRON DAVENPORT (@TDavenport_NFL) August 11, 2026
Live look at The Titans making sure to stretch next to the substation ahead of joint practice with the 49ers 👀 😅 pic.twitter.com/xiyHEDyI6K
— OurSF49ers (@OurSf49ers) August 11, 2026
Familiar faces 😃 pic.twitter.com/wYIIzHyhBQ
— San Francisco 49ers (@49ers) August 11, 2026
#49ers HC Kyle Shanahan with a new brace on his left hand as he gets set for joint practice against The Titans pic.twitter.com/67ws4VILFb
— OurSF49ers (@OurSf49ers) August 11, 2026
Fred being Fred. pic.twitter.com/88EOLGMn9K
— San Francisco 49ers (@49ers) August 11, 2026
The not-so-calm before the storm 😏 pic.twitter.com/Vf4VuRmpC3
— 49ers on NBCS (@NBCS49ers) August 11, 2026
Mike Evans back at #49ers practice pic.twitter.com/LrLiWvUPA7
— Matt Lively (@mattblively) August 11, 2026
Robert Saleh called the #49ers a championship organization and said he appreciates the time he had here during his two stints. pic.twitter.com/2R6lz5LTyJ
— Matt Lively (@mattblively) August 11, 2026
Will Pauling is trying to do the impossible task of making this #49ers roster as an UDFA pic.twitter.com/U09qxQn99r
— Matt Lively (@mattblively) August 11, 2026
#49ers RB1 entering preseason week 1…Patrick Taylor Jr. pic.twitter.com/aUOUdD34rn
— Matt Lively (@mattblively) August 11, 2026
Jack Jones has been one of the standouts of #49ers training camp. Thursday will be a good test for him. pic.twitter.com/8zVNhtBoiw
— Matt Lively (@mattblively) August 11, 2026
De'Zhaun Stribling had the most impressive day from the #49ers receiver group, in my opinion. pic.twitter.com/kXTgY65x0X
— Matt Lively (@mattblively) August 11, 2026
#Titans Cam Ward and #49ers Brock Purdy talking shop after joint practices pic.twitter.com/LAK5StcELE
— ???????????????????????????????????????????? (@TheSFNiners) August 11, 2026
#49ers Deebo Samuel giving the young buck Carnell Tate some advice pic.twitter.com/pfCiBqXUcc
— ???????????????????????????????????????????? (@TheSFNiners) August 11, 2026
Imagine someone telling you last year that these two might be the #49ers WR1 and WR2 this season. pic.twitter.com/jE2Yx1Px9H
— Matt Lively (@mattblively) August 11, 2026
Comments