Kai-Wei Teng
RHP
HOU
8
HRs Allowed
10.4%
HR Rate (Pool)
16.9%
Overall HR/FB
4.21
FIP
3.9
xFIP
+0.32
FIP-xFIP Gap
HR Vulnerability Snapshot
?Pitcher's HR-relevant profile. Red = HR-favorable for batters, blue = HR-resistant. Same vocabulary as batter cards.
Pool + today context
0.89
Pool HR/G ?Home runs allowed per tracked LongDong game day. Used when season HR/9 is unavailable.
16.9%
Overall HR/FB ?Pitcher's overall season HR-per-fly-ball rate. Matchup rows may show handedness splits such as vs LHH or vs RHH.
82th pctile
0.0%
Barrel% Allowed ?Percentage of contact against this pitcher classified as barrels (perfect EV+LA). >12% elite-bad, <5% elite-good.
80.9%
Hard-Hit% Allowed ?% of batted balls hit ≥95 mph against this pitcher. >45% elite homer-prone, <33% elite homer-resistant.
·
FB% ?Fly-ball rate (% of batted balls that are fly balls). >45% extreme fly-ball pitcher — gives up many HRs. <30% ground-ball pitcher — HR-resistant.
4.21
FIP ?Fielding Independent Pitching. >5.0 elite-bad, 4.0–5.0 above avg, <3.5 elite-good. Isolates pitcher's HR/K/BB skill from defense.
57th pctile
3.9
xFIP ?FIP with HR/FB normalised to league average. Better predictor of FUTURE HR rate than FIP.
+0.32
FIP − xFIP ?Positive gap = pitcher has been UNLUCKY with HRs (regression coming). Negative = lucky (regression up). >+0.5 elite regression candidate.
66th pctile
10.4%
Pool HR Rate ?% of LongDong scored matchups against this pitcher that resulted in a HR. Internal benchmark.
77
Pool Matchups
8
HRs Allowed (Pool)
8
Top-15 Matchups
0
HRs to Top-15
10.4%
HR Rate
Platoon Story
5
Platoon Edge Bats
3
Same-Side Bats
0
Switch Hitters
5L / 3R
Listed Hands
5 of 8 listed batters have the platoon edge against a RHP.
Kerry Carpenter
Riley Greene
Colt Keith
Kevin Mcgonigle
Zach Mckinstry
Today Context
0.96
Park Factor
4.5
Wind MPH · NE
14.0%
Bullpen HR Flag
proxy_pa_leaders
Lineup Source
Comerica Park
Roof open
59°F
Weather -1.0
BP FIP 4.75
Today's Threat Breakdown · 8 batters
HOU @ DET · 1:10p
| # | Batter | Platoon | Tier | Score | Batter HR/FB ?Batter HR/FB for this matchup. A vs LHP/vs RHP chip means a handedness split is shown; otherwise the value is overall. | Pitcher HR/FB ?Pitcher HR/FB allowed for this matchup. A vs LHH/vs RHH chip means a handedness split is shown; the profile card shows overall HR/FB. | ISO | Context | BvP |
|---|---|---|---|---|---|---|---|---|---|
| 8 |
RvR
Same
|
🟡 B | 71 | 32.0%vs RHP | 12.5%vs RHH | 0.301 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
PA 1
HR 0
EV 99.0
|
|
| 39 |
LvR
Edge
|
🟠 C | 59 | 24.4%vs RHP | 29.2%vs LHH | 0.223 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
PA 1
HR 0
|
|
| 69 |
RvR
Same
|
🟠 C | 52 | 22.4%vs RHP | 12.5%vs RHH | 0.190 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
PA 1
HR 1
EV 103.0
|
|
| 97 |
LvR
Edge
|
⚪ D | 46 | 13.5%vs RHP | 29.2%vs LHH | 0.152 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
PA 1
HR 0
EV 82.0
|
|
| 129 |
RvR
Same
|
⚪ D | 40 | 9.7%vs RHP | 12.5%vs RHH | 0.141 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
first look | |
| 131 |
LvR
Edge
Splits
|
⚪ D | 40 | 9.1%vs RHP | 29.2%vs LHH | 0.112 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
PA 1
HR 1
EV 108.8
|
|
| 148 |
LvR
Edge
|
⚪ D | 37 | 6.5%vs RHP | 29.2%vs LHH | 0.137 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
first look | |
| 207 |
LvR
Edge
|
⚪ D | 25 | 5.7%vs RHP | 29.2%vs LHH | 0.082 |
Park 0.96
Wind 4.5 NE
Roof open
BP 14.0%
|
first look |
Comerica Park
Recent HR Splits
| Window | Matchups | Game Days | HR | HR Rate | HR/Game | Avg Max EV | Avg HR EV | Avg HR LA | Avg HR Dist | Trend |
|---|---|---|---|---|---|---|---|---|---|---|
| Last 7 | 17 | 2 | 3 | 17.6% | 1.5 | 97.5mph | 101.7mph | 29.7° | 367ft | Up +7.2pp |
| Last 15 | 24 | 3 | 3 | 12.5% | 1.0 | 99.1mph | 101.7mph | 29.7° | 367ft | Up +2.1pp |
| Last 30 | 50 | 6 | 6 | 12.0% | 1.0 | 99.1mph | 100.0mph | 29.0° | 371ft | Flat +1.6pp |
Batted-Ball Damage
99.1
Avg Max EV
113.4
Max EV Allowed
55
Hard-Hit Proxy · 80.9%
0
Barrel Flags · 0.0%
101.0
Avg HR EV
28.1°
Avg HR Launch
370
Avg HR Distance
| Date | Batter | Max EV | HR EV | HR LA | HR Dist | HR? |
|---|---|---|---|---|---|---|
| 2026-06-21 | Brayan Rocchio | 103.9mph | · | · | · | · |
| 2026-06-21 | Kyle Manzardo | 102.1mph | · | · | · | · |
| 2026-06-15 | Colt Keith | 108.8mph | 99.6mph | 29° | 347ft | Yes |
| 2026-06-15 | James Outman | 103.4mph | · | · | · | · |
| 2026-06-15 | Spencer Torkelson | 103.0mph | 103.0mph | 27° | 372ft | Yes |
| 2026-06-15 | Kevin McGonigle | 102.5mph | 102.5mph | 33° | 383ft | Yes |
| 2026-06-09 | Mike Trout | 113.4mph | · | · | · | · |
| 2026-06-09 | Sebastián Rivero | 104.5mph | · | · | · | · |
HRs Allowed Per Game Day
HRs Allowed
| Date | Batter | Rank | Score | Stadium | EV | Angle | Dist |
|---|---|---|---|---|---|---|---|
| 2026-06-15 | Spencer Torkelson | #51 | 54 | Minute Maid Park | 103.0mph | 27.0° | 372ft |
| 2026-06-15 | Colt Keith | #115 | 37 | Minute Maid Park | 99.6mph | 29.0° | 347ft |
| 2026-06-15 | Kevin McGonigle | #119 | 36 | Minute Maid Park | 102.5mph | 33.0° | 383ft |
| 2026-06-04 | Ryan O'Hearn | #54 | 51 | Minute Maid Park | 94.0mph | 31.0° | 349ft |
| 2026-05-29 | Jackson Chourio | #108 | 47 | Minute Maid Park | 107.1mph | 24.0° | 431ft |
| 2026-05-29 | David Hamilton | #242 | 17 | Minute Maid Park | 94.0mph | 30.0° | 343ft |
| 2026-05-10 | Spencer Steer | #18 | 52 | Great American Ball Park | 103.9mph | 25.0° | 355.0ft |
| 2026-04-28 | Pete Alonso | #32 | 64 | Camden Yards | 104.0mph | 26.0° | 380.0ft |
Pitch Arsenal
| Pitch | Pitches | Usage | RV/100 | Avg EV | Avg LA | HRs |
|---|---|---|---|---|---|---|
| Sweeper | 343 | 33.9% | -1.0 | 80.7 | 15.7° | 3 |
| Fastball | 274 | 27.1% | +2.2 | 85.1 | 29.9° | 4 |
| Sinker | 166 | 16.4% | -0.4 | 84.5 | 17.5° | 1 |
| Changeup | 106 | 10.5% | +3.1 | 83.3 | 1.9° | 1 |
| Curveball | 102 | 10.1% | -0.9 | 83.0 | -2.8° | 0 |
| Slider | 21 | 2.1% | +0.6 | 85.2 | 26.5° | 0 |
Quality of Contact
Barrel%
0.0%
HardHit%
80.9%
All Scored Matchups
| Date | Batter | Rank | Score | Tier | Form | HR? |
|---|---|---|---|---|---|---|
| 2026-06-21 | Steven Kwan | #228 | 20 | ⚪ D | 📉 COOL | · |
| 2026-06-21 | Petey Halpin | #212 | 26 | ⚪ D | ❄ COLD | · |
| 2026-06-21 | Patrick Bailey | #192 | 32 | ⚪ D | 📉 COOL | · |
| 2026-06-21 | Brayan Rocchio | #185 | 34 | ⚪ D | 📉 COOL | · |
| 2026-06-21 | Gabriel Arias | #114 | 45 | ⚪ D | ❄ COLD | · |
| 2026-06-21 | Daniel Schneemann | #113 | 45 | ⚪ D | 📈 WARM | · |
| 2026-06-21 | Kyle Manzardo | #79 | 53 | 🟠 C | ➖ NTRL | · |
| 2026-06-21 | Travis Bazzana | #78 | 53 | 🟠 C | 📈 WARM | · |
| 2026-06-15 | Zach McKinstry | #126 | 34 | ⚪ D | 📈 WARM | · |
| 2026-06-15 | Kevin McGonigle | #119 | 36 | ⚪ D | ➖ NTRL | 💥 |
| 2026-06-15 | Colt Keith | #115 | 37 | ⚪ D | 📈 WARM | 💥 |
| 2026-06-15 | Gleyber Torres | #77 | 47 | ⚪ D | 🔥 HOT | · |
| 2026-06-15 | James Outman | #73 | 47 | ⚪ D | 🔥 HOT | · |
| 2026-06-15 | Spencer Torkelson | #51 | 54 | 🟠 C | ➖ NTRL | 💥 |
| 2026-06-15 | Riley Greene | #47 | 56 | 🟠 C | 🔥 HOT | · |
| 2026-06-15 | Kerry Carpenter | #41 | 57 | 🟠 C | 📉 COOL | · |
| 2026-06-15 | Dillon Dingler | #13 | 71 | 🟡 B | 📈 WARM | · |
| 2026-06-09 | Sebastián Rivero | #223 | 17 | ⚪ D | ❄ COLD | · |
| 2026-06-09 | Nolan Schanuel | #168 | 36 | ⚪ D | ❄ COLD | · |
| 2026-06-09 | Jo Adell | #107 | 46 | ⚪ D | 📉 COOL | · |
| 2026-06-09 | Oswald Peraza | #73 | 52 | 🟠 C | 📈 WARM | · |
| 2026-06-09 | Wade Meckler | #47 | 57 | 🟠 C | ➖ NTRL | · |
| 2026-06-09 | Zach Neto | #37 | 58 | 🟠 C | 📉 COOL | · |
| 2026-06-09 | Mike Trout | #30 | 62 | 🔵 C+ | ➖ NTRL | · |
| 2026-06-04 | Nick Gonzales | #104 | 36 | ⚪ D | 📈 WARM | · |
| 2026-06-04 | Marcell Ozuna | #85 | 41 | ⚪ D | 📈 WARM | · |
| 2026-06-04 | Bryan Reynolds | #55 | 51 | 🟠 C | 📈 WARM | · |
| 2026-06-04 | Ryan O'Hearn | #54 | 51 | 🟠 C | 📈 WARM | 💥 |
| 2026-06-04 | Henry Davis | #40 | 55 | 🟠 C | 📈 WARM | · |
| 2026-06-04 | Spencer Horwitz | #30 | 58 | 🟠 C | 📈 WARM | · |
| 2026-06-04 | Oneil Cruz | #5 | 69 | 🔵 C+ | ➖ NTRL | · |
| 2026-06-04 | Brandon Lowe | #4 | 69 | 🔵 C+ | ➖ NTRL | · |
| 2026-05-29 | David Hamilton | #242 | 17 | ⚪ D | ❄ COLD | 💥 |
| 2026-05-29 | Luis Rengifo | #235 | 21 | ⚪ D | ❄ COLD | · |
| 2026-05-29 | Sal Frelick | #197 | 32 | ⚪ D | 📈 WARM | · |
| 2026-05-29 | Brice Turang | #134 | 43 | ⚪ D | ❄ COLD | · |
| 2026-05-29 | William Contreras | #125 | 45 | ⚪ D | 📈 WARM | · |
| 2026-05-29 | Jackson Chourio | #108 | 47 | ⚪ D | ➖ NTRL | 💥 |
| 2026-05-29 | Garrett Mitchell | #78 | 52 | 🟠 C | 📈 WARM | · |
| 2026-05-29 | Christian Yelich | #52 | 58 | 🟠 C | 📈 WARM | · |
| 2026-05-29 | Jake Bauers | #20 | 68 | 🔵 C+ | 📈 WARM | · |
| 2026-05-23 | Nico Hoerner | #259 | 24 | ⚪ D | ❄ COLD | · |
| 2026-05-23 | Seiya Suzuki | #191 | 38 | ⚪ D | ❄ COLD | · |
| 2026-05-23 | Pete Crow-Armstrong | #190 | 38 | ⚪ D | 📉 COOL | · |
| 2026-05-23 | Alex Bregman | #185 | 39 | ⚪ D | ➖ NTRL | · |
| 2026-05-23 | Dansby Swanson | #168 | 41 | ⚪ D | 📉 COOL | · |
| 2026-05-23 | Michael Busch | #106 | 50 | 🟠 C | 🔥 HOT | · |
| 2026-05-23 | Moisés Ballesteros | #85 | 53 | 🟠 C | 📈 WARM | · |
| 2026-05-23 | Miguel Amaya | #81 | 54 | 🟠 C | ➖ NTRL | · |
| 2026-05-23 | Michael Conforto | #30 | 66 | 🔵 C+ | 📉 COOL | · |
| 2026-05-16 | Alejandro Osuna | #241 | 19 | ⚪ D | ➖ NTRL | · |
| 2026-05-16 | Danny Jansen | #206 | 30 | ⚪ D | ❄ COLD | · |
| 2026-05-16 | Josh Jung | #142 | 40 | ⚪ D | 📉 COOL | · |
| 2026-05-16 | Justin Foscue | #116 | 45 | ⚪ D | ➖ NTRL | · |
| 2026-05-16 | Evan Carter | #113 | 46 | ⚪ D | ➖ NTRL | · |
| 2026-05-16 | Joc Pederson | #112 | 46 | ⚪ D | 📈 WARM | · |
| 2026-05-16 | Brandon Nimmo | #94 | 49 | ⚪ D | 📈 WARM | · |
| 2026-05-16 | Jake Burger | #82 | 51 | 🟠 C | 📈 WARM | · |
| 2026-05-16 | Ezequiel Duran | #74 | 53 | 🟠 C | 📈 WARM | · |
| 2026-05-10 | Matt McLain | #75 | 36 | ⚪ D | ❄ COLD | · |
| 2026-05-10 | Eugenio Suárez | #49 | 43 | ⚪ D | · — | · |
| 2026-05-10 | TJ Friedl | #48 | 43 | ⚪ D | 📈 WARM | · |
| 2026-05-10 | Tyler Stephenson | #44 | 44 | ⚪ D | 📉 COOL | · |
| 2026-05-10 | Ke'Bryan Hayes | #32 | 46 | ⚪ D | 📈 WARM | · |
| 2026-05-10 | Spencer Steer | #18 | 52 | 🟠 C | ➖ NTRL | 💥 |
| 2026-05-10 | Elly De La Cruz | #14 | 54 | 🟠 C | ❄ COLD | · |
| 2026-05-10 | Nathaniel Lowe | #12 | 55 | 🟠 C | 📉 COOL | · |
| 2026-05-10 | Sal Stewart | #7 | 56 | 🟠 C | 📉 COOL | · |
| 2026-04-28 | Blaze Alexander | #139 | 38 | ⚪ D | ❄ COLD | · |
| 2026-04-28 | Dylan Beavers | #40 | 61 | 🔵 C+ | 📈 WARM | · |
| 2026-04-28 | Leody Taveras | #34 | 64 | 🔵 C+ | 📈 WARM | · |
| 2026-04-28 | Jeremiah Jackson | #33 | 64 | 🔵 C+ | ➖ NTRL | · |
| 2026-04-28 | Pete Alonso | #32 | 64 | 🔵 C+ | 📈 WARM | 💥 |
| 2026-04-28 | Taylor Ward | #31 | 64 | 🔵 C+ | 📈 WARM | · |
| 2026-04-28 | Coby Mayo | #27 | 68 | 🔵 C+ | 🔥 HOT | · |
| 2026-04-28 | Samuel Basallo | #14 | 73 | 🟡 B | ➖ NTRL | · |
| 2026-04-28 | Gunnar Henderson | #12 | 76 | 🟡 B | ➖ NTRL | · |