Beathard received an invitation to play in the 2017 Senior Bowl. He met with representatives from the Chicago Bears during the week of the Senior Bowl, but failed to stand out after a week of practices. On January 28, 2017, Beathard played for the North team, and was limited to two passes for 4 passing yards and a 12-yard rush as the North lost 15–16 to the South. He attended the NFL combine and performed the vertical jump, broad jump, and positional drills. Due to a hamstring injury, he opted to skip the 40-yard dash, short shuttle, and three-cone drill. On March 27, 2017, Beathard participated at Iowa's pro day along with Desmond King, Jaleel Johnson, George Kittle, Riley McCarron, LeShun Daniels Jr., Cole Croston, Faith Ekakitie, Anthony Gair, Jake Duzey, and Ron Coluzzi. He performed the short shuttle, three-cone drill, vertical jump, broad jump, and passing drills for the team representatives and scouts who attended from all 32 NFL teams. At the conclusion of the pre-draft process, Beathard was projected to be a sixth or seventh round pick by NFL draft experts and scouts.
On June 12, 2017, Beathard signed his rookie contract, a four-year, $3.52 million with a signing bonus of $706,288. He competed with Matt Barkley and Nick Mullens throughout training camp for the job as the backup quarterback. Head coach Kyle Shanahan named him the backup to Brian Hoyer to begin the regular season.
On October 15, 2017, Beathard made his NFL debut against the Washington Redskins, replacing Hoyer in the second quarter. He played for the remainder of the game. In the fourth quarter, he threw his first NFL touchdown, a 45-yard pass to wide receiver Aldrick Robinson. He completed 19 of 36 passes for 245 passing yards, a touchdown, and an interception as the 49ers narrowly lost by a score of 26–24. After the game, Beathard was named the 49ers starter. In Week 7, in a 40–10 blowout loss to the Dallas Cowboys, Beathard was 22-of-38 for 235 yards. In addition, he had 5 carries for 30 yards and his first rushing touchdown. In Weeks 8 and 9, Beathard passed for 461 yards, a touchdown, and three interceptions while also rushing for 56 yards and a touchdown against the Philadelphia Eagles and Arizona Cardinals. The 49ers won their first game of the 2017 season in Week 10 over the New York Giants. In the 31–21 victory, Beathard completed 19 of 25 passes for 288 yards, two touchdowns, and an interception while also rushing for 15 yards and a touchdown. One of the touchdowns was for the longest play of his career, an 83-yard pass to wide receiver Marquise Goodwin.
During the 49ers' Week 11 matchup at home to the Seattle Seahawks on November 26, Beathard suffered a leg and hip injury at the end of the 4th quarter and was replaced by recent trade acquisition Jimmy Garoppolo. Although he avoided any serious injury, it was Beathard's final appearance for the 49ers in the 2017 season as Garoppolo was promoted to be the starter a few days later. Beathard finished his rookie season completing 123-of-224 passes (54.9%) for 1,430 yards, four touchdowns, and six interceptions. He also rushed for 136 yards and three touchdowns. Several members of the 49ers have publicly complimented the attitude and toughness of Beathard during the season, as he was sacked 19 times in his 7 appearances.