SANTA CLARA, Calif. (AP) The defense held an opponent's top back under 100 yards rushing for the first time since the opener, Colin Kaepernick and the offense delivered a few big plays and the San Francisco 49ers were competitive until the end.
Despite clear signs of progress Sunday, that all added up to an eighth straight loss for the Niners when they lost 23-20 to the Arizona Cardinals on a last-second field goal.
''I don't think anybody is patting themselves on the back for being close with Arizona,'' coach Chip Kelly said Monday. ''That's not what this deal is all about. It's about winning. At the end of the day we didn't make enough plays. We probably made one less play than they did and they ended up winning the game on the last play of the game. That's what it's all about.''
But after losing by an average of more than 17 points the previous seven games with the closest defeat being a seven-point loss to Dallas last month, having a chance to win late was a major step forward for the 49ers (1-8).
The biggest difference for San Francisco came on the defensive end where David Johnson was held to 55 yards on 19 carries and Arizona finished with just 80 yards for the game on the ground.
The Niners had allowed a 100-yard rusher for seven straight games - the longest streak in NFL history, according to the Elias Sports Bureau - and was on pace to give up the most yards rushing in a season in 36 years.
Johnson had run for 157 yards and two touchdowns in a 33-21 win for the Cardinals last month in Santa Clara but struggled to get going at all against that defense in the rematch.
''First and foremost, I think we tackled better,'' Kelly said. ''That was the least amount of missed tackles that we had on the season in that game.''
The offense has also shown signs of improvement the more Kaepernick plays. After failing to complete even half his passes in his first two starts in place of Blaine Gabbert, Kaepernick has been much more effective since the bye.
He threw for 398 yards and two TDs on Nov. 6 against New Orleans and then went 17 for 30 for 210 yards, one touchdown and no interceptions against the Cardinals. He also ran for 55 yards, including the game-tying touchdown with 1:55 to play.
''I think our guys have an understanding and a feeling of how we're moving forward offensively and starting to kind of understand how things work off of things,'' Kelly said. ''They're being able to answer some of the questions that are being presented to them. They kind of get a feel for where we are. So, we're still a ways away, 20 points a game isn't enough in this league. We still need to score more than that and we need to capitalize.''
The Niners failed to take full advantage of the four turnovers the defense generated. Twice they started drives in Cardinals territory following turnovers only to punt.
The most costly came late in the third quarter when San Francisco got to the Arizona 28 following an interception by Eric Reid. But a dropped pass by Chris Harper and two holding penalties took the Niners out of field position and they punted.
The task doesn't get any easier for the Niners this week with Tom Brady and the New England Patriots set to visit fresh off a home loss to Seattle. San Francisco needs a win to avoid tying the longest losing streak in franchise history: a nine-gamer in 1978 that led to the hiring of Bill Walsh as coach the following season.
''You get a chance to play against Tom Brady and Bill Belichick,'' Kelly said. ''If that doesn't get your blood boiling, then you're in the wrong sport.''
For more NFL coverage: http://www.pro32.ap.org and http://www.twitter.com/AP-NFL