| Batter | Pos | PA | AVG | OPS | HR |
|---|---|---|---|---|---|
| Jo Adell | RF | 4 | .000 | 0.000 | 0 |
| Jorge Soler | DH | 4 | .250 | 0.500 | 0 |
| Nolan Schanuel | 1B | 4 | .500 | 1.250 | 0 |
| Jose Siri | CF | 3 | .000 | 0.000 | 0 |
| Mike Trout | CF | 3 | .333 | 1.000 | 0 |
| Josh Lowe | LF | 2 | .000 | 0.500 | 0 |
| Hoppe | C | 2 | .000 | 0.000 | 0 |
| Tyler Heineman | C | 2 | .1000 | 2.000 | 0 |
| Vaughn Grissom | 2B | 1 | .000 | 0.000 | 0 |
| Zach Neto | SS | 1 | .1000 | 2.000 | 0 |
Ureña's 2.88 ERA looks excellent on the surface. That number does not tell the full story. He has walked 46 batters in 81.1 innings this season, a 5.09 BB/9 rate that ranks near the bottom of all MLB starters. In his last three outings he walked five in four innings against Texas, then four more in a shortened Seattle start. His June 26 start against Oakland was the ugly entry on his resume: 4.1 innings, 7 earned runs. The surface numbers say top-third starter. The walk rate says one bad inning away from implosion at any moment. Both pitchers are also coming off extended rest, Ureña 13 days and Liberatore 10, adding real uncertainty about how each arm responds coming off a long layoff.
These teams arrive from opposite directions, though neither is playing clean baseball. The Angels (40-61) snapped a four-game skid with back-to-back 3-2 wins and carry some momentum at home. The Cardinals (51-48) have dropped three straight, including two in Arizona, and their offense has stalled badly. They have posted a 69 wRC+ over their last 11 games with a .126 ISO over the past two weeks. Jordan Walker (.292/.355/.525, 22 HR, .939 OPS in the last 28 days) and Alec Burleson (.930 OPS against right-handed pitching, 15 HR) are the two bats that can bust the Cardinals out of this cold stretch in a single inning against a walk-prone starter.
Burleson is the matchup that keeps drawing attention. His .930 OPS vs RHP is the strongest platoon split in either lineup, and he steps in against a pitcher who grants free bases in bunches. Any sequence where Ureña loads the bases early is the Cardinals' clearest path to a crooked number, cold stretch or not. The market has priced this as a near-coin flip, Cardinals -106 to Angels -104, but St. Louis owns a 21-game advantage in the standings. That gap does not disappear because of 11 bad offensive games. On the other side, Zach Neto (.879 OPS vs LHP, 19 HR, .381 career average in 6 games vs St. Louis) is the single most dangerous hitter Liberatore will face tonight, and the platoon edge is real against a left-hander.
Picks made July 21, 2026 at 05:44 AM ET. Odds shown reflect current market prices.
The honest counterargument is this: the Cardinals' .126 ISO and 69 wRC+ over the past 11 games is not just a cold stretch, that is a lineup that is genuinely broken right now. If Liberatore comes off extended rest rusty and Zach Neto's platoon edge against the left-hander activates early, the Angels at -104 are a live play. I am not there, but acknowledging the variance is part of betting responsibly. Both teams are capable of surprising you in either direction tonight, which is exactly why the Over 9.0 carries some logic even through the offensive drought on both sides.
For the full slate, see our MLB picks today, NRFI picks, and player props.
| Date | Matchup | Result |
|---|---|---|
| Jul 21, 2026 | STL @ LAA | LAALAA 3-2 |
Cardinals vs Angels predictions: Cardinals ML -106 is the top play. Ureña's 5.09 BB/9 creates STL value. Liberatore Over 4.5 Ks at Angel Stadium.