| venue | TB | TEX | line | as of |
|---|---|---|---|---|
| Polymarket ↗ | 57.5c▲1.0 | 42.5c▼1.0 | ask 58.0c | 08:25Z |
| Kalshi ↗ | 58.0c▲1.5 | 42.0c▼1.5 | ask 59.0c | 08:25Z |
| Pinnacle ↗ | 57.6c▲1.7 | 42.4c▼1.7 | -144 / +130 | 08:25Z |
| DK · ESPN ↗ | 57.3c▲1.0 | 42.7c▼1.0 | -150 / +124 | 08:25Z |
| Bovada ↗ | 57.8c▲1.2 | 42.2c▼1.2 | -152 / +127 | 08:25Z |
| BetRivers ↗ | 56.8c | 43.2c | -143 / +123 | 08:25Z |
P(TB wins) over time, by venue
At first pitch: 86°F, wind 8 mph from the WSW (gusts 13), 55% chance of precipitation.
| hour (UTC) | temp | wind | gusts | precip | humidity |
|---|---|---|---|---|---|
| 15:00 | 87°F | 8 mph W | 12 | 50% | 75% |
| 16:00 | 89°F | 5 mph SW | 11 | 48% | 69% |
| 17:00game | 86°F | 8 mph WSW | 13 | 55% | 77% |
| 18:00game | 82°F | 11 mph SE | 15 | 56% | 76% |
| 19:00game | 81°F | 10 mph ESE | 13 | 56% | 82% |
| 20:00game | 79°F | 12 mph SE | 18 | 53% · 0.4mm | 94% |
| 21:00 | 78°F | 10 mph SSE | 15 |
One row per priced side at each venue's main line. Exchange spreads come from Polymarket's spread markets; book prices are de-vigged within the pair.
| venue | side | line | prob | odds | as of |
|---|---|---|---|---|---|
| Polymarket ↗ | TB | -1.5 | 38.5c | — | 08:25Z |
| TEX | -2.5 | 22.5c | — | 08:25Z | |
| Pinnacle ↗ | TB | -1.5 | 37.8c | +158 | 08:25Z |
| TEX | +1.5 | 62.2c | -176 | 08:25Z | |
| Bovada ↗ | TB | -1.5 | 37.9c | +155 | 08:25Z |
Each venue's main total — the line trading closest to a coin flip. The chart tracks the line itself moving (e.g. 8.5 → 9), which is where game-level information shows up first.
| venue | side | line | prob | odds | as of |
|---|---|---|---|---|---|
| Polymarket ↗ | over | 7.5 | 50.5c | — | 08:25Z |
| Kalshi ↗ | over | 7.5 | 51.0c | — | 08:25Z |
| Pinnacle ↗ | over | 7.5 | 50.0c | -107 | 08:25Z |
| under | 7.5 | 50.0c | -107 | 08:25Z | |
| DK · ESPN ↗ | over |
| 47% |
| 93% |
| 22:00 | 80°F | 8 mph SSE | 13 | 34% | 89% |
Hourly forecast, refreshed with the capture cron — weather data by Open-Meteo.com (CC BY 4.0).
| TEX |
| +1.5 |
| 62.1c |
| -180 |
| 08:25Z |
| BetRivers ↗ | TB | -1.5 | 37.5c | +155 | 08:25Z |
| TEX | +1.5 | 62.5c | -189 | 08:25Z |
TB line (points) over time, by venue
| 7.5 |
| 50.4c |
| -112 |
| 08:25Z |
| under | 7.5 | 49.6c | -108 | 08:25Z |
| Bovada ↗ | over | 7.5 | 50.0c | -110 | 08:25Z |
| under | 7.5 | 50.0c | -110 | 08:25Z |
| BetRivers ↗ | over | 8 | 48.3c | -102 | 08:25Z |
| under | 8 | 51.7c | -118 | 08:25Z |
Total (points) over time, by venue
TB
63–46 · .578
TEX
56–53 · .514
Run figures rather than team ERA and OPS: innings pitched and slugging do not survive the publish step, so those two are not computable here and a proxy under their name would be worse than their absence.
No meetings yet in the 2026 record.
A fantasy app would put a projected line on every row here. This one does not have a projection worth printing: the form and head-to-head features on this page were tested as model inputs against the market and came back null, with weights that flipped sign between refits.
So they stay what they honestly are — context for reading tonight, not a forecast. The record of that test is in the research log.
Bars are hits per game over the team's last ten — a hairline is a game this batter did not appear in, never an estimate and never a gap in the sequence. L10 comes from the same rolling primitives the models backtest with, so a batter under the window minimum shows a gap rather than a guess. 9 of these splits show “—” because the sample is under 8 at-bats: that is an anecdote, not a rate, and the at-bat count is left visible so you can see how thin it was.
Bars are hits per game over the team's last ten — a hairline is a game this batter did not appear in, never an estimate and never a gap in the sequence. L10 comes from the same rolling primitives the models backtest with, so a batter under the window minimum shows a gap rather than a guess. 9 of these splits show “—” because the sample is under 8 at-bats: that is an anecdote, not a rate, and the at-bat count is left visible so you can see how thin it was.