Saturday First-Inning Overview: April 25, 2026
Command separates Saturday's first-inning winners from losers. Four pitchers bring elite control to their opening innings, while six arms carry elevated walk rates or bloated ERAs that invite early scoring. The market is pricing two extremes: -141 for the Crochet NRFI at Baltimore and -147 for the Ray NRFI at Oracle Park suggest the model sees a clear picture. Meanwhile, the YRFI lean on walk-heavy Ragans and struggle-prone Singer sits at lower confidence, reflecting genuine first-inning noise.
Crochet enters this matchup riding a five-game NRFI streak with a first-inning ERA of 4.08 and a 1.33 WHIP. That dominance is not a fluke. Boston Red Sox lineup is batting just .164 with a wOBA of 0.242 in opening frames, dead last on this slate. More damaging: Baltimore Orioles have generated only 19 YRFI outcomes across 26 home games, a 73% NRFI rate that reflects both their weak offensive order and the cold spring at Camden Yards. Trevor Rogers carries a 7.88 first-inning ERA with a 1.63 WHIP, a counter-signal, but BOS's L10 is 4-6 YRFI overall, suggesting fatigue. The play is clear: elite control against the weakest first-inning lineup construction on the board.
Gausman has become a nightmare matchup for Cleveland in early innings. Across his last two starts against the Guardians, he's posted 8.0 innings pitched with zero earned runs, a 0.00 ERA across 14.0 total innings of first-inning work. Cleveland's lineup hits just .230 overall and enters on a streaky offensive pattern. Cantillo will carry elevated walk risk (44 walks in 98 innings, a 4.0 BB/9 rate), but Gausman's command and Toronto's home-park advantage, plus the Guardians' vulnerability to fastball-heavy, strikeout-heavy arms, tips this toward a scoreless opening. This is a pitcher-advantage game, not a lineup advantage game.
Oracle Park does the heavy lifting here. The Giants' home runs factor sits at 0.93, meaning fewer fly balls escape and cold bay wind suppresses offense. Robbie Ray and Eury Pérez both carry sub-4.00 ERAs in 2026. Miami is scoring just 3.3 runs per game, one of the weakest offensive profiles in baseball, and the main committee already leaned Under 7.5 total runs, a signal that expected scoring is depressed. When both starters post solid control profiles and the ballpark favors pitchers, NRFI is a formality. San Francisco's pitching culture also emphasizes fastball command early in counts, which plays into Ray's wheelhouse. Take it.
Bryan Woo represents elite first-inning control. In 2026, he's recorded only 6 walks across 32 innings pitched (1.69 BB/9), a rate that minimizes baserunner accumulation and early chaos. Matthew Liberatore enters with a 4.21 overall ERA but carries 40 walks in 151.2 innings, an elevated walk rate that Woo will not mirror. The market total of 7.5 reflects an expectation of low scoring from both teams, and back-to-back game fatigue (both teams played yesterday) tends to suppress first-inning aggression. This is a game where early-inning efficiency from one side, Woo's side, matters more than lineup names. Command wins scoreless opening frames.
Zack Wheeler is making his 2026 season debut, which historically means conservative pitch management and careful early-inning sequencing. Philadelphia, meanwhile, is 0-10 over their last ten games with a .221 team batting average and a .663 OPS, among the worst offensive outputs in baseball. Their first-inning run rate sits at just 3.5 per game. Bryce Elder has posted a 1.50 ERA in 26 innings pitched this year, suggesting strong early command. When a season-debut pitcher (cautious) faces a lineup in freefall (.221 AVG), NRFI is the path of least resistance. Atlanta's home-field advantage and Elder's ability to limit early damage support the scoreless lean.
Shane McClanahan carries a 5.00 overall ERA in 2026, but the real issue is his walk profile: 11 walks in 18 innings pitched, a 5.5 BB/9 rate. Both his April 6 and April 14 starts yielded 4 walks apiece, creating base-traffic risk in early innings. Bailey Ober has allowed 3 earned runs in just 4 innings pitched versus Tampa Bay (a 6.75 first-inning ERA on limited sample). The market sits near-even, reflecting genuine volatility. However, McClanahan's inability to limit free passes in early frames, combined with his recent April 19 outing allowing 4 earned runs, suggests first-inning scoring is plausible. This is not a strong lean, but the walk rate is the key indicator.
Mike Burrows carries a 6.75 ERA and has surrendered 5 home runs in just 26.2 innings pitched in 2026. New York enters on a seven-game winning streak with a +45 run differential and an expected 5.1 runs in this matchup. The Yankees' first-inning offense is motivated and hot. Ryan Weathers' overall 3.99 ERA provides some stability, but Burrows' volatility and home-run susceptibility in a game where New York is favored to score early makes a first-inning run credible. Confidence is low because we lack confirmed first-inning-specific pitcher splits, but Burrows' overall ERA and HR rate suggest early vulnerability.
Jake Irvin carries a 6.00 ERA in 2026 with a 1.53 WHIP, a pitcher who allows baserunners and runs. Washington is scoring 5.5 runs per game team-wide, a mid-pack offense that can get to struggling arms early. The market sits essentially at a coin flip (-120 YRFI implied), suggesting oddsmakers see genuine uncertainty. However, Irvin's ability to keep runs off the board has been poor all season, and day-after-night games can produce earlier-than-usual offensive patterns. This is a lean on overall ERA struggles, not a strong first-inning signal, which explains the low confidence. The play exists, but the data is thin.
Cole Ragans is a walk machine in 2026: 18 walks in 21 innings pitched, a 7.7 BB/9 rate that invites first-inning chaos. His last start produced 7 earned runs in just 4.1 innings versus New York, suggesting recent volatility. Walbert Urena carries a 2.35 overall ERA on limited sample (7.2 innings), but Ragans' extreme walk rate is the dominant signal. Kauffman Stadium runs factor sits near neutral at 1.00, so park effects do not suppress scoring. This is a play on walk-rate volatility, not a strong first-inning pitcher matchup, which explains why confidence is low. When a pitcher walks batters at a 7.7 BB/9 clip, early damage becomes likely.
Brady Singer has posted a 5.32 ERA in 2026 and gave up 5 earned runs in just 2.2 innings pitched at Miami on April 8. His volatility is real. Detroit averages 4.5 runs per game and features a lineup that can capitalize on control issues. Great American Ball Park carries a 1.08 runs factor, meaning the ballpark slightly favors offensive output. Jack Flaherty carries a 4.58 overall ERA with a 7.7 BB/9 walk rate, his own volatility, so this matchup features two pitchers prone to early baserunners. The edge goes to first-inning scoring because Singer's recent implosion and GABP's run-friendly environment outweigh Flaherty's control struggles. Confidence is low due to missing official first-inning splits, but the overall context suggests a run is more likely than not.
MLB First-Inning Strategy Notes
The best first-inning bets isolate one variable: command. Crochet's five-game NRFI streak, Gausman's recent dominance versus Cleveland, Woo's 1.69 BB/9 rate, and Wheeler's season-debut caution all control the first-inning narrative. Walk rates kill scoreless frames faster than lineup names ever will. Ragans at 7.7 BB/9, McClanahan at 5.5 BB/9, and Singer's recent meltdown predictably favor YRFI outcomes. The market understands this: the tightest spreads appear where data is thinnest, and the widest spreads (NRFI -147 at Oracle Park) align with the clearest command pictures.
{"author_slug":"michelle-goldman","nrfi_picks":[{"game":"Boston Red Sox at Baltimore Orioles","away_pitcher":"Garrett Crochet","home_pitcher":"Trevor Rogers","pick":"NRFI","confidence":"MEDIUM","odds":"-141","reasoning_summary":"Crochet riding a 5-game NRFI streak with elite first-inning command; Baltimore's first-inning scoring rate just 19 YRFI in 26 games.","contract_id":"385738403","park_factor":0.938,"away_1st_inn_xwoba":0.323,"away_1st_inn_k_pct":18.5,"away_1st_inn_hard_hit_pct":52.6,"away_1st_inn_bb_pct":3.7,"away_1st_inn_barrel_pct":3.7,"away_1st_inn_velo":92.0,"away_1st_inn_whiff_pct":11.9,"away_era_1st":2.25,"away_nrfi_record":"28-9","away_nrfi_rate":75.7,"away_1st_inn_starts":37,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":27,"away_season_era":7.88,"away_fip":4.93,"away_fip_season":2026,"away_pitch_count":5,"away_fastball_pct":81.5,"away_pitch_arsenal":[{"code":"FC","name":"Cutter","pct":28.7,"count":123,"avg_speed":90.9},{"code":"FF","name":"Four-seam FB","pct":28.3,"count":121,"avg_speed":95.9},{"code":"SI","name":"Sinker","pct":24.5,"count":105,"avg_speed":95.3},{"code":"ST","name":"Sweeper","pct":13.1,"count":56,"avg_speed":83.3},{"code":"CH","name":"Changeup","pct":5.4,"count":23,"avg_speed":88.1}>,"away_last_3":[{"date":"2026-04-19","opponent":"Detroit Tigers","opp_id":116,"runs":1,"hits":2,"nrfi":false,"game_pk":824777},{"date":"2026-04-13","opponent":"Minnesota Twins","opp_id":142,"runs":4,"hits":4,"nrfi":false,"game_pk":823725},{"date":"2026-04-07","opponent":"Milwaukee Brewers","opp_id":158,"runs":0,"hits":0,"nrfi":true,"game_pk":824780}>,"away_nrfi_label":"2025-26 \u00b7 37 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.115,"home_1st_inn_k_pct":26.7,"home_1st_inn_hard_hit_pct":9.1,"home_1st_inn_bb_pct":0.0,"home_1st_inn_barrel_pct":0.0,"home_1st_inn_velo":89.9,"home_1st_inn_whiff_pct":21.4,"home_era_1st":1.5,"home_nrfi_record":"21-2","home_nrfi_rate":91.3,"home_1st_inn_starts":23,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":15,"home_season_era":4.08,"home_fip":3.66,"home_fip_season":2026,"home_pitch_count":5,"home_fastball_pct":63.5,"home_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":42.4,"count":201,"avg_speed":92.5},{"code":"CH","name":"Changeup","pct":24.3,"count":115,"avg_speed":86.5},{"code":"ST","name":"Sweeper","pct":12.2,"count":58,"avg_speed":77.8},{"code":"FC","name":"Cutter","pct":11.6,"count":55,"avg_speed":81.4},{"code":"SI","name":"Sinker","pct":9.5,"count":45,"avg_speed":92.3}>,"home_last_3":[{"date":"2026-04-19","opponent":"Cleveland Guardians","opp_id":114,"runs":0,"hits":0,"nrfi":true,"game_pk":824452},{"date":"2026-04-14","opponent":"Arizona Diamondbacks","opp_id":109,"runs":0,"hits":1,"nrfi":true,"game_pk":824853},{"date":"2026-04-07","opponent":"Chicago White Sox","opp_id":145,"runs":0,"hits":0,"nrfi":true,"game_pk":824618}>,"home_nrfi_label":"2025-26 \u00b7 23 GS","home_arsenal_season":2026,"market_nrfi_pct":58.5,"model_nrfi_pct":56.5,"nrfi_pct":56.5,"model_tier":"Lean NRFI","model_eligible":true,"confidence_score":83,"edge":-2.0},{"game":"Cleveland Guardians at Toronto Blue Jays","away_pitcher":"Joey Cantillo","home_pitcher":"Kevin Gausman","pick":"NRFI","confidence":"MEDIUM","odds":"-141","reasoning_summary":"Gausman has held Cleveland scoreless across 14.0 consecutive innings in recent head-to-heads; Cleveland's lineup batting just .230 overall.","contract_id":"385738381","park_factor":0.975,"away_1st_inn_xwoba":0.211,"away_1st_inn_k_pct":41.2,"away_1st_inn_hard_hit_pct":44.4,"away_1st_inn_bb_pct":5.9,"away_1st_inn_barrel_pct":5.9,"away_1st_inn_velo":87.1,"away_1st_inn_whiff_pct":25.0,"away_era_1st":5.54,"away_nrfi_record":"13-5","away_nrfi_rate":72.2,"away_1st_inn_starts":18,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":17,"away_season_era":3.2,"away_fip":3.81,"away_fip_season":2026,"away_pitch_count":4,"away_fastball_pct":48.6,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":48.6,"count":210,"avg_speed":91.7},{"code":"CH","name":"Changeup","pct":20.8,"count":90,"avg_speed":80.4},{"code":"SL","name":"Slider","pct":16.7,"count":72,"avg_speed":82.9},{"code":"CU","name":"Curveball","pct":13.9,"count":60,"avg_speed":79.1}>,"away_last_3":[{"date":"2026-04-19","opponent":"Baltimore Orioles","opp_id":110,"runs":0,"hits":1,"nrfi":true,"game_pk":824452},{"date":"2026-04-14","opponent":"St. Louis Cardinals","opp_id":138,"runs":1,"hits":1,"nrfi":false,"game_pk":823072},{"date":"2026-04-08","opponent":"Kansas City Royals","opp_id":118,"runs":0,"hits":0,"nrfi":true,"game_pk":824455}>,"away_nrfi_label":"2025-26 \u00b7 18 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.178,"home_1st_inn_k_pct":27.8,"home_1st_inn_hard_hit_pct":18.2,"home_1st_inn_bb_pct":11.1,"home_1st_inn_barrel_pct":0.0,"home_1st_inn_velo":89.1,"home_1st_inn_whiff_pct":28.2,"home_era_1st":3.66,"home_nrfi_record":"27-10","home_nrfi_rate":73.0,"home_1st_inn_starts":37,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":18,"home_season_era":2.54,"home_fip":2.18,"home_fip_season":2026,"home_pitch_count":3,"home_fastball_pct":50.8,"home_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":50.8,"count":223,"avg_speed":93.8},{"code":"FS","name":"Splitter","pct":42.8,"count":188,"avg_speed":83.9},{"code":"SL","name":"Slider","pct":6.4,"count":28,"avg_speed":84.0}>,"home_last_3":[{"date":"2026-04-19","opponent":"Arizona Diamondbacks","opp_id":109,"runs":0,"hits":1,"nrfi":true,"game_pk":825100},{"date":"2026-04-14","opponent":"Milwaukee Brewers","opp_id":158,"runs":0,"hits":0,"nrfi":true,"game_pk":823802},{"date":"2026-04-07","opponent":"Los Angeles Dodgers","opp_id":119,"runs":0,"hits":0,"nrfi":true,"game_pk":822831}>,"home_nrfi_label":"2025-26 \u00b7 37 GS","home_arsenal_season":2026,"market_nrfi_pct":58.5,"model_nrfi_pct":58.5,"nrfi_pct":58.5,"model_tier":"Strong NRFI","model_eligible":false,"confidence_score":65,"edge":0.0},{"game":"Miami Marlins at San Francisco Giants","away_pitcher":"Eury P\u00e9rez","home_pitcher":"Robbie Ray","pick":"NRFI","confidence":"MEDIUM","odds":"-147","reasoning_summary":"Oracle Park's 0.93 runs factor suppresses scoring; both starters posting sub-4.00 ERAs in 2026; SF averages 3.3 R/G.","contract_id":"385738349","away_1st_inn_xwoba":0.255,"away_1st_inn_k_pct":35.0,"away_1st_inn_hard_hit_pct":45.5,"away_1st_inn_bb_pct":10.0,"away_1st_inn_barrel_pct":10.0,"away_1st_inn_velo":94.0,"away_1st_inn_whiff_pct":40.0,"away_era_1st":6.75,"away_nrfi_record":"15-10","away_nrfi_rate":60.0,"away_1st_inn_starts":25,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":20,"away_season_era":4.15,"away_fip":4.64,"away_fip_season":2026,"away_pitch_count":5,"away_fastball_pct":52.3,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":52.3,"count":226,"avg_speed":98.2},{"code":"SL","name":"Slider","pct":15.5,"count":67,"avg_speed":87.3},{"code":"ST","name":"Sweeper","pct":15.0,"count":65,"avg_speed":83.7},{"code":"CH","name":"Changeup","pct":10.2,"count":44,"avg_speed":89.0},{"code":"CU","name":"Curveball","pct":6.9,"count":30,"avg_speed":81.1}>,"away_last_3":[{"date":"2026-04-19","opponent":"Milwaukee Brewers","opp_id":158,"runs":0,"hits":0,"nrfi":true,"game_pk":823881},{"date":"2026-04-13","opponent":"Atlanta Braves","opp_id":144,"runs":0,"hits":0,"nrfi":true,"game_pk":824937},{"date":"2026-04-08","opponent":"Cincinnati Reds","opp_id":113,"runs":2,"hits":2,"nrfi":false,"game_pk":823885}>,"away_nrfi_label":"2025-26 \u00b7 25 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.373,"home_1st_inn_k_pct":15.8,"home_1st_inn_hard_hit_pct":42.9,"home_1st_inn_bb_pct":10.5,"home_1st_inn_barrel_pct":15.8,"home_1st_inn_velo":87.9,"home_1st_inn_whiff_pct":41.5,"home_era_1st":3.09,"home_nrfi_record":"28-9","home_nrfi_rate":75.7,"home_1st_inn_starts":37,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":19,"home_season_era":2.86,"home_fip":4.37,"home_fip_season":2026,"home_pitch_count":4,"home_fastball_pct":46.2,"home_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":46.2,"count":222,"avg_speed":93.5},{"code":"SL","name":"Slider","pct":33.3,"count":160,"avg_speed":84.7},{"code":"CH","name":"Changeup","pct":12.9,"count":62,"avg_speed":85.1},{"code":"KC","name":"Knuckle Curve","pct":7.7,"count":37,"avg_speed":78.2}>,"home_last_3":[{"date":"2026-04-19","opponent":"Washington Nationals","opp_id":120,"runs":0,"hits":1,"nrfi":true,"game_pk":822750},{"date":"2026-04-14","opponent":"Cincinnati Reds","opp_id":113,"runs":0,"hits":0,"nrfi":true,"game_pk":824531},{"date":"2026-04-07","opponent":"Philadelphia Phillies","opp_id":143,"runs":0,"hits":1,"nrfi":true,"game_pk":823235}>,"home_nrfi_label":"2025-26 \u00b7 37 GS","home_arsenal_season":2026,"market_nrfi_pct":59.5,"model_nrfi_pct":61.4,"nrfi_pct":61.4,"model_tier":"Strong NRFI","model_eligible":true,"confidence_score":85,"edge":1.9},{"game":"Seattle Mariners at St. Louis Cardinals","away_pitcher":"Bryan Woo","home_pitcher":"Matthew Liberatore","pick":"NRFI","confidence":"MEDIUM","odds":"-141","reasoning_summary":"Woo's elite control profile (1.69 BB/9) minimizes first-inning baserunner accumulation; under total priced at 7.5.","contract_id":"385738397","park_factor":0.992,"away_1st_inn_xwoba":0.24,"away_1st_inn_k_pct":11.1,"away_1st_inn_hard_hit_pct":33.3,"away_1st_inn_bb_pct":0.0,"away_1st_inn_barrel_pct":0.0,"away_1st_inn_velo":93.6,"away_1st_inn_whiff_pct":21.9,"away_era_1st":5.1,"away_nrfi_record":"24-11","away_nrfi_rate":68.6,"away_1st_inn_starts":35,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":18,"away_season_era":2.25,"away_fip":2.23,"away_fip_season":2026,"away_pitch_count":5,"away_fastball_pct":74.0,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":51.2,"count":220,"avg_speed":95.5},{"code":"SI","name":"Sinker","pct":22.8,"count":98,"avg_speed":95.2},{"code":"ST","name":"Sweeper","pct":13.5,"count":58,"avg_speed":83.6},{"code":"SL","name":"Slider","pct":8.4,"count":36,"avg_speed":86.1},{"code":"CH","name":"Changeup","pct":4.2,"count":18,"avg_speed":88.8}>,"away_last_3":[{"date":"2026-04-19","opponent":"Texas Rangers","opp_id":140,"runs":0,"hits":1,"nrfi":true,"game_pk":823150},{"date":"2026-04-14","opponent":"San Diego Padres","opp_id":135,"runs":0,"hits":1,"nrfi":true,"game_pk":823315},{"date":"2026-04-08","opponent":"Texas Rangers","opp_id":140,"runs":0,"hits":1,"nrfi":true,"game_pk":822915}>,"away_nrfi_label":"2025-26 \u00b7 35 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.355,"home_1st_inn_k_pct":10.0,"home_1st_inn_hard_hit_pct":29.4,"home_1st_inn_bb_pct":5.0,"home_1st_inn_barrel_pct":5.0,"home_1st_inn_velo":90.3,"home_1st_inn_whiff_pct":12.9,"home_era_1st":3.41,"home_nrfi_record":"25-9","home_nrfi_rate":73.5,"home_1st_inn_starts":34,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":20,"home_season_era":3.67,"home_fip":5.43,"home_fip_season":2026,"home_pitch_count":7,"home_fastball_pct":46.6,"home_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":36.0,"count":156,"avg_speed":94.4},{"code":"SL","name":"Slider","pct":24.9,"count":108,"avg_speed":86.1},{"code":"CH","name":"Changeup","pct":16.6,"count":72,"avg_speed":88.4},{"code":"CU","name":"Curveball","pct":10.4,"count":45,"avg_speed":77.9},{"code":"SI","name":"Sinker","pct":8.3,"count":36,"avg_speed":94.6},{"code":"FC","name":"Cutter","pct":2.3,"count":10,"avg_speed":90.0},{"code":"FS","name":"Splitter","pct":1.4,"count":6,"avg_speed":87.3}>,"home_last_3":[{"date":"2026-04-19","opponent":"Houston Astros","opp_id":117,"runs":0,"hits":0,"nrfi":true,"game_pk":824205},{"date":"2026-04-13","opponent":"Cleveland Guardians","opp_id":114,"runs":1,"hits":1,"nrfi":false,"game_pk":823073},{"date":"2026-04-07","opponent":"Washington Nationals","opp_id":120,"runs":1,"hits":3,"nrfi":false,"game_pk":822754}>,"home_nrfi_label":"2025-26 \u00b7 34 GS","home_arsenal_season":2026,"market_nrfi_pct":58.5,"model_nrfi_pct":56.4,"nrfi_pct":56.4,"model_tier":"Lean NRFI","model_eligible":true,"confidence_score":83,"edge":-2.1},{"game":"Philadelphia Phillies at Atlanta Braves","away_pitcher":"Zack Wheeler","home_pitcher":"Bryce Elder","pick":"NRFI","confidence":"MEDIUM","odds":"-120","reasoning_summary":"Wheeler's season debut signals conservative early-inning pitch deployment; Philadelphia 0-10 in last 10 games, .221 avg, 3.5 R/G.","contract_id":"385739068","park_factor":0.977,"away_1st_inn_xwoba":0.211,"away_1st_inn_k_pct":28.1,"away_1st_inn_hard_hit_pct":37.9,"away_1st_inn_bb_pct":6.7,"away_1st_inn_barrel_pct":2.2,"away_1st_inn_velo":93.0,"away_1st_inn_whiff_pct":27.2,"away_era_1st":2.25,"away_nrfi_record":"19-5","away_nrfi_rate":79.2,"away_1st_inn_starts":24,"away_nrfi_season":2025,"away_stats_season":2025,"away_stats_pa":89,"away_season_era":2.71,"away_fip":2.97,"away_fip_season":2025,"away_pitch_count":6,"away_fastball_pct":66.6,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":40.9,"count":979,"avg_speed":96.1},{"code":"SI","name":"Sinker","pct":17.1,"count":409,"avg_speed":95.4},{"code":"ST","name":"Sweeper","pct":14.9,"count":356,"avg_speed":83.7},{"code":"CU","name":"Curveball","pct":9.7,"count":232,"avg_speed":81.1},{"code":"FS","name":"Splitter","pct":8.9,"count":212,"avg_speed":87.1},{"code":"FC","name":"Cutter","pct":8.6,"count":206,"avg_speed":91.8}>,"away_last_3":[{"date":"2025-08-15","opponent":"Washington Nationals","opp_id":120,"runs":1,"hits":1,"nrfi":false,"game_pk":776739},{"date":"2025-08-10","opponent":"Texas Rangers","opp_id":140,"runs":2,"hits":2,"nrfi":false,"game_pk":776800},{"date":"2025-08-02","opponent":"Detroit Tigers","opp_id":116,"runs":0,"hits":1,"nrfi":true,"game_pk":776912}>,"away_nrfi_label":"2025 \u00b7 24 GS","away_arsenal_season":2025,"home_1st_inn_xwoba":0.265,"home_1st_inn_k_pct":27.3,"home_1st_inn_hard_hit_pct":27.3,"home_1st_inn_bb_pct":18.2,"home_1st_inn_barrel_pct":0.0,"home_1st_inn_velo":88.1,"home_1st_inn_whiff_pct":35.9,"home_era_1st":5.46,"home_nrfi_record":"22-11","home_nrfi_rate":66.7,"home_1st_inn_starts":33,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":22,"home_season_era":1.5,"home_fip":3.13,"home_fip_season":2026,"home_pitch_count":5,"home_fastball_pct":53.6,"home_pitch_arsenal":[{"code":"SL","name":"Slider","pct":35.3,"count":150,"avg_speed":83.3},{"code":"FF","name":"Four-seam FB","pct":21.9,"count":93,"avg_speed":92.5},{"code":"SI","name":"Sinker","pct":20.2,"count":86,"avg_speed":91.1},{"code":"FC","name":"Cutter","pct":11.5,"count":49,"avg_speed":88.8},{"code":"CH","name":"Changeup","pct":11.1,"count":47,"avg_speed":85.7}>,"home_last_3":[{"date":"2026-04-20","opponent":"Washington Nationals","opp_id":120,"runs":2,"hits":2,"nrfi":false,"game_pk":822749},{"date":"2026-04-15","opponent":"Miami Marlins","opp_id":146,"runs":0,"hits":0,"nrfi":true,"game_pk":824936},{"date":"2026-04-10","opponent":"Cleveland Guardians","opp_id":114,"runs":0,"hits":0,"nrfi":true,"game_pk":824941}>,"home_nrfi_label":"2025-26 \u00b7 33 GS","home_arsenal_season":2026,"market_nrfi_pct":54.5,"model_nrfi_pct":50.1,"nrfi_pct":50.1,"model_tier":"Borderline","model_eligible":true,"confidence_score":70,"edge":-4.4},{"game":"Minnesota Twins at Tampa Bay Rays","away_pitcher":"Bailey Ober","home_pitcher":"Shane McClanahan","pick":"YRFI","confidence":"LOW","odds":"-118","reasoning_summary":"McClanahan's walk-heavy 2026 profile (5.5 BB/9) elevates first-inning base traffic risk; market near-even reflects genuine volatility.","contract_id":"385738408","park_factor":0.953,"away_1st_inn_xwoba":0.32,"away_1st_inn_k_pct":20.0,"away_1st_inn_hard_hit_pct":28.6,"away_1st_inn_bb_pct":10.0,"away_1st_inn_barrel_pct":10.0,"away_1st_inn_velo":85.2,"away_1st_inn_whiff_pct":20.6,"away_era_1st":2.77,"away_nrfi_record":"24-7","away_nrfi_rate":77.4,"away_1st_inn_starts":31,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":20,"away_season_era":4.15,"away_fip":3.41,"away_fip_season":2026,"away_pitch_count":6,"away_fastball_pct":36.7,"away_pitch_arsenal":[{"code":"CH","name":"Changeup","pct":34.3,"count":149,"avg_speed":83.1},{"code":"FF","name":"Four-seam FB","pct":33.2,"count":144,"avg_speed":88.8},{"code":"SL","name":"Slider","pct":15.4,"count":67,"avg_speed":82.5},{"code":"ST","name":"Sweeper","pct":10.6,"count":46,"avg_speed":76.5},{"code":"SI","name":"Sinker","pct":3.5,"count":15,"avg_speed":89.2},{"code":"CU","name":"Curveball","pct":3.0,"count":13,"avg_speed":72.9}>,"away_last_3":[{"date":"2026-04-19","opponent":"Cincinnati Reds","opp_id":113,"runs":0,"hits":1,"nrfi":true,"game_pk":823718},{"date":"2026-04-13","opponent":"Boston Red Sox","opp_id":111,"runs":0,"hits":0,"nrfi":true,"game_pk":823725},{"date":"2026-04-08","opponent":"Detroit Tigers","opp_id":116,"runs":0,"hits":0,"nrfi":true,"game_pk":823726}>,"away_nrfi_label":"2025-26 \u00b7 31 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.268,"home_1st_inn_k_pct":35.3,"home_1st_inn_hard_hit_pct":25.0,"home_1st_inn_bb_pct":17.6,"home_1st_inn_barrel_pct":0.0,"home_1st_inn_velo":90.3,"home_1st_inn_whiff_pct":30.6,"home_era_1st":2.25,"home_nrfi_record":"3-1","home_nrfi_rate":75.0,"home_1st_inn_starts":4,"home_nrfi_season":2026,"home_stats_season":2026,"home_stats_pa":17,"home_season_era":5.0,"home_fip":3.66,"home_fip_season":2026,"home_last_3":[{"date":"2026-04-19","opponent":"Pittsburgh Pirates","opp_id":134,"runs":1,"hits":2,"nrfi":false,"game_pk":823393},{"date":"2026-04-14","opponent":"Chicago White Sox","opp_id":145,"runs":0,"hits":0,"nrfi":true,"game_pk":824616},{"date":"2026-04-06","opponent":"Chicago Cubs","opp_id":112,"runs":0,"hits":0,"nrfi":true,"game_pk":823002}>,"home_nrfi_label":"2026 \u00b7 4 GS","market_nrfi_pct":54.1,"model_nrfi_pct":52.2,"nrfi_pct":52.2,"model_tier":"Borderline","model_eligible":true,"confidence_score":74,"edge":-1.9},{"game":"New York Yankees at Houston Astros","away_pitcher":"Ryan Weathers","home_pitcher":"Mike Burrows","pick":"YRFI","confidence":"LOW","odds":"-128","reasoning_summary":"Burrows carries 6.75 ERA with 5 home runs in 26.2 innings; New York on 7-game win streak with +45 run differential.","contract_id":"385739384","park_factor":1.0,"away_1st_inn_xwoba":0.466,"away_1st_inn_k_pct":24.0,"away_1st_inn_hard_hit_pct":43.8,"away_1st_inn_bb_pct":12.0,"away_1st_inn_barrel_pct":12.0,"away_1st_inn_velo":91.4,"away_1st_inn_whiff_pct":27.9,"away_era_1st":1.12,"away_nrfi_record":"10-3","away_nrfi_rate":76.9,"away_1st_inn_starts":13,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":25,"away_season_era":3.18,"away_fip":3.24,"away_fip_season":2026,"away_pitch_count":5,"away_fastball_pct":50.3,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":32.2,"count":146,"avg_speed":95.9},{"code":"CH","name":"Changeup","pct":22.0,"count":100,"avg_speed":85.1},{"code":"ST","name":"Sweeper","pct":18.5,"count":84,"avg_speed":81.4},{"code":"SI","name":"Sinker","pct":18.1,"count":82,"avg_speed":94.2},{"code":"SL","name":"Slider","pct":9.3,"count":42,"avg_speed":87.2}>,"away_last_3":[{"date":"2026-04-19","opponent":"Kansas City Royals","opp_id":118,"runs":0,"hits":1,"nrfi":true,"game_pk":823556},{"date":"2026-04-14","opponent":"Los Angeles Angels","opp_id":108,"runs":3,"hits":3,"nrfi":false,"game_pk":823562},{"date":"2026-04-09","opponent":"Athletics","opp_id":133,"runs":0,"hits":1,"nrfi":true,"game_pk":823565}>,"away_nrfi_label":"2025-26 \u00b7 13 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.231,"home_1st_inn_k_pct":22.7,"home_1st_inn_hard_hit_pct":18.8,"home_1st_inn_bb_pct":4.5,"home_1st_inn_barrel_pct":0.0,"home_1st_inn_velo":90.8,"home_1st_inn_whiff_pct":20.8,"home_era_1st":3.32,"home_nrfi_record":"17-7","home_nrfi_rate":70.8,"home_1st_inn_starts":24,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":22,"home_season_era":6.75,"home_fip":4.79,"home_fip_season":2026,"home_pitch_count":5,"home_fastball_pct":42.4,"home_pitch_arsenal":[{"code":"CH","name":"Changeup","pct":26.4,"count":119,"avg_speed":87.1},{"code":"FF","name":"Four-seam FB","pct":24.0,"count":108,"avg_speed":95.0},{"code":"SL","name":"Slider","pct":19.6,"count":88,"avg_speed":89.9},{"code":"SI","name":"Sinker","pct":18.4,"count":83,"avg_speed":94.6},{"code":"CU","name":"Curveball","pct":11.6,"count":52,"avg_speed":80.5}>,"home_last_3":[{"date":"2026-04-19","opponent":"St. Louis Cardinals","opp_id":138,"runs":0,"hits":0,"nrfi":true,"game_pk":824205},{"date":"2026-04-13","opponent":"Seattle Mariners","opp_id":136,"runs":3,"hits":3,"nrfi":false,"game_pk":823153},{"date":"2026-04-07","opponent":"Colorado Rockies","opp_id":115,"runs":0,"hits":0,"nrfi":true,"game_pk":824375}>,"home_nrfi_label":"2025-26 \u00b7 24 GS","home_arsenal_season":2026,"market_nrfi_pct":56.1,"model_nrfi_pct":56.3,"nrfi_pct":56.3,"model_tier":"Lean NRFI","model_eligible":false,"confidence_score":58,"edge":0.2},{"game":"Washington Nationals at Chicago White Sox","away_pitcher":"Jake Irvin","home_pitcher":"Noah Schultz","pick":"YRFI","confidence":"LOW","odds":"-120","reasoning_summary":"Irvin's 6.00 ERA and 1.53 WHIP in 2026 struggle to suppress runs; Washington scoring 5.5 R/G team-wide.","contract_id":"385737999","park_factor":1.02,"away_1st_inn_xwoba":0.423,"away_1st_inn_k_pct":31.0,"away_1st_inn_hard_hit_pct":35.7,"away_1st_inn_bb_pct":17.2,"away_1st_inn_barrel_pct":6.9,"away_1st_inn_velo":87.5,"away_1st_inn_whiff_pct":25.0,"away_era_1st":9.82,"away_nrfi_record":"21-17","away_nrfi_rate":55.3,"away_1st_inn_starts":38,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":29,"away_season_era":6.0,"away_fip":4.93,"away_fip_season":2026,"away_pitch_count":6,"away_fastball_pct":65.2,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":30.6,"count":132,"avg_speed":93.0},{"code":"SI","name":"Sinker","pct":21.1,"count":91,"avg_speed":92.3},{"code":"CU","name":"Curveball","pct":16.9,"count":73,"avg_speed":77.4},{"code":"FC","name":"Cutter","pct":13.5,"count":58,"avg_speed":88.5},{"code":"ST","name":"Sweeper","pct":11.6,"count":50,"avg_speed":81.7},{"code":"CH","name":"Changeup","pct":6.3,"count":27,"avg_speed":85.0}>,"away_last_3":[{"date":"2026-04-20","opponent":"Atlanta Braves","opp_id":144,"runs":0,"hits":0,"nrfi":true,"game_pk":822749},{"date":"2026-04-15","opponent":"Pittsburgh Pirates","opp_id":134,"runs":2,"hits":3,"nrfi":false,"game_pk":823399},{"date":"2026-04-10","opponent":"Milwaukee Brewers","opp_id":158,"runs":3,"hits":1,"nrfi":false,"game_pk":823808}>,"away_nrfi_label":"2025-26 \u00b7 38 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.39,"home_1st_inn_k_pct":9.1,"home_1st_inn_hard_hit_pct":14.3,"home_1st_inn_bb_pct":27.3,"home_1st_inn_barrel_pct":0.0,"home_1st_inn_velo":92.9,"home_1st_inn_whiff_pct":23.5,"home_stats_season":2026,"home_stats_pa":11,"home_season_era":3.86,"home_fip":3.96,"home_fip_season":2026,"home_last_3":[{"date":"2026-04-19","opponent":"Athletics","opp_id":133,"runs":0,"hits":0,"nrfi":true,"game_pk":825018},{"date":"2026-04-14","opponent":"Tampa Bay Rays","opp_id":139,"runs":3,"hits":1,"nrfi":false,"game_pk":824616}>,"home_era_1st":3.86,"home_nrfi_record":"1-1","market_nrfi_pct":54.5,"model_eligible":false,"model_tier":"Limited Data"},{"game":"Los Angeles Angels at Kansas City Royals","away_pitcher":"Walbert Urena","home_pitcher":"Cole Ragans","pick":"YRFI","confidence":"LOW","odds":"-118","reasoning_summary":"Ragans' extreme walk rate (7.7 BB/9) with 6.00 ERA creates first-inning chaos; recent outing 7 ER in 4.1 IP vs New York.","contract_id":"385738443","park_factor":1.101,"away_1st_inn_xwoba":0.121,"away_1st_inn_k_pct":33.3,"away_1st_inn_hard_hit_pct":50.0,"away_1st_inn_bb_pct":0.0,"away_1st_inn_barrel_pct":0.0,"away_1st_inn_velo":97.5,"away_1st_inn_whiff_pct":16.7,"away_stats_season":2026,"away_stats_pa":3,"away_season_era":2.35,"away_fip":2.45,"away_fip_season":2026,"away_last_3":[{"date":"2026-04-19","opponent":"San Diego Padres","opp_id":135,"runs":0,"hits":0,"nrfi":true,"game_pk":824047}>,"home_1st_inn_xwoba":0.438,"home_1st_inn_k_pct":14.8,"home_1st_inn_hard_hit_pct":50.0,"home_1st_inn_bb_pct":25.9,"home_1st_inn_barrel_pct":11.1,"home_1st_inn_velo":90.1,"home_1st_inn_whiff_pct":18.9,"home_era_1st":2.08,"home_nrfi_record":"12-6","home_nrfi_rate":66.7,"home_1st_inn_starts":18,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":27,"home_season_era":6.0,"home_fip":7.29,"home_fip_season":2026,"home_pitch_count":5,"home_fastball_pct":58.4,"home_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":53.5,"count":207,"avg_speed":94.2},{"code":"SL","name":"Slider","pct":17.6,"count":68,"avg_speed":84.8},{"code":"CH","name":"Changeup","pct":15.8,"count":61,"avg_speed":83.9},{"code":"KC","name":"Knuckle Curve","pct":8.0,"count":31,"avg_speed":78.6},{"code":"FC","name":"Cutter","pct":4.9,"count":19,"avg_speed":89.6}>,"home_last_3":[{"date":"2026-04-19","opponent":"New York Yankees","opp_id":147,"runs":3,"hits":1,"nrfi":false,"game_pk":823556},{"date":"2026-04-14","opponent":"Detroit Tigers","opp_id":116,"runs":0,"hits":1,"nrfi":true,"game_pk":824292},{"date":"2026-04-08","opponent":"Cleveland Guardians","opp_id":114,"runs":3,"hits":3,"nrfi":false,"game_pk":824455}>,"home_nrfi_label":"2025-26 \u00b7 18 GS","home_arsenal_season":2026,"away_era_1st":6.0,"away_nrfi_record":"2-3","market_nrfi_pct":54.1,"model_eligible":false,"model_tier":"Limited Data"},{"game":"Detroit Tigers at Cincinnati Reds","away_pitcher":"Jack Flaherty","home_pitcher":"Brady Singer","pick":"YRFI","confidence":"LOW","odds":"-132","reasoning_summary":"Singer's 5.32 ERA in 2026 with recent 5-ER blowup; GABP ballpark factor of 1.08 elevates scoring; Detroit averaging 4.5 R/G.","contract_id":"385739067","park_factor":1.093,"away_1st_inn_xwoba":0.249,"away_1st_inn_k_pct":30.0,"away_1st_inn_hard_hit_pct":70.0,"away_1st_inn_bb_pct":15.0,"away_1st_inn_barrel_pct":0.0,"away_1st_inn_velo":88.7,"away_1st_inn_whiff_pct":25.8,"away_era_1st":3.48,"away_nrfi_record":"30-6","away_nrfi_rate":83.3,"away_1st_inn_starts":36,"away_nrfi_season":2025,"away_stats_season":2026,"away_stats_pa":20,"away_season_era":3.47,"away_fip":4.56,"away_fip_season":2026,"away_pitch_count":5,"away_fastball_pct":51.2,"away_pitch_arsenal":[{"code":"FF","name":"Four-seam FB","pct":43.8,"count":190,"avg_speed":92.6},{"code":"SL","name":"Slider","pct":24.9,"count":108,"avg_speed":84.7},{"code":"KC","name":"Knuckle Curve","pct":20.3,"count":88,"avg_speed":78.0},{"code":"SI","name":"Sinker","pct":7.4,"count":32,"avg_speed":90.5},{"code":"CH","name":"Changeup","pct":3.7,"count":16,"avg_speed":84.8}>,"away_last_3":[{"date":"2026-04-20","opponent":"Boston Red Sox","opp_id":111,"runs":0,"hits":1,"nrfi":true,"game_pk":824776},{"date":"2026-04-15","opponent":"Kansas City Royals","opp_id":118,"runs":0,"hits":0,"nrfi":true,"game_pk":824291},{"date":"2026-04-09","opponent":"Minnesota Twins","opp_id":142,"runs":0,"hits":1,"nrfi":true,"game_pk":823724}>,"away_nrfi_label":"2025-26 \u00b7 36 GS","away_arsenal_season":2026,"home_1st_inn_xwoba":0.362,"home_1st_inn_k_pct":12.5,"home_1st_inn_hard_hit_pct":41.2,"home_1st_inn_bb_pct":12.5,"home_1st_inn_barrel_pct":4.2,"home_1st_inn_velo":87.6,"home_1st_inn_whiff_pct":17.5,"home_era_1st":6.0,"home_nrfi_record":"23-15","home_nrfi_rate":60.5,"home_1st_inn_starts":38,"home_nrfi_season":2025,"home_stats_season":2026,"home_stats_pa":24,"home_season_era":5.32,"home_fip":4.54,"home_fip_season":2026,"home_pitch_count":5,"home_fastball_pct":59.0,"home_pitch_arsenal":[{"code":"SI","name":"Sinker","pct":50.8,"count":210,"avg_speed":90.9},{"code":"SL","name":"Slider","pct":29.3,"count":121,"avg_speed":82.1},{"code":"ST","name":"Sweeper","pct":11.6,"count":48,"avg_speed":80.4},{"code":"FF","name":"Four-seam FB","pct":4.1,"count":17,"avg_speed":90.3},{"code":"FC","name":"Cutter","pct":4.1,"count":17,"avg_speed":86.9}>,"home_last_3":[{"date":"2026-04-19","opponent":"Minnesota Twins","opp_id":142,"runs":1,"hits":1,"nrfi":false,"game_pk":823718},{"date":"2026-04-14","opponent":"San Francisco Giants","opp_id":137,"runs":0,"hits":1,"nrfi":true,"game_pk":824531},{"date":"2026-04-08","opponent":"Miami Marlins","opp_id":146,"runs":2,"hits":4,"nrfi":false,"game_pk":823885}>,"home_nrfi_label":"2025-26 \u00b7 38 GS","home_arsenal_season":2026,"market_nrfi_pct":56.9,"model_nrfi_pct":54.7,"nrfi_pct":54.7,"model_tier":"Lean NRFI","model_eligible":true,"confidence_score":79,"edge":-2.2}>,"nrfi_rate_prior_season":49.8,"nrfi_rate_current_season":57.4,"league_avg_k_pct":23.5,"league_avg_barrel_pct":6.0,"league_avg_xwoba":0.325,"league_avg_first_era":4.64,"league_avg_fip":4.19,"league_avg_era":4.21}