All 49ers

The Good and Not So Good from 49ers Camp: Purdy Picked Off, WR Injured

Today was also Day 1 in pads.
Jul 23, 2025; Santa Clara, CA, USA; San Francisco 49ers quarterback Brock Purdy (13) works on passing drills during the first day of training camp at SAP Performance Facility. Mandatory Credit: D. Ross Cameron-Imagn Images
Jul 23, 2025; Santa Clara, CA, USA; San Francisco 49ers quarterback Brock Purdy (13) works on passing drills during the first day of training camp at SAP Performance Facility. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

In this story:


SANTA CLARA -- The 49ers just finished Day 5 of training camp. Keep in mind, this was the first day in pads for the players this offseason, which means they did one-on-one drills as well as 11-on-11 team drills. So, today's practice looked more like real football than usual, except the players didn't actually tackle.

With that in mind, here are the payers who stood out.

THE GOOD

San Francisco 49ers quarterback Mac Jones (10) throws a pass during drills on the second day of training camp.
Jul 24, 2025; Santa Clara, CA, USA; San Francisco 49ers quarterback Mac Jones (10) throws a pass during drills on the second day of training camp. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

1. Quarterback Mac Jones.

Completed 14 of 18 pass attempts with no interceptions. He wasn't flashy, and a bunch of his completions were short ones, but he also completed a 30-yard pass to Demarcus Robinson, who was running a deep crossing route, plus a 20-yard pass to Equanimeous St. Brown, who was running a corner route. Jones is surprisingly accurate. Through five practices, he has completed 77 percent of his passes and thrown just one interception. Stock up.

San Francisco 49ers wide receiver Ricky Pearsall (14) during the game against the Detroit Lions at Levi's Stadium.
Dec 30, 2024; Santa Clara, California, USA; San Francisco 49ers wide receiver Ricky Pearsall (14) during the game against the Detroit Lions at Levi's Stadium. Mandatory Credit: Sergio Estrada-Imagn Images | Sergio Estrada-Imagn Images

2. Wide receiver Ricky Pearsall

Practiced for the second day in a row, which is good news. And he caught two passes during 11-on-11 team drills. But he didn't participate in the second half of practice, nor did he participate in 1-on-1 drills. It seems the 49ers are being extra careful with Pearsall, which makes sense considering he's coming off a hamstring injury. But they were extra careful with him last offseason. He still has never participated in 1-on-1s. At some point, they'll have to cut him loose and see what he can do. He still looks like a No. 2 receiver more than a potential No. 1.

San Francisco 49ers defensive tackle CJ West (99) works on blocking drills during the first day of training camp at SAP Perfo
Jul 23, 2025; Santa Clara, CA, USA; San Francisco 49ers defensive tackle CJ West (99) works on blocking drills during the first day of training camp at SAP Performance Facility. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

3. Defensive tackle C.J. West

He was the star of one-on-one pass-rush drills. He won all four of his matchups, including one against starting right guard Dominick Puni, who's having a good offseason. West was just better than him. He has multiple pass-rush moves, he's strong and he keeps his pads low to the ground. He looks like another Day 3 steal.

San Francisco 49ers defensive lineman Mikel Williams (98) works out during the teamís rookie minicamp.
May 9, 2025; Santa Clara, CA, USA; San Francisco 49ers defensive lineman Mikel Williams (98) works out during the teamís rookie minicamp. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

4. Defensive end Mykel Williams

Also won his reps during one-on-one drills, but didn't face any starters. Instead, he faced Isaac Alarcon and Zack Johnson, which indicates that the coaches are concerned that Williams would lose to Colton McKivitz, because that would be a big story. We'll see if the 49ers give Williams some reps against the starters tomorrow.

San Francisco 49ers cornerback Upton Stout (20) runs a play during the first day of training camp at SAP Performance Facility
Jul 23, 2025; Santa Clara, CA, USA; San Francisco 49ers cornerback Upton Stout (20) runs a play during the first day of training camp at SAP Performance Facility. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

5. Nickelback Upton Stout

Broke up a long pass from Brock Purdy that was intended for Ricky Pearsall during 11-on-11s. Pearsall was in the slot, he ran a deep corner route, Stout ran with him stride for stride, turned his head at the last minute, found the ball and broke it up. Be still my heart. This dude can play.

San Francisco 49ers linebacker Dee Winters (53) during the game against the Detroit Lions at Levi's Stadium.
Dec 30, 2024; Santa Clara, California, USA; San Francisco 49ers linebacker Dee Winters (53) during the game against the Detroit Lions at Levi's Stadium. Mandatory Credit: Sergio Estrada-Imagn Images | Sergio Estrada-Imagn Images

6. Linebacker Dee Winters

Intercepted a pass that was tipped by free safety Jason Pinnock, and knocked running back Isaac Guerendo to the ground on a run play. Usually, players are not supposed to knock down their teammates, but Winters is replacing Dre Greenlaw, who used to knock down teammates in practice regularly. He was supposed to play on the edge, and so is Winters. So far, so good.

San Francisco 49ers offensive tackle Colton McKivitz (68) against the Arizona Cardinals at State Farm Stadium.
Jan 5, 2025; Glendale, Arizona, USA; San Francisco 49ers offensive tackle Colton McKivitz (68) against the Arizona Cardinals at State Farm Stadium. Mandatory Credit: Mark J. Rebilas-Imagn Images | Mark J. Rebilas-Imagn Images

7. Offensive tackle Colton McKivitz

Actually beat Nick Bosa during 1-on-1s. Bosa tried to hit McKivitz with a spin move and McKivitz was ready for it. Well done, Colton.

THE NOT SO GOOD

San Francisco 49ers wide receiver Jauan Jennings (15) during training camp at the SAP Performance Facility near Levi Stadium.
Jul 28, 2022; Santa Clara, CA, USA; San Francisco 49ers wide receiver Jauan Jennings (15) during training camp at the SAP Performance Facility near Levi Stadium. Mandatory Credit: Stan Szeto-Imagn Images | Stan Szeto-Imagn Images

1. Wide receiver Jauan Jennings

Didn't show up to practice after leaving Sunday's session with his second calf injury of the offseason. You have to wonder if it's just a calf injury or if the Achilles is involved as well. Last year, the 49ers said Christian McCaffrey had a calf strain. Turns out, he had bilateral Achilles' tendonitis. Now, the 49ers have to think twice about extending Jennings, because they can't afford to extend another injured player.

San Francisco 49ers quarterback Brock Purdy (13) works on passing drills during the first day of training camp at SAP Perform
Jul 23, 2025; Santa Clara, CA, USA; San Francisco 49ers quarterback Brock Purdy (13) works on passing drills during the first day of training camp at SAP Performance Facility. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

2. Quarterback Brock Purdy

He made some very nice plays because he's a good quarterback. He had a nice 15-yard pass to Demarcus Robinson that sailed right over Fred Warner's head. He had a 30-yard completion to Russell Gage up the sideline. He had a 15-yard scramble on 3rd and 12. And he made a beautiful throw to Jordan Watkins after rolling out of the pocket to his right. Still, Purdy finished the day completing just 7 of 15 passes and throwing a pick. To be fair, he didn't have Brandon Aiyuk, Jauan Jennings or Jacob Cowing, and Ricky Pearsall only played for the first half of practice. It's hard to be efficient while throwing to backup receivers. Still, Purdy missed some throws he normally would make. He seemed like a man who hadn't slept much recently because his wife just gave birth. We'll give him a pass.

San Francisco 49ers second-round draft pick Alfred Collins (99) watches his teammates work out during the teamís rookie minic
May 9, 2025; Santa Clara, CA, USA; San Francisco 49ers second-round draft pick Alfred Collins (99) watches his teammates work out during the teamís rookie minicamp. Mandatory Credit: D. Ross Cameron-Imagn Images | D. Ross Cameron-Imagn Images

3, Defensive tackle Alfred Collins

Lost most of his reps during 1-on-1s. That doesn't mean he's a bust -- he's just a work in progress. His pad level is too high and he loses his balance. But he's still a gigantic human being. And if he stays healthy, he'll improve. Think Javon Kinlaw without a knee issue.

Iowa offensive lineman Connor Colby (OL06) during the 2025 NFL Combine at Lucas Oil Stadium.
Mar 2, 2025; Indianapolis, IN, USA; Iowa offensive lineman Connor Colby (OL06) during the 2025 NFL Combine at Lucas Oil Stadium. Mandatory Credit: Kirby Lee-Imagn Images | Kirby Lee-Imagn Images

4. Guard Connor Colby

Lost all of his reps during 1-on-1 and got pushed around while he was losing them. Does not seem strong enough to play as a rookie. We'll see if he improves.

Mississippi State Bulldogs linebacker Stone Blanton (7) against the Arizona State Sun Devils at Mountain America Stadium.
Sep 7, 2024; Tempe, Arizona, USA; Mississippi State Bulldogs linebacker Stone Blanton (7) against the Arizona State Sun Devils at Mountain America Stadium. Mandatory Credit: Mark J. Rebilas-Imagn Images | Mark J. Rebilas-Imagn Images

5. Linebacker Stone Blanton

Gave up a 30-yard catch over his head to rookie running back Jordan James. Blanton is an undrafted free agent rookie who should defend the run well during the preseason, but he's not particularly fluid in coverage.

San Francisco 49ers defensive tackle Jordan Elliott (92) during the game against the Detroit Lions at Levi's Stadium.
Dec 30, 2024; Santa Clara, California, USA; San Francisco 49ers defensive tackle Jordan Elliott (92) during the game against the Detroit Lions at Levi's Stadium. Mandatory Credit: Sergio Estrada-Imagn Images | Sergio Estrada-Imagn Images

6. Defensive tackle Jordan Elliott

Missed his fist practice of training camp. The 49ers didn't say why.

San Francisco 49ers defensive end Yetur Gross-Matos (94) against the Arizona Cardinals at State Farm Stadium.
Jan 5, 2025; Glendale, Arizona, USA; San Francisco 49ers defensive end Yetur Gross-Matos (94) against the Arizona Cardinals at State Farm Stadium. Mandatory Credit: Mark J. Rebilas-Imagn Images | Mark J. Rebilas-Imagn Images

7. Defensive end Yetur Gross-Matos

Still injured. Still nowhere to be seen. Is he in witness protection? Does he still play for the 49ers? Should we send out a search party for him?

THE FINAL WORD

The 49ers need to get their receivers on the field, or else Purdy will continue to struggle. Through five practices, he has completed 34 of 50 pass attempts (68 percent), but he also has thrown three interceptions, which is a lot.

Read more


Published | Modified
Grant Cohn
GRANT COHN

Grant Cohn has covered the San Francisco 49ers daily since 2011. He spent the first nine years of his career with the Santa Rosa Press Democrat where he wrote the Inside the 49ers blog and covered famous coaches and athletes such as Jim Harbaugh, Colin Kaepernick and Patrick Willis. In 2012, Inside the 49ers won Sports Blog of the Year from the Peninsula Press Club. In 2020, Cohn joined FanNation and began writing All49ers. In addition, he created a YouTube channel which has become the go-to place on YouTube to consume 49ers content. Cohn's channel typically generates roughly 3.5 million viewers per month, while the 49ers' official YouTube channel generates roughly 1.5 million viewers per month. Cohn live streams almost every day and posts videos hourly during the football season. Cohn is committed to asking the questions that 49ers fans want answered, and providing the most honest and interactive coverage in the country. His loyalty is to the reader and the viewer, not the team or any player or coach. Cohn is a new-age multimedia journalist with an old-school mentality, because his father is Lowell Cohn, the legendary sports columnist for the San Francisco Chronicle from 1979 to 1993. The two have a live podcast every Tuesday. Grant Cohn grew up in Oakland and studied English Literature at UCLA from 2006 to 2010. He currently lives in Oakland with his wife.

Share on XFollow grantcohn