Despite an injury shortened sophomore season, Moran again led the Tar Heels with a .365 average and 35 RBIs.[citation needed] Moran followed the injury-plagued season by being selected as a second team All America by Louisville Slugger,[6] ACC player of the year,[7] and a finalist for the Golden Spikes Award[8] while setting a single season RBI record for UNC, with 86 runs batted in. In 2011 and 2012, he played collegiate summer baseball with the Bourne Braves of the Cape Cod Baseball League, and was named a league all-star in both seasons.[9][10] Moran led the Tar Heels in 2013 with 13 home runs, along with a .544 slugging percentage, and a .470 on-base percentage.
Professional career
Miami Marlins
The Miami Marlins selected Moran in the first round, with the sixth overall selection, of the 2013 MLB draft. Moran signed with the Marlins, receiving a $3.5 million signing bonus.[11] He hit a home run in his first professional at-bat, as a member of the Greensboro Grasshoppers of the Single–ASouth Atlantic League.[12][13] He spent all of his first professional season with Greensboro, batting .299 with four home runs and 23 RBI in 42 games.
The Astros invited Moran to spring training in 2015.[17] He began the season back with Corpus Christi. In May 2015, a throw hit Moran in the face that fractured his jaw, requiring surgery.[18][19] He was activated later in the month, but was placed back on the disabled list on June 12. He was activated June 21. In 96 games for the Hooks, he slashed .306/.381/.459 with nine home runs and 67 RBI.
Moran opened the 2016 season with the Fresno Grizzlies of the Triple–APacific Coast League.[20] The Astros promoted him to the major leagues on May 17.[21] Moran batted 2-for-19 (.105) before he was optioned back to Fresno.[22] He began the 2017 season with Fresno and was promoted to the major leagues on July 18.[23] Moran would play nine games with the Astros in 2016, compiling a .130 average and two RBI. In 117 games for Fresno, he batted .259 with ten home runs and 69 RBI.
Moran began 2017 with Fresno. He was recalled by the Astros on July 18. On July 22, Moran was injured in the sixth inning when he fouled an inside pitch from Baltimore Orioles reliever Darren O'Day straight up and into the left area of his eye. Moran went down to the ground and grabbed his face, which had started to bleed. After a lengthy time down on the field with athletic trainers—including a brief moment where he attempted to stand up but couldn't – he was carted off the field. Moran suffered a facial fracture from the foul ball, and was placed on the 10-day disabled list.
The Astros finished the 2017 season with a 101–61 record and won the 2017 World Series. Moran did not play in the playoffs, but won his first championship as he was still on the team's 40-man roster at the time.[24] In nine games for Houston, he batted .364 with one home run and three RBI, and in 79 games for Fresno, he posted a .308 batting average with 18 home runs and 63 RBI.[25]
During the Pirates home opener on April 2, 2018, in his first at-bat for the Pirates at PNC Park, Moran hit his first career grand slam off of Lance Lynn.[29] Moran finished his 2018 campaign slashing .277/.340/.407 with 11 home runs and 58 RBI in 144 games.[30]
In a game against the Miami Marlins on September 5, 2019, Moran faced his older brother Brian Moran in Brian's major league debut. He ended up striking out on a full-count slider against Brian. In the pandemic shortened 2020 season, Moran led the Pirates in total bases (84), home runs (10), and tied for first in RBI (23), slashing .247/.325/.472.[31]
On March 17, 2022, Moran officially signed a one-year contract with the Cincinnati Reds.[34] He was removed from the 40-man roster and sent outright to the Triple-A Louisville Bats on June 29.
Moran had his contract selected back to the major league roster on August 27.[35] On September 6, Moran was designated for assignment and was released on September 8.
Seattle Mariners
On January 10, 2023, Moran signed a minor league contract with the Seattle Mariners organization.[36] In 40 games for the Triple–A Tacoma Rainiers, he batted .257/.361/.397 with 5 home runs and 28 RBI. Moran opted out of his minor league contract and became a free agent on July 10.