Every counting stat below has a KPI on both sides of the matchup, measured on the same denominator: a plate appearance. That is what lets the hitter's reading and the starter's reading be combined instead of listed side by side. The combination is the standard Log5 odds ratio, which is exactly additive in log odds, so the hitter's push and the pitcher's push separate cleanly and the remainder is reported rather than absorbed.
Hits use a derived KPI. Hit rate is not in config/kpi_registry.json: registering it would move the registry hash recorded in the model manifest and fail the live layer closed until a retrain. It is computed with the same strict as-of cutoff and the same shrinkage, stored in its own namespace, and never read by the runtime.
These per-player numbers are measured, not published. The live KPI layer moves team runs and the win probability. The hitter lines in the artifact were then scaled by one club-wide ratio, identical for the leadoff hitter and the ninth bat. The per-hitter columns here are what that single ratio discards.
The whole staff, not only the starter. A hitter takes roughly four in ten of his plate appearances against relievers. Each club's bullpen here is the pregame bullpen: the seven busiest healthy relievers of the last 30 days, the same arms the KPI forecast weighted and the simulation pitched, each sharing the relief work by the batters faced the forecast gave him. The bullpen's workload tonight is the club's real mean staff batters faced minus the starter's projection. The published staff alone holds only the relievers one simulation draw used, so it is shown beside the bullpen for comparison, not used.
Reading a delta. Own skill is measured against the league. The opponent effect is measured against the hitter's own rate, which is the only one that may adjust a published line, because the published line already carries his own skill. Adding both to a published line would count the hitter twice.
Coverage. 18 hitter-versus-starter pairings; 16 have both sides above their sample floor on hits and 18 carry a non-zero hit adjustment. A side below its floor falls back to the league rate and is marked n<floor, which is a stated absence of evidence rather than a measured zero. All four outcome metrics have value documents. Handedness source: model bundle pitcher_hands.json.
| Hitter | Club | Metric | Starter faced (+ bullpen) | Published | KPI adjusted, whole staff | Δ | Hitter band | Pitcher band | Game |
|---|---|---|---|---|---|---|---|---|---|
| Kyle Teel | CHW | Strikeouts | Gavin Williams | 1.813 | 2.316 | +0.503 | averagen<floor | Very good | 20261010_CHW@CLE |
| Munetaka Murakami | CHW | Strikeouts | Gavin Williams | 1.885 | 2.300 | +0.415 | Poor | Very good | 20261010_CHW@CLE |
| Colson Montgomery | CHW | Strikeouts | Gavin Williams | 1.709 | 2.083 | +0.375 | Poor | Very good | 20261010_CHW@CLE |
| Brenton Doyle | CHW | Strikeouts | Gavin Williams | 1.466 | 1.815 | +0.350 | Poor | Very good | 20261010_CHW@CLE |
| Chase Meidroth | CHW | Strikeouts | Gavin Williams | 1.106 | 1.415 | +0.309 | Average | Very good | 20261010_CHW@CLE |
| Miguel Vargas | CHW | Strikeouts | Gavin Williams | 0.965 | 1.252 | +0.286 | Good | Very good | 20261010_CHW@CLE |
| Tristan Peters | CHW | Strikeouts | Gavin Williams | 0.962 | 1.248 | +0.285 | Good | Very good | 20261010_CHW@CLE |
| Andrew Benintendi | CHW | Strikeouts | Gavin Williams | 1.034 | 1.314 | +0.280 | Average | Very good | 20261010_CHW@CLE |
| Sam Antonacci | CHW | Strikeouts | Gavin Williams | 0.834 | 1.095 | +0.261 | Good | Very good | 20261010_CHW@CLE |
| Jo Adell | CLE | Strikeouts | Sean Burke | 1.209 | 1.340 | +0.131 | Average | Good | 20261010_CHW@CLE |
| Patrick Bailey | CLE | Strikeouts | Sean Burke | 1.143 | 1.261 | +0.118 | Below average | Good | 20261010_CHW@CLE |
| Nathaniel Lowe | CLE | Strikeouts | Sean Burke | 0.999 | 1.108 | +0.109 | Average | Good | 20261010_CHW@CLE |
| Travis Bazzana | CLE | Strikeouts | Sean Burke | 0.909 | 1.012 | +0.103 | Average | Good | 20261010_CHW@CLE |
| Petey Halpin | CLE | Strikeouts | Sean Burke | 0.829 | 0.921 | +0.092 | averagen<floor | Good | 20261010_CHW@CLE |
| Chase DeLauter | CLE | Strikeouts | Sean Burke | 0.733 | 0.822 | +0.089 | Good | Good | 20261010_CHW@CLE |
| José Ramírez | CLE | Strikeouts | Sean Burke | 0.700 | 0.787 | +0.087 | Very good | Good | 20261010_CHW@CLE |
| Brayan Rocchio | CLE | Strikeouts | Sean Burke | 0.612 | 0.686 | +0.075 | Good | Good | 20261010_CHW@CLE |
| Steven Kwan | CLE | Strikeouts | Sean Burke | 0.504 | 0.570 | +0.066 | Very good | Good | 20261010_CHW@CLE |
| Sam Antonacci | CHW | Hits | Gavin Williams | 0.854 | 0.799 | -0.055 | Good | Good | 20261010_CHW@CLE |
| Miguel Vargas | CHW | Hits | Gavin Williams | 0.837 | 0.782 | -0.055 | Average | Good | 20261010_CHW@CLE |
The pipeline applied no club-wide rescale to CHW hitter lines. The columns below are the measured alternative: each hitter moved by his own KPI pairing with the whole opposing staff, the starter and the full relief corps combined at the share of his plate appearances each takes. Click a name for the starter-only and bullpen decomposition and the contextual readings.
| Player | Pos | Faces | PA | Hits | Strikeouts | Walks | Home runs | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | ||||
| Sam Antonacci | LF | Gavin Williams + bullpen | 4.16 | 0.854 → 0.799 | -0.055 | 0.834 → 1.095 | +0.261 | 0.357 → 0.372 | +0.015 | 0.067 → 0.069 | +0.002 |
| Kyle Teel | C | Gavin Williams + bullpen | 4.10 | 0.742 → 0.693 | -0.049 | 1.813 → 2.316 | +0.503 | 0.440 → 0.458 | +0.018 | 0.104 → 0.107 | +0.003 |
| Miguel Vargas | 3B | Gavin Williams + bullpen | 4.17 | 0.837 → 0.782 | -0.055 | 0.965 → 1.252 | +0.286 | 0.555 → 0.577 | +0.021 | 0.157 → 0.161 | +0.004 |
| Munetaka Murakami | 1B | Gavin Williams + bullpen | 4.40 | 0.747 → 0.696 | -0.051 | 1.885 → 2.300 | +0.415 | 0.662 → 0.687 | +0.025 | 0.214 → 0.219 | +0.005 |
| Andrew Benintendi | DH | Gavin Williams + bullpen | 3.43 | 0.722 → 0.674 | -0.048 | 1.034 → 1.314 | +0.280 | 0.318 → 0.331 | +0.013 | 0.090 → 0.092 | +0.002 |
| Tristan Peters | RF | Gavin Williams + bullpen | 3.76 | 0.787 → 0.736 | -0.051 | 0.962 → 1.248 | +0.285 | 0.309 → 0.322 | +0.013 | 0.085 → 0.087 | +0.002 |
| Chase Meidroth | 2B | Gavin Williams + bullpen | 3.86 | 0.848 → 0.793 | -0.055 | 1.106 → 1.415 | +0.309 | 0.355 → 0.370 | +0.014 | 0.089 → 0.091 | +0.002 |
| Colson Montgomery | SS | Gavin Williams + bullpen | 3.55 | 0.614 → 0.572 | -0.042 | 1.709 → 2.083 | +0.375 | 0.324 → 0.337 | +0.013 | 0.132 → 0.135 | +0.003 |
| Brenton Doyle | CF | Gavin Williams + bullpen | 3.52 | 0.741 → 0.692 | -0.049 | 1.466 → 1.815 | +0.350 | 0.233 → 0.243 | +0.010 | 0.092 → 0.095 | +0.002 |
| Player | Pos | Faces | BF | Hits | Strikeouts | Walks | Home runs | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | ||||
| Sean Burke | Starter | CLE | 19.75 | 4.216 → 4.266 | +0.050 | 5.087 → 4.321 | -0.767 | 1.868 → 1.969 | +0.101 | 0.706 → 0.644 | -0.062 |
Exposure. Starter 19.8 batters faced, bullpen 15.7 (44.3% of the game), from the club's real 35.5 staff batters faced per game over 2 complete games in the last 30 days. The published staff alone would have given the bullpen 47.5% across 3 arms, because it holds only the relievers the selected simulation draw used.
| Reliever | Role | In the corps because | Relief BF, 30d | Apps | Share | BF tonight |
|---|---|---|---|---|---|---|
| Sean Newcomb | Long Reliever | pregame bullpen, published staff | 38 | 7 | 21.0% | 3.31 |
| David Sandlin | Reliever | pregame bullpen | 5 | 1 | 18.5% | 2.91 |
| Grant Taylor | Reliever | pregame bullpen | 0 | 0 | 17.1% | 2.70 |
| Anthony Kay | Reliever | pregame bullpen | 9 | 2 | 13.5% | 2.13 |
| Jordan Hicks | Middle Reliever | pregame bullpen, published staff | 0 | 0 | 11.3% | 1.78 |
| Noah Schultz | Long Reliever | pregame bullpen, published staff | 0 | 0 | 9.8% | 1.54 |
| Bryan Hudson | Reliever | pregame bullpen | 16 | 5 | 8.7% | 1.36 |
| Player | Pos | Faces | BF | Hits | Strikeouts | Walks | Home runs | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | ||||
| Sean Newcomb | Long Reliever | CLE (21% of relief) | 3.31 | 1.030 → 1.042 | +0.012 | 1.246 → 1.052 | -0.193 | 0.435 → 0.459 | +0.024 | 0.097 → 0.088 | -0.009 |
| David Sandlin | Reliever | CLE (18% of relief) | 2.91 | 0.630 → 0.637 | +0.007 | 0.680 → 0.575 | -0.105 | 0.242 → 0.255 | +0.013 | 0.098 → 0.089 | -0.009 |
| Grant Taylor | Reliever | CLE (17% of relief) | 2.70 | 0.532 → 0.539 | +0.006 | 0.801 → 0.686 | -0.115 | 0.242 → 0.255 | +0.013 | 0.071 → 0.065 | -0.006 |
| Anthony Kay | Reliever | CLE (14% of relief) | 2.13 | 0.478 → 0.483 | +0.005 | 0.391 → 0.328 | -0.064 | 0.174 → 0.184 | +0.009 | 0.065 → 0.059 | -0.006 |
| Jordan Hicks | Middle Reliever | CLE (11% of relief) | 1.78 | 0.912 → 0.923 | +0.011 | 1.223 → 1.044 | -0.179 | 0.602 → 0.633 | +0.031 | 0.098 → 0.089 | -0.009 |
| Noah Schultz | Long Reliever | CLE (10% of relief) | 1.54 | 1.538 → 1.556 | +0.018 | 1.623 → 1.367 | -0.257 | 0.350 → 0.369 | +0.019 | 0.134 → 0.122 | -0.012 |
| Bryan Hudson | Reliever | CLE (9% of relief) | 1.36 | 0.312 → 0.315 | +0.004 | 0.289 → 0.243 | -0.045 | 0.099 → 0.105 | +0.005 | 0.035 → 0.032 | -0.003 |
The pipeline applied no club-wide rescale to CLE hitter lines. The columns below are the measured alternative: each hitter moved by his own KPI pairing with the whole opposing staff, the starter and the full relief corps combined at the share of his plate appearances each takes. Click a name for the starter-only and bullpen decomposition and the contextual readings.
| Player | Pos | Faces | PA | Hits | Strikeouts | Walks | Home runs | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | ||||
| Steven Kwan | LF | Sean Burke + bullpen | 4.49 | 0.934 → 0.898 | -0.036 | 0.504 → 0.570 | +0.066 | 0.586 → 0.593 | +0.006 | 0.047 → 0.044 | -0.004 |
| José Ramírez | 3B | Sean Burke + bullpen | 4.53 | 0.882 → 0.848 | -0.035 | 0.700 → 0.787 | +0.087 | 0.515 → 0.521 | +0.006 | 0.103 → 0.096 | -0.007 |
| Chase DeLauter | RF | Sean Burke + bullpen | 4.28 | 0.937 → 0.901 | -0.035 | 0.733 → 0.822 | +0.089 | 0.462 → 0.467 | +0.005 | 0.111 → 0.103 | -0.008 |
| Jo Adell | DH | Sean Burke + bullpen | 4.09 | 0.876 → 0.842 | -0.034 | 1.209 → 1.340 | +0.131 | 0.253 → 0.256 | +0.003 | 0.125 → 0.116 | -0.009 |
| Nathaniel Lowe | 1B | Sean Burke + bullpen | 3.84 | 0.791 → 0.761 | -0.031 | 0.999 → 1.108 | +0.109 | 0.377 → 0.381 | +0.004 | 0.120 → 0.111 | -0.009 |
| Travis Bazzana | 2B | Sean Burke + bullpen | 3.90 | 0.769 → 0.739 | -0.030 | 0.909 → 1.012 | +0.103 | 0.432 → 0.437 | +0.005 | 0.102 → 0.094 | -0.007 |
| Patrick Bailey | C | Sean Burke + bullpen | 3.75 | 0.756 → 0.727 | -0.030 | 1.143 → 1.261 | +0.118 | 0.324 → 0.328 | +0.004 | 0.108 → 0.101 | -0.008 |
| Petey Halpin | CF | Sean Burke + bullpen | 3.48 | 0.729 → 0.700 | -0.028 | 0.829 → 0.921 | +0.092 | 0.222 → 0.225 | +0.003 | 0.087 → 0.081 | -0.006 |
| Brayan Rocchio | SS | Sean Burke + bullpen | 3.46 | 0.741 → 0.713 | -0.029 | 0.612 → 0.686 | +0.075 | 0.265 → 0.268 | +0.003 | 0.079 → 0.073 | -0.006 |
| Player | Pos | Faces | BF | Hits | Strikeouts | Walks | Home runs | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | ||||
| Gavin Williams | Starter | CHW | 20.51 | 3.730 → 3.704 | -0.025 | 7.658 → 8.272 | +0.614 | 2.239 → 2.462 | +0.223 | 0.403 → 0.451 | +0.048 |
Exposure. Starter 20.5 batters faced, bullpen 16.8 (45.1% of the game), from the club's real 37.4 staff batters faced per game over 19 complete games in the last 30 days. The published staff alone would have given the bullpen 49.3% across 5 arms, because it holds only the relievers the selected simulation draw used.
| Reliever | Role | In the corps because | Relief BF, 30d | Apps | Share | BF tonight |
|---|---|---|---|---|---|---|
| Joey Cantillo | Reliever | pregame bullpen | 60 | 4 | 22.0% | 3.70 |
| Tanner Bibee | Setup Man | pregame bullpen, published staff | 3 | 1 | 15.6% | 2.62 |
| Erik Sabrowski | Reliever | pregame bullpen | 39 | 10 | 15.0% | 2.52 |
| Daniel Espino | Middle Reliever (High Leverage) | pregame bullpen, published staff | 8 | 3 | 14.7% | 2.47 |
| Shawn Armstrong | Middle Reliever | pregame bullpen, published staff | 19 | 6 | 11.3% | 1.90 |
| Tim Herrin | Middle Reliever | pregame bullpen, published staff | 38 | 10 | 11.2% | 1.88 |
| Hunter Gaddis | Middle Reliever (High Leverage) | pregame bullpen, published staff | 52 | 13 | 10.4% | 1.75 |
| Player | Pos | Faces | BF | Hits | Strikeouts | Walks | Home runs | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | published → KPI | Δ | ||||
| Joey Cantillo | Reliever | CHW (22% of relief) | 3.70 | 0.783 → 0.778 | -0.005 | 0.910 → 0.991 | +0.081 | 0.416 → 0.456 | +0.040 | 0.100 → 0.112 | +0.012 |
| Tanner Bibee | Setup Man | CHW (16% of relief) | 2.62 | 0.951 → 0.945 | -0.006 | 1.055 → 1.157 | +0.102 | 0.596 → 0.656 | +0.060 | 0.142 → 0.159 | +0.017 |
| Erik Sabrowski | Reliever | CHW (15% of relief) | 2.52 | 0.459 → 0.455 | -0.003 | 0.843 → 0.909 | +0.066 | 0.323 → 0.353 | +0.030 | 0.065 → 0.073 | +0.008 |
| Daniel Espino | Middle Reliever (High Leverage) | CHW (15% of relief) | 2.47 | 0.978 → 0.972 | -0.006 | 1.665 → 1.819 | +0.154 | 0.394 → 0.433 | +0.039 | 0.182 → 0.204 | +0.022 |
| Shawn Armstrong | Middle Reliever | CHW (11% of relief) | 1.90 | 0.570 → 0.566 | -0.004 | 0.996 → 1.089 | +0.093 | 0.338 → 0.371 | +0.033 | 0.059 → 0.066 | +0.007 |
| Tim Herrin | Middle Reliever | CHW (11% of relief) | 1.88 | 0.587 → 0.583 | -0.004 | 0.783 → 0.855 | +0.072 | 0.303 → 0.333 | +0.029 | 0.046 → 0.051 | +0.005 |
| Hunter Gaddis | Middle Reliever (High Leverage) | CHW (10% of relief) | 1.75 | 0.997 → 0.990 | -0.007 | 0.893 → 0.976 | +0.083 | 0.263 → 0.289 | +0.026 | 0.136 → 0.152 | +0.016 |