-
Keller flew under the radar while in high school in Georgia and was committed to Presbyterian, one of the smallest schools in NCAA Division I baseball.
-
In 2013, the Diamondbacks signed him (see Transactions below).
-
In 2016, the Baseball America Prospect Handbook rated Keller as the 17th-best prospect in the Diamondbacks' organization. He was at #8 in the winter before 2017 spring training.
-
2018 season: Keller was an absolute steal in the Rule 5 Draft. He started the season in the bullpen and eventually graduated to the rotation, where he has been arguably the Royals' best starter and certainly a top-of-the-rotation guy moving forward.
Opposing hitters throughout the season have called facing Keller an "uncomfortable at-bat." His four-seam fastball, which hovers around 93-95 mph, moves like a cutter. And he has worked to develop an effective slider and changeup. During a six-game stretch, from mid-August through mid-September 2018, Keller went 4-1 with a 1.85 ERA, permitting just a .645 OPS.
-
April 17, 2019: Keller was suspended after an incident during the Royals-White Sox game, when Keller threw a pitch that hit Tim Anderson on his backside. Anderson had homered earlier in the game, and he made a rather dramatic bat flip before beginning his home run trot. Keller appealed the suspension.
April 23-29, 2019: Keller has dropped the appeal of his five-game suspension from MLB, and he began serving the suspension. Keller will be eligible to be reinstated on April 29, 2019, and manager Ned Yost said he expects Keller to make his next start then. Keller also was fined an undisclosed amount. As for the appeal, Keller said on Tuesday that he simply didn’t want to drag the process out any longer.
“It’s over with and I didn’t want to wait around,” Keller said. “I figured I would just drop it now and serve the suspension and move on.
-
Most Indispensable "Under-the-Radar' Player: Cubs: Keller couldn’t land a major-league job in free agency, so he signed a minor-league deal with the Cubs. Entering this season, he’d spent much of his seven-year career as either a starter or part-time reliever, but Chicago decided to make. him a full-time reliever, a decision that’s paid off.
Keller has appeared in a career-high 53 games, posting a 2.41 ERA, 1.04 WHIP, and the best strikeout-to-walk ratio of his career (3.22). He ranks in the 95th percentile in average exit velocity, hard-hit rate and ground-ball rate. The 30-year-old appears to have finally found his niche.
GM Carter Hawkins: “He’s taken the ball and excelled in high-leverage spots. Pretty impressive year for a guy who came into camp on a minor-league deal. (Bowden - Aug 22, 2025 - The Athletic)
TRANSACTIONS
-
June 2013: The Diamondbacks chose Keller in the 8th round, out of Flowery Branch High School in Flowery Branch, Georgia. He signed for $125,000, via scout T.R. Lewis.
-
December 14, 2017: The Reds chose Keller out of the D'Backs organization in the Rule 5 Draft.
December 14, 2017: The Reds immediately traded Keller to the Royals for a player to be named or cash.
-
Jan 15, 2021: Keller and the Royals avoided arbitration, agreeing to a one-year deal worth $3.3 million.
-
March 22, 2022: Keller and the Royals avoided arbitration, agreeing to a one-year deal worth $4.8 million.
- Jan 13, 2023: Keller and the Royals avoided arbitration, agreeing to a one-year deal for $5.7 million.
-
Nov 2, 2023: Keller elected free agency.
-
March 8, 2024: The White Sox organization signed free agent Keller.
-
May 22, 2024: Brad elected free agency.
-
May 26, 2024: The Red Sox signed Brad.
-
Aug. 13, 2024: Brad elected free agency.
-
Aug 14, 2024: The Red Sox organization signed free agent Brad.
-
March 27, 2025: The Cubs signed free agent Brad.
-
Nov 2, 2025: Brad elected free agency.
- Dec. 17, 2025: The Phillies agreed with free agent right-hander Brad Keller on a two-year, $22 million deal.
| Nickname: | N/A | Position: | RHP |
| Home: | N/A | Team: | PHILLIES - IL |
| Height: | 6' 5" | Bats: | R |
| Weight: | 250 | Throws: | R |
| DOB: | 7/27/1995 | Agent: | N/A |
| Uniform #: | 40 | ||
| Birth City: | Flowery Branch, GA | ||
| Draft: | Diamondbacks #8 - 2013 - Out of high school (GA) | ||
| YR | LEA | TEAM | SAL(K) | G | IP | H | SO | BB | GS | CG | SHO | SV | W | L | OBA | ERA |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2013 | AZL | AZL-Diamondback | 13 | 56.2 | 53 | 61 | 26 | 12 | 0 | 0 | 0 | 7 | 3 | 0.25 | 2.22 | |
| 2013 | PIO | MISSOULA | 2 | 6 | 6 | 4 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 4.50 | ||
| 2014 | PIO | MISSOULA | 8 | 33.2 | 50 | 30 | 18 | 8 | 0 | 0 | 0 | 1 | 4 | 6.95 | ||
| 2014 | AZL | AZL-Diamondback | 6 | 31.1 | 30 | 20 | 9 | 3 | 0 | 0 | 0 | 4 | 0 | 2.30 | ||
| 2014 | NWL | HILLSBORO | 1 | 6 | 1 | 8 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | ||
| 2015 | MWL | KANE COUNTY | 26 | 142 | 128 | 109 | 37 | 25 | 0 | 0 | 0 | 8 | 9 | 2.60 | ||
| 2016 | CAL | VISALIA | 24 | 135 | 147 | 99 | 26 | 24 | 0 | 0 | 0 | 9 | 7 | 4.47 | ||
| 2017 | SL | JACKSON | 26 | 130.2 | 142 | 111 | 57 | 26 | 0 | 0 | 0 | 10 | 9 | 4.68 | ||
| 2018 | AL | ROYALS | $545.00 | 41 | 140.1 | 133 | 96 | 50 | 20 | 1 | 0 | 0 | 9 | 6 | 0.252 | 3.08 |
| 2019 | AL | ROYALS | $578.00 | 28 | 165.1 | 154 | 122 | 70 | 28 | 0 | 0 | 0 | 7 | 14 | 0.247 | 4.19 |
| 2020 | AL | ROYALS | $227.00 | 9 | 54.2 | 39 | 35 | 17 | 9 | 1 | 1 | 0 | 5 | 3 | 0.202 | 2.47 |
| 2021 | AL | ROYALS | $3,350.00 | 26 | 134 | 158 | 120 | 64 | 26 | 0 | 0 | 0 | 8 | 12 | 0.297 | 5.39 |
| 2022 | AL | ROYALS | $4,825.00 | 35 | 139.2 | 153 | 102 | 57 | 22 | 0 | 0 | 1 | 6 | 14 | 0.277 | 5.09 |
| 2023 | AL | ROYALS | 11 | 45.1 | 42 | 31 | 45 | 9 | 0 | 0 | 0 | 3 | 4 | 0.259 | 4.57 | |
| 2023 | TL | NORTHWEST ARKANSAS | 6 | 8.2 | 7 | 8 | 4 | 0 | 0 | 0 | 0 | 2 | 0 | 4.15 | ||
| 2023 | IL | OMAHA | 9 | 9 | 11 | 5 | 21 | 2 | 0 | 0 | 0 | 0 | 3 | 15.00 | ||
| 2023 | AZL | ACL | 2 | 1.2 | 3 | 2 | 3 | 1 | 0 | 0 | 0 | 1 | 1 | 16.20 | ||
| 2024 | IL | WORCESTER | 13 | 52.2 | 44 | 46 | 17 | 10 | 0 | 0 | 0 | 3 | 3 | 2.91 | ||
| 2024 | IL | CHARLOTTE | 3 | 16 | 16 | 14 | 6 | 3 | 0 | 0 | 0 | 1 | 1 | 4.50 | ||
| 2025 | NL | CUBS | 68 | 69.2 | 45 | 75 | 22 | 1 | 0 | 0 | 3 | 4 | 2 | 0.182 | 2.07 | |
| 2026 | IL | LEHIGH VALLEY | 2 | 2 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 9.00 | ||
| 2026 | NL | PHILLIES | 32 | 31.1 | 29 | 32 | 13 | 0 | 0 | 0 | 3 | 2 | 1 | 0.246 | 4.02 |
-
Keller has an 89-93 mph FASTBALL, so location is very important for him. Brad also has a 79-84 mph power SLIDER and an 80-84 mph CHANGEUP.
Brad commands his heater real well, and he can both cut it or sink it on either side of the plate.
“He’s got three pitches,” Royals' assistant GM J.J. Picollo said in 2018. “He’s got a fastball, a breaking ball, and a changeup. He’s able to repeat his delivery and has a good feel for pitching. We like what we see and see him as a starter.
“We’ve got a history with him dating to high school, when our area scouts got to know him.”
-
2018 Season Pitch Usage: 4-seam Fastball 44.3% of the time, his Sinker 25.5%; Change 4.1%; and Slider 26.2% of the time. Average velocity: 4-seam 94.9 mph, Sinker 93.6, Change 89, and Slider 86 mph.
-
2019 Season Pitch Usage: 4-seam Fastball 41.9% of the time, his Sinker 24.8%; Change 1.9%; and Slider 31.4% of the time. Average velocity: 4-seam 94.1 mph, Sinker 93.4, Change 89.1, and Slider 85.4 mph.
-
2020 Season Pitch Usage: 4-seam Fastball 38.3% of the time, his Sinker 20.9%; Change 2.6%; and Slider 38.3% of the time. Average velocity: 4-seam 93.1 mph, Sinker 92.6, Change 89.3, and Slider 84.8 mph.
-
2022 Pitch Usage/Avg. Velo: Fastball 35.4% - 94.6 mph; Slider 36% - 87 mph; Sinker 24% - 93.4%.
-
Brad pitches from a high three-quarters arm slot. With improved mechanics and conditioning, Keller will have a more efficient delivery with arm speed that adds a bit of velocity and better command.
He is a pitch-to-contact guy, throwing strikes and displaying an advanced feel for the craft. More than half of the balls put in play against Keller in 2016 were hit on the ground.
-
In 2018, Keller earned the distinction of the Royals Pitcher of the Year. Keller, a Rule 5 Draft pick, emerged as the Royals' best starter in his first Major League season, going 9-6 with a 3.08 ERA.
-
2020 Improvements: Keller has been working on improving his changeup and adopting a curveball so he can be a more complete pitcher. (Jordan Foote - May 25, 2020)
-
2020 season: Brad showed he can be the ace of the Royals.
Keller might have only made nine total starts in the shortened season, but he was tremendous in six of them. The highlight of his short season was when he pitched a complete game shutout on September 13 against the Pirates. In that game, Keller gave up just five hits and walked only one batter while striking out two. He threw 111 pitches in that 11-0 Royals victory.
The Royals needed to see this kind of season from Keller because he’s going to be their ace moving forward and he proved in 2020 that he can fill that role. The team will be relying on a lot of youngsters in their rotation and Keller might end up being the oldest of the group at just 25 years old. Seeing him make this kind of progress after a shaky 2019 season was a beautiful sight. (Leigh Oleszczak - Oct.4, 2020)
It’s worth noting that the 2020 season did consist of 98 less games in the regular season, meaning Keller missed out on another 15+ starts, but we can only judge off of what we saw this year and what we saw was an ace-worthy pitcher in Brad Keller.
-
Keller will be the Royals’ 2021 Opening Day starter, manager Mike Matheny told Kansas City media. The 25-year-old will make his second Opening Day start on April 1 against Kyle Gibson and the Rangers at Kauffman Stadium. Keller was slated to start Opening Day in 2020, but he missed the start of the season with COVID-19.
Keller may have been tabbed for Opening Day twice before, but the excitement of being called into the manager’s office for that news doesn’t fade.
“It doesn’t,” Keller said. “I was really pumped about it. I had a smile on my face as soon as he told me. Really excited about it, and happy that this organization trusts me to get this season off on a good foot.
“Matheny said, ‘I think you’re the guy to lead us in the right direction.’ I was pretty excited, no doubt.”
-
2021 Season: Keller’s on-again, off-again relationship with excellent pitching continued last season when he struggled to 8-12 and a team-worst 5.39 ERA. A right lat strain forced him to the 10-day Injured List in August, and the club transferred him to the 60-day List in September.
The campaign was worse than his won-loss record, ERA and IL stint suggest. (Mike Gillespie - Jan. 9, 2022)
-
2022 Season: Considered a key rotation component coming into the season, Brad performed miserably, losing 14 games for the second time in his five-year career and posting a plus-.5.00 ERA (5.09) for the second straight year. Even a move to the bullpen didn’t help—he gave up 13 runs, 25 hits and 10 walks in 17.1 innings after manager Mike Matheny bounced him from the rotation in August. (Mike Gillespie - Oct. 16, 2022)
-
2023 Season: The right-hander agreed with the White Sox on a Minor League deal with an invite to Major League camp. Keller, 28, finished 3-4 with a 4.57 ERA in 11 games (nine starts) for the Royals in 2023 and spent all six seasons of his career with Kansas City.
Over the next few years, though, Keller's production started to drop off. From 2021 to 2023, Keller posted a 5.14 ERA, 1.629 WHIP and 0.2 WAR.
Keller exceeded 130 innings pitched in both 2021 and 2022, but shoulder injuries limited him to just 45.1 innings in 2023. The righty hit the 15-day injured list with right shoulder impingement syndrome in May, and his numerous rehab attempts were largely fruitless.
Two games after being reinstated from the 60-day injured list in September, Keller was sidelined once again with thoracic outlet syndrome. Given that he is set to join the White Sox in Spring Training camp, Keller is likely a full-go six months down the line.
Keller cashed in on solid deals during his arbitration years, making $13.95 million over the last four seasons. In 2023, Keller's salary was $5.775 million. He won't be making anywhere near that with Chicago, as he isn't even guaranteed a role in the big league pitching staff. (FanNation Fastball - Sam Connon - March 8, 2024)
-
Coming into 2025, Brad had to settle for a minor league deal with the Cubs. He spent a lot of 2023 on the injured list due to shoulder problems and then had surgery to address thoracic outlet syndrome in the fall of that year. In 2024, he was back on the mound and tossed 41 innings between the White Sox and Red Sox with a 5.44 ERA.
No one was willing to give him a big league spot last winter but he has raised his stock considerably since then. The Cubs added him to their 40-man roster after the Tokyo Series but before domestic Opening Day.
He went on to toss 69 2/3 innings out of the Chicago bullpen in 2025 with a 2.07 ERA. He struck out 27.2% of batters faced, limited walks to an 8% clip and got opponents to hit grounders on 56.1% of balls in play.The ERA is probably a bit misleading. Keller’s .243 batting average on balls in play and 81.6% strand rate were both the fortunate side. But his 2.93 FIP and 3.04 SIERA still suggest it would have been a great year even with neutral luck from the baseball gods. The Cubs moved him into a leverage role as the year wore on, with Keller eventually earning three saves and 25 holds. He made the postseason roster and tossed 5 2/3 playoff innings with just one run allowed. (Darragh McDonald | Oct 14, 2025 - MLB Trade Rumors)
-
August 25, 2016: Brad was on the DL.
-
April 23-May 1, 2017: Keller was on the DL.
-
Aug 28-end of 2019 season: Brad was on the Il with arm fatigue. Royals manager Ned Yost said that he was shutting Keller down for the rest of the season.
Keller lasted just 1.1 innings in a 19-4 loss to Oakland. He labored during that outing—his shortest in the big leagues. And he walked three straight batters at one point.
“We’re going to finish him up with some side sessions next month,” Yost said. “There’s nothing to gain by throwing him any more this season. He’ll do all his work and finish it off with pitching coach Cal Eldred, working on mechanics so he goes into the off-season feeling good.
-
July 14-Aug 6, 2020: Brad went on the IL with COVID-19.
-
Aug 27-Nov 5, 2021: Brad was on the IL with right lat strain.
-
May 16-Sept 9, 2023: Brad was on the IL with right shoulder impingement syndrome.
-
Sept 18-Oct 2, 2023: Brad was on the IL with thoracic outlet syndrome.
- June 14-July 8, 2026: Brad was on the IL with right forearm tendinitis.
- July 13, 2026: Brad was on the IL with right elbow UCL tear.