SANTA CLARA, Calif. (AP) All the optimism the San Francisco 49ers had coming into the season crumpled less than a month into the campaign when quarterback Jimmy Garoppolo blew out his knee.

Talk of a playoff run and a return to the upper echelon of the NFC was put on hold for yet another year as the 49ers were headed to a fourth straight losing season instead.

Despite the injuries to Garoppolo and projected starting running back Jerick McKinnon, coach Kyle Shanahan said he believed the Niners should have done better than finish 4-12, a drop of two wins from his first season in San Francisco.

"I look at this year and we went through some tough things this year," Shanahan said. "I look back on it and with the stuff we went through, are you going to have a great record? You have a chance to. But, odds are it's going to be tough. We only won four games. I'm not happy with that despite what's happened. I believe specifically going through the games and everything, I think we should have won seven. So, I'm down about that."

The 49ers hope the experience the young players got, plus the expected returns of Garoppolo and McKinnon next season, will be enough for the franchise to end a stretch of losing that began when Jim Harbaugh was forced out as coach following the 2014 season. San Francisco has lost 47 games since Harbaugh left, tied for the worst four-year stretch in franchise history.

The one possible bright spot is that run of ineptitude from 1977-80 led to a Super Bowl title the following season. Whether the Niners have enough pieces in place even to be a playoff team next year remains in question.

"It's hard to say," cornerback Richard Sherman said. "It's hard to tell without your guys out there. Without Jimmy G, you got your franchise quarterback you lose, what, three games into the season. You lose the running back you just paid, no games into the season. Your starting receivers get banged-up. You lose a safety a game almost every game all the way up until the 10th, 11th game. I think it will be tough to know how good we'll be until we have a consistent unit out there and show some continuity."

As much as the season-ending knee injuries to Garoppolo and McKinnon in September set San Francisco back, there were plenty of other issues on the team that need to be fixed if the Niners are to have any success in 2019.

The defense set an NFL record for futility with just seven takeaways, including a record-low two interceptions. The defensive members of the 2017 draft class expected to be building blocks provided little impact, with first-round lineman Solomon Thomas getting only one sack, first-round linebacker Reuben Foster getting released after another arrest, and third-round cornerback Ahkello Witherspoon struggling.

Those problems overshadowed the few highlights: a blowout win in the final Battle of the Bay against the Raiders; a home win against Seattle in December that snapped a 10-game losing streak to the Seahawks.

"We're not going to sit here and say anything too positive about this season," said left tackle Joe Staley, one of the only remaining ties to the winning teams under Harbaugh from 2011-13. "It's kind of been a downer for everybody. But the thing I am proud of is we've been out of it for a little bit, but we keep fighting every single week and the guys still show up. ... I'm proud of the effort of the guys. But at the end of the day, it's not an effort business. It's a results business."

The 49ers will need to get results in 2019 in the third year under Shanahan and general manager John Lynch.

The duo has provided strong leadership and Shanahan has proven to be a top play caller, as evidenced by the success he had late in the season with undrafted free agent Nick Mullens at quarterback.

The hope is the offense will be even more dynamic with a full season of Garoppolo at quarterback, the speedy McKinnon at running back after missing the entire season with a knee injury, and big-play tight end George Kittle, who set a record at the position with 1,377 yards receiving for the season.

But questions remain about Garoppolo, who was given a $137.5 million, five-year contract last offseason after leading the Niners to a 5-0 record as starter at the end of 2017.

Garoppolo wasn't nearly as efficient in his two-plus games this season before the injury. He threw three interceptions in an opening loss at Minnesota, took six sacks the following week in a win against Detroit, then fell behind 35-7 the following week at Kansas City before eventually going down with the torn knee ligament.

But the Niners are counting on Garoppolo to be a difference maker in 2019.

"We put more pressure on ourselves than anyone," Garoppolo said. "All that's just hearsay and stuff. We went through a whole offseason of that last year, so we're prepared for that. We just have to keep getting better as a team, coming together, getting together in the offseason and working. That will help us going forward."