Angels vs. Giants Pick: Ray’s 2.77-ERA Edge at a -130 Price

by | Jul 25, 2026 | MLB Picks

Robbie Ray San Francisco Giants is key to our MLB prediction & analysis

Robbie Ray’s 3.33 ERA against Ryan Johnson’s 6.10 is not a stylistic gap — it is a functional tier difference the -130 moneyline barely acknowledges. Oracle Park sharpens every quality inning, and the team with the starter edge is better structured to protect a slim lead through the middle frames.

Ryan Johnson vs Robbie Ray: Los Angeles Angels at San Francisco Giants Betting Preview

The core of this game is a starter gap that the -130 moneyline barely acknowledges. Robbie Ray owns a 3.33 ERA over 110.2 innings this season. Ryan Johnson is at 6.10 with a 2-4 record, operating as an emergency option in a rotation that has lost both Yusei Kikuchi and Jack Kochanowicz to the 60-Day IL. That is not a stylistic mismatch — that is a functional tier difference between a productive mid-rotation starter and a pitcher the Angels are running out because they have no one else.

The market noise here is real: both of these teams are sub-.500, both finished last night’s game in extra innings, and the Giants’ bullpen is in disarray. The opening line likely reflects the public seeing a Giants win last night and loading up on San Francisco in the same series. But the price hasn’t overcorrected — -130 is exactly the kind of number where the pitching edge is priced in without being paid a premium for it.

The argument for San Francisco isn’t a superior team argument. It’s a starter-edge argument. Ray gives the Giants a credible path to a lead through six innings. Johnson gives the Angels’ lineup a credible path to falling behind early and chasing. At this price, that gap is worth a measured two-unit play.

Game Info & Betting Lines

  • Date/Time: Saturday, July 25, 2026 — 4:05 PM ET
  • Venue: Oracle Park | Park Factor: 0.92 (pitcher-friendly)
  • TV: MLB.TV, NBC Sports BA, Angels.TV
  • Probable Starters: Ryan Johnson (LAA, 2-4, 6.10 ERA) vs Robbie Ray (SF, 8-6, 3.33 ERA)
  • Moneyline: Los Angeles Angels +110 / San Francisco Giants -130
  • Run Line: San Francisco Giants -1.5 (+155) / Los Angeles Angels +1.5 (-188)
  • Total: 8.5 (Over -122 / Under +100)

Why This Number Is Close

The market is balancing two legitimate forces pulling in opposite directions, and it’s landed on -130 as a reasonable midpoint. The case for that number being fair: the Giants bullpen is crippled, with Peguero, Butto, and Gage all on the IL, and they proved last night they can surrender a five-run lead and a two-run lead in the same game. The Angels also have Mike Trout (.847 OPS, 18 HR) at the top of their order — a player capable of flipping a game’s momentum on a single swing regardless of who’s pitching.

The legitimate case for the other side of -130: the Angels are running out a pitcher with a 6.10 ERA against a Giants lineup that features Luis Arraez (.320 AVG), Casey Schmitt (20 HR, 51 RBI), and Rafael Devers (20 HR, 53 RBI, walk-off hero last night). The numbers project a 75.2% win probability for the Giants — a figure that would justify a price closer to -175 to -190. At -130, you’re getting implied odds of roughly 56.5% on a team the numbers peg as a 75% favorite.

Where the market is slightly wrong: it’s weighing the Giants’ bullpen volatility heavily enough to keep the price suppressed, but it’s underweighting the starter gap. Johnson’s ERA isn’t bad luck — it reflects a pitcher who gives up hard contact and doesn’t miss bats consistently enough. That gap makes Ray’s 3.33 ERA the relevant variable, not last night’s bullpen chaos.

What Separates the Pitching

The gap between these two starters is the widest variable in the game. Ray’s arsenal is built around a 93.4 mph four-seamer deployed 37.4% of the time, and his true secondaries are a slider (26.3% usage, 33.2% whiff rate, .343 xwOBA-against) and a changeup (16.1% usage, 23.7% whiff rate, .251 xwOBA-against). He also leans on a sinker at 10.4% usage, and rounds out the mix with a knuckle curve at 9.8% — a low-usage offering that flashes a 37.6% whiff rate and .250 xwOBA but isn’t a featured weapon given how rarely he deploys it. Ray’s problem is volume — a 1.30 WHIP and 54 walks in 110.2 innings mean runners are a constant presence, but his ability to limit hard damage once he gets into counts is what keeps that ERA at 3.33.

Johnson presents the opposite profile. His sinker — used 28% of the time at 92.6 mph — generates a .509 xwOBA against and a whiff rate of just 4.6%. That’s not a pitch that misses bats; it’s a pitch that gets hit hard. His best offering is a splitter (24.5% usage, 35.7% whiff rate, .174 xwOBA), and he also carries a sweeper (16.7% usage, 79.3 mph, 33.8% whiff rate, .275 xwOBA) that functions as a legitimate put-away pitch. His cutter (30.4% usage) holds a .265 xwOBA. The sweeper and splitter give Johnson two functional weapons, but they have to compensate for a sinker that opposing hitters punish at a .509 clip — and against a Giants lineup with real contact ability, that’s a significant ask.

The Giants’ top-of-order Statcast numbers against a left-handed pitcher like Ray — Heliot Ramos (.542 xwOBA vs LHP), Bryce Eldridge (.438 xwOBA vs LHP), and Casey Schmitt (.448 xwOBA vs LHP) — suggest Ray’s own lineup punishes him from the left side. But those same hitters face Johnson’s sinker-heavy, low-whiff profile, and the data favors the Giants: Ramos carries a .451 overall xwOBA, Eldridge .452. Devers’ .360 xwOBA vs LHP is actually his lower split, but his .410 overall mark and hard-hit rate of 28.3% make him dangerous regardless.

The innings each pitcher creates look different: Ray creates traffic but limits damage. Johnson creates traffic and allows damage. That distinction amplifies at Oracle Park, where a run-suppression environment means Ray’s ability to strand runners matters more.

Run Environment & Game Shape

Oracle Park’s 0.92 park factor is a meaningful input here. A pitcher-friendly environment doesn’t flatten the starter gap — it sharpens it. When total run expectation is suppressed, the quality of each inning increases in value. Ray’s ability to strand runners and limit hard contact through six innings is worth more in a ballpark that takes the teeth out of mediocre contact. Johnson’s sinker problem — a .509 xwOBA against — doesn’t get neutralized by Oracle Park; hard-hit balls still find gaps.

The suppressed run environment actually works in favor of the team with the starter edge. When the total is held down by park and pitching, the team that gets quality innings from their starter is better positioned to protect a one- or two-run lead through the middle of the game. Ray gives the Giants that structure. Johnson does not give the Angels the same.

The Giants’ bullpen is a real concern — Peguero, Butto, and Gage are all unavailable, and last night’s near-collapse is fresh. But the path to a Giants win doesn’t require a dominant bullpen performance. It requires Ray to give them a lead through five or six innings, which his 3.33 ERA says he’s capable of doing, and a functional back end to hold it. At -130, the price reflects the bullpen risk without giving full credit to the starter gap that created the edge in the first place.

The Pushback

The honest pushback starts with the Giants’ injury situation. Matt Chapman is on the 10-Day IL with an abdominal strain. Victor Bericoto (.857 OPS in limited duty) is also out with an oblique. Harrison Bader and Jonah Cox are unavailable in the outfield. That’s lineup depth stripped away at multiple positions, and it’s not trivial against a pitcher who — even at 6.10 ERA — has a functional splitter and sweeper combination that can put away the bottom of an order.

The Angels have real bats at the top. Trout’s .847 OPS and 18 home runs make him a legitimate threat any time he steps in. Zach Neto (.771 OPS, 19 HR) is dangerous at the back of the order. And the Angels just came off a stretch where they won three in a row — they’re not a dead lineup walking.

But the pushback doesn’t change the bet. It contextualizes the risk. You’re not taking -130 on a dominant Giants team; you’re taking -130 on a starter-edge play at a price the numbers say is undervalued by 15 to 20 cents.

The Pick

Ray’s ERA advantage is real, it’s backed by pitch-level data, and it’s not being fully priced into a -130 number that still heavily discounts for bullpen volatility. The run environment at Oracle Park tightens each inning and rewards the better starter. Johnson’s sinker is a liability against a Giants lineup with legitimate hard-contact ability up and down the order. The numbers put the Giants’ win probability at 75.2% — that’s a significant gap from the 56.5% implied by the current line.

Bet: San Francisco Giants ML -130 — 2 Units. The starter gap justifies the price.

100% Free Play up to $1,000 (Crypto Only)

BONUS CODE: PREDICTEM

BetOnline

MLB Betting Guide

New to betting on baseball? We’ve got you covered! Our comprehensive how to bet on baseball article explains all the different types of wagers offered at the sportsbooks including money lines, over/unders, run lines, parlays and more! Also get tips and strategies to increase your odds of beating the bookies!