The San Francisco 49ers held their fourth full training camp practice on Friday as they continued preparations for the 2026 NFL season. The session marked the team's first padded practice of training camp.
The 49ers announced several roster moves ahead of practice, signing tight end Josiah Deguara and wide receiver Trenton Irwin to one-year contracts. To make room on the roster, the team waived cornerback Derrick Canteen and waived/injured tight end Tanner McLachlan.
Additionally, reports surfaced Thursday night that the 49ers are reuniting with wide receiver Deebo Samuel, agreeing to a one-year, $7 million deal. He is expected to wear No. 19 with the team. Wide receiver Jacob Cowing, who previously wore that number, took the practice field wearing No. 6 on Friday.
Samuel did not participate in Friday's practice, as he still needed to pass a physical. He could be on the practice field on Saturday.
RELATED 49ers stars expect to get the best version of Deebo Samuel in 2026
Head coach Kyle Shanahan once again observed practice as he continues to recover from injuries sustained in a recent car accident. Friday marked his longest time yet on the field during practice. Additionally, interim head coach Chris Foerster said Shanahan has been active in helping evaluate the post-practice film.
#49ers HC Kyle Shanahan at practice 👀 pic.twitter.com/5SXmA277Pt
— OurSF49ers (@OurSf49ers) July 31, 2026
Below are some of the key takeaways from the 10:10 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.
- DT Gracen Halton (knee bone bruise)
- RB Jordan James (rib fracture)
- WR Christian Kirk (calf strain)
- OT Vederian Lowe (high-ankle sprain)
- S Malik Mustapha (hamstring strain)
- WR Ricky Pearsall (knee)
- DT CJ West (unknown)
The 49ers stated that West's issue is minor and the defensive tackle should return soon.
Injury updates
On Wednesday, the 49ers waived/injured defensive linemen William Bradley-King and Andrew Farmer. Both cleared waivers on Thursday and reverted to San Francisco's injured reserve list.
Defensive tackle Alfred Collins participated in his first practice of training camp after recovering from offseason shoulder surgery. He was activated from the 49ers' physically unable to perform (PUP) list.
RELATED 49ers activate DT Alfred Collins from the PUP list
Defensive end Mykel Williams continued working on the side, appearing to be in good spirits as he works his way back from the ACL injury he suffered last season. Running back Isaac Guerendo also appears to be making some progress on the side.
DT Alfred Collins is on the field and taking part in the 49ers' first padded practice. He was previously on PUP as he recovered from shoulder surgery.
— Matt Maiocco (@MaioccoNBCS) July 31, 2026
Tackle Trent Williams appeared to take a hit to the jaw area near the end of practice. However, he seemed fine during his post-practice radio interview.
There are no updates on wide receiver Ricky Pearsall's status, and there is no timeline for running back Jordan James' return.
Unavailable players
Physically unable to perform (PUP)
- RB Isaac Guerendo (pectoral)
- TE George Kittle (Achilles)
- DE Mykel Williams (ACL)
Injured reserve (IR)
- DL William Bradley-King
- DL Andrew Farmer (back)
- S Darrick Forrest
Reserve/left squad
Practice skirmishes
Foerster addressed the team ahead of Friday's practice. His message was clear: Protect the team and no fighting.
"I did good with that one, right?" Foerster joked with reporters after practice.
A couple of skirmishes broke out at the end of practice. The first involved linebacker Dre Greenlaw and running back Christian McCaffrey, who was shoved to the ground by Greenlaw after making a catch. McCaffrey pushed back, but the two players quickly restrained themselves.
A few plays later, a larger altercation broke out involving several players. The incident began when linebacker Fred Warner went after tight end Jake Tonges. Tackle Colton McKivitz, fullback Kyle Juszczyk, Greenlaw, and several others joined the scrum before it was broken up. There were no injuries.
"I think it's one of those things where guys have been edgy all week in jerseys and shorts," tackle Trent Williams said during a radio interview after practice, "so everybody's been waiting to put the pads on, so you add a little physicality to it. Tempers flare."
Greenlaw believes reports about the skirmishes have been blown out of proportion.
"We just playing a little football," Greenlaw said. "Things get a little hot, and yeah, it's just part of the game."
McCaffrey commented, "The same way you fight with your brothers as kids, sometimes you get in scuffles with your teammates."
He added that Greenlaw probably wouldn't normally be his first choice to fight, noting how much respect he has for the veteran linebacker.
"Just another day at the office," McCaffrey said. "That's all it is. Nothing more than that ... I don't think I've even been part of a team where, first day of pads, there's not a fight."
Offensive notes
Wide receiver Mike Evans continues to impress during training camp, and Friday offered another reminder of why the 49ers brought in the veteran playmaker. Evans showcased his trademark size and ball skills by hauling in a leaping, six-yard touchdown catch over second-year cornerback Upton Stout in the end zone.
Going up. Going Vertically.@Visa | #FTTB pic.twitter.com/Z4Fc899xUF
— San Francisco 49ers (@49ers) July 31, 2026
"I'm 6-5," Evans said after practice. "I've got ability, and I've done it throughout my career. But it's something I talk to the quarterbacks about. When I'm covered, I'm still pretty open if you throw the ball up with some air, and Brock threw a great ball. That's one of my biggest things in my game."
Evans and quarterback Brock Purdy continue to build strong chemistry throughout camp. The duo connected multiple times on Friday, with Evans praising Purdy's pinpoint accuracy afterward.
"Brock is super accurate," Evans said. "He's a super accurate quarterback, so he hasn't overthrown me yet. It happens, but he's just super accurate."
According to ESPN's Nick Wagoner, Purdy finished 11-of-15 during team drills.
Rookie wide receiver De'Zhaun Stribling continued to generate buzz with another impressive practice. Quarterback Kurtis Rourke connected with Stribling despite tight coverage from multiple defensive backs. Later, Mac Jones found the rookie at the goal line for a touchdown while Stribling battled cornerback Jack Jones. Jones also connected with Stribling on another completion despite strong coverage from cornerback Darrell Luter Jr. and linebacker Luke Gifford.
"One thing about Stribling is he finds a way to produce no matter which offense is on the field with him or which defense he's going against," Wagoner wrote. "Finding a home for him in the offense shouldn't be hard, it's just a matter of where his snaps will come from."
Purdy also found Stribling during team drills, with the rookie creating separation against Stout.
"Arguably the most consistently targeted WR in team period," Brad Graham of TheSFNiners observed.
Mac Jones recorded the longest completion of the day, hitting wide receiver Malik Turner for a 40-yard gain.
Defensive notes
Rookie defensive end Romello Height experienced mixed results during one-on-one pass-rush drills. Veteran left tackle Trent Williams shut him down, but Height later beat rookie offensive tackle Enrique Cruz Jr. with a convincing spin-move fake before bursting into the backfield.
Height also flashed during team drills, shedding a block to stop running back Sincere McCormick behind the line of scrimmage. If the rookie can consistently contribute against both the run and the pass, he could carve out an important role in the 49ers' defensive-line rotation this season.
Defensive end Nick Bosa, who continues to work his way back from ACL surgery, did not participate in one-on-one pass-rush drills. Instead, he spent that portion of practice working individually with Trent Williams. Bosa also remained out of team drills.
Linebacker Fred Warner broke up a pass intended for Evans over the middle during team drills, another encouraging sign that he has fully recovered from the ankle injury that shortened his 2025 season.
Second-year linebacker Nick Martin also flashed, quickly diagnosing a running play before closing in to stop Christian McCaffrey. He continues to strengthen his case for the 49ers' No. 3 linebacker role.
Defensive tackle Osa Odighizuwa has looked comfortable during his first training camp with the 49ers, consistently showing his disruptive ability along the interior. While pleased with his overall game, the veteran hopes to improve his pass-rushing skills.
"I feel like, most of my career, just having a lot of pass rush production, just turning that into more sacks," Odighizuwa said. "Just taking that next step."
With Warner and Greenlaw manning the middle of the defense behind him, Odighizuwa knows that he will be able to play with confidence in 2026.
"Fred, I just feel like has a menacing aura—him and Greenlaw for sure," Odighizuwa said. "So having them on the field behind me just adds a little bit of confidence for sure, having two of the best linebackers in the league."
Next practice
The 49ers will return to the practice field on Saturday, August 1 at 10:10 a.m. PT. The session will once again be open to fans.
Social media: 49ers practice updates
#49ers newly signed WR Trenton Irwin will wear No. 82 pic.twitter.com/zFsfVQwAs1
— ???????????????????????????????????????????? (@TheSFNiners) July 31, 2026
#49ers Nick Bosa getting warmed up for the first day in Pads 🔥 pic.twitter.com/4FXMdogCaN
— OurSF49ers (@OurSf49ers) July 31, 2026
#49ers Jacob Cowing is now wearing No. 6 which further confirms Deebo Samuel will be No. 19 pic.twitter.com/7GpUPdATyU
— ???????????????????????????????????????????? (@TheSFNiners) July 31, 2026
#49ers new WR WR Trenton Irwin 👀 pic.twitter.com/EkACietil2
— OurSF49ers (@OurSf49ers) July 31, 2026
#49ers DT Alfred Collins is back at practice after starting training camp on the PUP list! pic.twitter.com/U5JD8bYRbn
— OurSF49ers (@OurSf49ers) July 31, 2026
#49ers DE Mykel Williams appears to be in good spirits working through his rehab pic.twitter.com/KXacpD5VDu
— ???????????????????????????????????????????? (@TheSFNiners) July 31, 2026
#49ers Mykel Williams, Christian Kirk, Isaac Guerendo, and Malik Mustapha off to the side field going through rehab 🙏🏼 pic.twitter.com/puG76i1nL1
— OurSF49ers (@OurSf49ers) July 31, 2026
#49ers Fred Warner is ready for the first day of pads 🙌 pic.twitter.com/nguex5794O
— ???????????????????????????????????????????? (@TheSFNiners) July 31, 2026
Alfred Collins is back at practice 🙌 pic.twitter.com/IqXqk9IChR
— 49ers on NBCS (@NBCS49ers) July 31, 2026
Alfred Collins was at #49ers practice after starting training camp on PUP list. pic.twitter.com/Hdv6CDNtpy
— Matt Lively (@mattblively) July 31, 2026
Keion White, who had a gun shot wound this offseason, going through warmup at #49ers practice pic.twitter.com/DZSCMcOGyo
— Matt Lively (@mattblively) July 31, 2026
#49ers Mike Evans signing autographs for fans pic.twitter.com/5ISCs1ZSqd
— ???????????????????????????????????????????? (@TheSFNiners) July 31, 2026
De'Zhaun Stribling had a nice day of practice for the #49ers. First day in pads for the rookie. pic.twitter.com/ZBg6cy6yJx
— Matt Lively (@mattblively) July 31, 2026
New #49ers defensive line weapon Osa Odighizuwa pic.twitter.com/vAeO6m49E3
— Matt Lively (@mattblively) July 31, 2026
#49ers TE George Kittle getting some rehab in after practice and the fans are hyped to see him! pic.twitter.com/s3NxBpEEwZ
— OurSF49ers (@OurSf49ers) July 31, 2026
49ers rookie WR De'Zhaun Stribling's success continued as pads came on
- Purdy delivered layered dime over Stout to Stribling's
— Brad (@Graham_SFN) July 31, 2026
- had a really nice catch on a comeback with bodies all around him
- showcased route running ability in 1v1
- Arguably the most consistently targeted… pic.twitter.com/nR2JgQifID
Comments