The Cleveland Indians selected Herrin in the 29th round of the 2018 Major League Baseball draft.[5][6] Herrin signed with the Indians and made his professional debut with the Arizona League Indians, going 0–1 with a 6.16 ERA over 19 innings. He opened the 2019 season with the Mahoning Valley Scrappers and was promoted to the Lake County Captains during the season.[7] Over 23 relief appearances between both teams, he went 2–0 with a 2.93 ERA over 43 innings. He did not play minor league game in 2020 due to the cancellation of the minor league season.[8] He returned to play in 2021 with Lake County with whom he went 4–3 with a 2.57 ERA and 85 strikeouts over 73+2⁄3 innings.[9] He opened the 2022 season with the Akron RubberDucks before being promoted to the Columbus Clippers.[10] Over 46 games (two starts) between the two teams, he went 1–4 with a 4.02 ERA and 101 strikeouts over 69+1⁄3 innings.[11]
On November 15, 2022, the Guardians selected Herrin's contract and added him to the 40-man roster.[12] Herrin began the 2023 season on the Guardians' major league roster. Herrin made his debut on April 2, in a game against the Seattle Mariners, Herrin faced four batters and struck them all out. With this, he became the first pitcher to face at least four batters in his debut and strike all of them out since the mound was moved to its current distance in 1893.[13]