Beathard al college giocò a football con gli Iowa Hawkeyes dal 2013 al 2016. Fu scelto dai San Francisco 49ers nel corso del terzo giro (104º assoluto) del Draft NFL 2017.[1] Debuttò come professionista subentrando dopo un'altra prova negativa di Brian Hoyer nel primo tempo del sesto turno contro i Washington Redskins.[2] Beathard passò 245 yard, un touchdown e subì un intercetto, sfiorando la vittoria in rimonta. Alla fine della gara fu nominato nuovo quarterback titolare dall'allenatore Kyle Shanahan.[3] Nella prima gara da partente passò 235 yard e segnò un touchdown su corsa ma perse anche due fumble e San Francisco fu sconfitta nettamente contro i Dallas Cowboys per 40-10.[4]
A novembre, i 49ers acquisirono in uno scambio il quarterback Jimmy Garoppolo ma Beathard continuò a partire come titolare e nel decimo turno colse la prima vittoria come professionista contro i New York Giants passando 288 yard, 2 touchdown e segnando una terza marcatura su corsa.[5] Due settimane dopo, nella sconfitta contro i Seattle Seahawks, fu costretto a lasciare la gara nel finale per un infortunio, venendo sostituito da Garoppolo.[6] A partire dalla gara successiva fu quest'ultimo ad essere nominato titolare, rimanendolo per il resto della stagione.[7] La stagione di Beathard si chiuse così con 1.430 yard passate, 4 touchdown e 6 intercetti subiti in 7 presenze.
Il 22 dicembre 2020, Beathard fu nominato titolare per la gara della settimana 16 contro gli Arizona Cardinals a causa di un infortunio a un gomito di Nick Mullens.[8][9] In quella partita passò 182 yard e 3 touchdowns portando i 49ers alla vittoria per 20–12.[10][11]
Jacksonville Jaguars
Il 24 marzo 2021 Beathard firmò un contratto biennale con i Jacksonville Jaguars.