The game was won on a touchdown. It was the only touchdown of the game and it came in the closing seconds of overtime. After eating over seven-and-a-half minutes of the extra 10-minute period and marching 73 yards down the field in 17 plays, the San Francisco 49ers were forced to kick a field goal.

The 49ers had to be feeling pretty confident of their chances of escaping the Arizona desert with their first victory in tow. That's when the Arizona Cardinals offense mounted its own drive that ate up just under two minutes and saw it travel 75 yards in just seven plays. As wide receiver Larry Fitzgerald came down with the football in the end zone to finish the game, all quarterback Brian Hoyer and the rest of his teammates could do was watch and then accept their fate. The 49ers would remain winless.

"I was disappointed," said 49ers head coach Kyle Shanahan. "I thought we had the opportunities there to win the game on both sides of the ball a number of times throughout the game and we didn't get it done. So, disappointing."

Before Fitzgerald's touchdown, the 49ers and Cardinals spent the entire afternoon in a kicking battle. The two teams went into overtime tied 12-12. All 24 of those points were from field goals.

For the third straight week, the 49ers lost a game by three or fewer points, falling to 0-4 on the season. Their previous game had been an offensive shootout with the 49ers and Los Angeles Rams combining for 80 points. In the other two close losses, the two defenses – for the most part – controlled the games while the offense failed to score a touchdown in either matchup. In fact, the 49ers offense has now failed to score a touchdown in three of its four games this season.

"We see things on tape that we think we can get it done," Shanahan said. "We felt like we've given us a chance four weeks in a row. We obviously haven't gotten it done but I know when they turn on that tape on the plane or tomorrow morning when they get in, they're going to see that we had opportunities to win that game. Just like I thought we did versus LA. Just like I thought we did versus Seattle.

"And when you do have opportunities, you don't need to make stuff up. You've got to get better and you've got find out why you aren't finishing and why aren't you making those plays in the moment of truth. To me, all you can do is get better so you're more consistent in making those."

Hoyer was 24 of 49 for 234 yards and an interception against Arizona. He has thrown an interception in each of his four starts for the 49ers and averaged just 5.8 yards per attempt. While under pressure from the Cardinals defense, Hoyer completed just three of his 11 pass attempts and was sacked three times, according to Pro Football Focus. The 49ers also committed 13 penalties, which cost the team 113 yards.

"I probably missed a few throws," said Hoyer. "Got to figure that out. You just keep going. I think one thing that comes to mind is that we had some drives going and then we shot ourselves in the foot with a penalty. We've got to avoid that. It's frustrating. You get so close and the difference in the game was one touchdown and we've got to be able to score touchdowns being in the red area. We're going to go back, look at the film, and see what we can do better."

"You've got to throw and catch better," Shanahan said. "To me, it's as simple as that or at least it was in this game, from what I saw. When guys are open, you've got the time, you've got to hit them. And when he does hit you, you've got to catch it. I know nobody's perfect but there was way too much of that between both positions today."

Four of Hoyer's passes were dropped against the Cardinals, which increased the season total to 12 by 49ers targets. That number is the most for any NFL quarterback this season, according to Pro Football Focus. Following the game, Hoyer was asked how he handles those situations.

"You just keep throwing," said Hoyer. "I'm not always going to throw the perfect ball. I don't expect those guys to be perfect. You always strive for it but I've never been one to say, 'Oh, this guy dropped the ball. I'm not going to throw to him.' I'm going to try to go through the progression the best I can, the way I'm coached to do, and throw the ball to the guy who, hopefully, is the open guy. We all have to do better. I have to throw better, we have to execute the plays better, and it's just so frustrating because we're so close."

The 49ers will now prepare for a road game against the Indianapolis Colts on Sunday, October 8.