The San Francisco 49ers dropped their first game of the season against the Atlanta Falcons in Week 7.

The 49ers outgained the Falcons by 105 yards and by 1.5 yards per play. But seven penalties, four of which turned into first downs for the Falcons, plus four turnovers and a missed extra point, are how you lose that game.

When you’re already down your most impactful player on both sides of the ball, you can’t expect to beat anyone, let alone on the road in a short week.

You can be frustrated with the performance and understand the sky isn’t falling. The 49ers are 6-1 and remain one of, if not the best, teams in the NFL. Sunday just wasn’t their day.

Let’s take a look at the winners and losers from Week 7.

Warner finished with two tackles for loss and a couple of big stops that helped get the defense off the field. He finished with a team-high 13 tackles. Warner wasn’t targeted once. He only rushed the passer twice. That suggests Warner took away the middle of the field in coverage. Penix had two attempts over the middle of the field beyond 10 yards. Warner did his job.

He’s playing the run as well as he has in his career.

The end-of-game fumble summed up the turnover battle. Don’t let that play cloud your judgment about how Kittle played.

Kittle caught eight of his 10 receptions for 88 yards, and averaged five yards after the catch. He also caught both third-down targets for 21 yards. We knew Kittle would be heavily involved in the passing game. He was targeted at the fourth-highest rate among all tight ends in Week 7.

Sumer Sports had Kittle with a team-high five impact plays. He proved that the 49ers offense could function without Mike Evans.

It’s the three best players to start here, but that’s how it should be when your depth is depleted. You should lean on your best players, and that’s what the 49ers did.

McCaffrey finished the game with only seven carries, but that’s because of an injury and the 49ers having the ball only once in the third quarter.

McCaffrey posted an incredible 71.4% success rate, gaining 25 yards after contact. He was the 49ers’ offensive weapon on their first drive of the game. McCaffrey finished with six receptions on seven targets for 61 yards. McCaffrey caught a contested target, and he also sprawled out along the sideline to reel one in.

I didn’t watch Week 7 thinking, “Purdy cost the 49ers the game.”

There was an objectively bad decision on an interception that should’ve ended up in the 10th row. If you’ve ever played quarterback, it’s one you’ve probably thrown because you thought you had more space along the sideline than you actually did — and probably because you waited too long to decide who to throw the ball to.

Purdy had dropback on the drive before where he scrambled, and it felt like he was in the pocket for 10 seconds. He bought enough time for his tight end and picked up a first down on what would’ve been third and long.

On another play, Colton McKivitz was beaten cleanly off the line of scrimmage, which would result in a sack for 90% of quarterbacks. Purdy danced around the pocket just long enough before shoveling the ball to Jordan James, who ran for a first down—another second-and-long turned into a first down.

The second interception is one you tip your cap to the Atlanta Falcons on a design that has gotten the best of Purdy throughout the years.

Purdy finished in the top five this week among quarterbacks in success rate. His throws to Jordan Watkins, especially the one in the end zone, were on the money—the end-zone one is about as good a throw as you can make.

He made a few different throws that were contested that his pass catchers did not haul in. They are the same throws we’ve taken for granted because Evans has caught them all year.

Purdy was a big reason the 49ers were competitive on Sunday.

After everything that went wrong, the 49ers could’ve had the ball with an opportunity to tie the game. But another Pineiro missed extra point put the 49ers in a predicament.

The 49ers have been asking for it for multiple games with these misses. Pineiro’s only game without a missed kick was Week 2 against Miami. It nearly cost the team in Week 3. The next two games were closer because of Pineiro’s misses. In this one, the Niners couldn’t make up for another mistake by the kicker.

The defensive line ate some humble pie heading into the bye week. Michael Penix was pressured on 14.3% of his dropbacks, a Week 7 league low.

We’ve grown accustomed to every player winning their 1-on-1 battles at least once or twice a game. That was not the case against Atlanta.

This game should be a wake-up call for the 49ers that Osa Odighizuwa cannot be the defensive tackle who plays the most snaps for you.

You won’t confuse him for a run defender, but the 49ers cannot afford a goose egg from Odighizuwa. He had a 0.0% pass-rush win rate, the same as Sebastian Valdez. Odighizuwa compounded his lack of impact with an unforgivable offside penalty on 4th and 4 before halftime.

The penalty on James Thompson wasn’t his fault, but a penalty nonetheless.

The edge group didn’t find success, either. Mykel Williams had a 12.5% pass-rush win rate. Nobody else was above 6%. And the combination of Mykel, Romello Height, and Keion White didn’t get a tackle for loss, but they did miss two tackles.

This performance feels like it’s been coming for a month now. This group hasn’t been sharp. The pass rush has been hiding them. When the pass rush doesn’t get home or even give the illusion of pressure, receivers end up running open and unchallenging. Everything the Falcons did felt…easy.

The 49ers targeted the cornerbacks 12 times and allowed 9 receptions for 97 yards. The Falcons wideouts faced one contested catch.

Sprinkle in a couple of ill-advised penalties at inopportune times, and you get a group that looks like they were the ones playing without multiple starters.

The 49ers committed seven penalties for 55 yards, which may not sound like much on the surface, but they couldn’t have happened at a worse time. A false start on the first play from scrimmage foreshadowed what was to come.

Odighizwua’s first offside penalty led to three points.

Renardo Green had an illegal contact penalty on 2nd and 20. Jones was flagged for defensive holding on the same play.

Thompson’s offside call was on 3rd and 2.

McCaffrey had a 10-yard run negated by a holding penalty on Connor Colby to begin the fourth quarter. That led to a down-and-distance situation the offense couldn’t recover from.

On 3rd and 4, when the game was 26-20, Brandin Cooks had a false start. Purdy’s second interception came on the next play.

The turnovers on the field were devastating for the 49ers. A promising drive ended when the young running backs fumbled on back-to-back plays, stripping the offense of a red-zone possession. The same offense that’s scoring at the highest clip in the league in the red area.

That drive was going to answer Atlanta’s scoring drive.

Purdy’s first interception came on Atlanta’s 25-yard line. He should have thrown it away and lived to fight another down. You can’t make that decision, especially when you’re in field goal range.

The second interception came late in the fourth quarter with the offense around mid-field. Up until that point, it still felt like the 49ers would prevail.

Kittle’s game-ending fumble was the football gods telling the 49ers Week 7 wasn’t meant to be.

A few differences separate a true WR1 from a role player. One is contested situations. Jacob Cowing caught one of his two contested catches.

Jordan Watkins, who played well, all things considered, caught one of his three. The end zone reception would’ve been a difficult catch, but Watkins did the hard part. The same was true for the other target, who did everything but finish the catch through the ground.

If Watkins wants to play in the NFL, those are the types of catches he has to make, no matter how difficult they may seem.

Kittle couldn’t haul in either of his contested catches — something we’re not used to seeing. In a high-variance game where the Niners didn’t benefit from turnover luck, they did themselves no favors in the contested catch department.