
2B · 2019
Cristhian Adames
- Age
- 28
- B/T
- S/R
- Height
- 5' 11"
- Weight
- 217 lb
- Born
- July 26, 1991 in Santo Domingo, Dominican Republic
- MLB debut
- July 29, 2014
- dbWAR
- -.4 4 season(s)
- PA
- 24
- AVG
- .318
- OBP
- .375
- SLG
- .364
- wRC+
- 110 100 = avg
Cristhian Adames is a second baseman for the San Francisco Giants. In 2019 he hit 0 home runs and knocked in 2 RBIs, notching 7 hits across 24 plate appearances in 9 games. His batting average was .318, 26.1% higher than the league average of .252. He reached base at a .375 clip and slugged .364, for an OPS of .739, 2.5% lower than the league mark of .758. He averaged 85.6 mph off the bat, hit 30.8% of balls in play at 95 mph or better and made contact on 66.0% of his swings. Adjusted for his ballpark and league, his 110 wRC+ puts his offence 10% above average. That comes to 0.1 dbWAR — +0.1 runs with the bat, -0.0 on the bases, +0.0 for the position he plays, against replacement level. It includes no fielding: defensive runs are proprietary and are not estimated here, so the figure credits playing a demanding position but not playing it well.
League context
Percentile among qualified batters, 2019.
How the WAR is built
Runs above replacement, 2019. These four terms sum to +0.9 runs, divided by runs-per-win to give WAR.
WAR by season
Batting
Standard and advanced, by season.
| Trend | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2019 | 9 | 24 | 7 | 0 | 2 | 0 | 2 | 8 | .318 | .375 | .364 | .045 | .500 | 8.3% | 33.3% | .328 | +0.1 | 110 | 0.1 | |
| 2017 | 12 | 14 | 0 | 0 | 0 | 0 | 1 | 6 | .000 | .071 | .000 | .000 | .000 | 7.1% | 42.9% | .051 | -3.2 | -80 | -0.3 | |
| 2016 | 116 | 256 | 49 | 2 | 17 | 2 | 24 | 47 | .218 | .304 | .302 | .084 | .267 | 9.4% | 18.4% | .276 | -9.2 | 63 | -0.1 | |
| 2015 | 23 | 58 | 13 | 0 | 3 | 0 | 3 | 11 | .245 | .298 | .302 | .057 | .310 | 5.2% | 19.0% | .263 | -2.5 | 55 | -0.1 |
Platoon splits
How he hits left- and right-handed pitching.
| Split | PA | AB | H | HR | BB | SO | AVG | OBP | SLG | wOBA | K% |
|---|---|---|---|---|---|---|---|---|---|---|---|
| vs LHP | 10 | 9 | 2 | 0 | 1 | 3 | .222 | .300 | .333 | .280 | 30.0% |
| vs RHP | 14 | 13 | 5 | 0 | 1 | 5 | .385 | .429 | .385 | .362 | 35.7% |
Spray chart
Where every ball he put in play landed, 2019.
Loading 14 batted balls…
Contact quality
How hard and at what angle he hits it, over 13 tracked batted balls in 2019. Percentiles are against qualified batters.
- Barrel rate
- 0.0% 0 barrels
- Exit velocity
- 85.6 mph average
- Max exit velo
- 101.5 mph, hardest hit
- Hard hit
- 30.8% 95 mph or better
- Sweet spot
- 30.8% 8–32° launch
- Launch angle
- 3.7° average
A barrel is a batted ball whose exit velocity and launch angle have historically produced at least a .500 average and 1.500 slugging — 98 mph within 26–30°, widening to 8–50° by 116 mph. Reconstructed from Statcast's published anchor points, which reproduces them exactly; the interior is within a degree. Sweet spot (8–32°) is an exact definition.
Hot and cold zones
Batting average by pitch location, 2019.
Situational hitting
How Cristhian Adames hits by base state, outs, score and late-game pressure — each read against his own season line.
| Situation | PA | AB | H | HR | RBI | BB | SO | AVG | OBP | SLG | wOBA |
|---|---|---|---|---|---|---|---|---|---|---|---|
| All situations | 24 | — | — | — | — | — | — | .318 | .375 | .364 | .328 |
| Bases empty · thin | 9 | 8 | 1 | 0 | 0 | 1 | 3 | .125 | .222 | .125 | .176 |
| Runner on first · thin | 8 | 8 | 3 | 0 | 0 | 0 | 3 | .375 | .375 | .500 | .370 |
| Runners on · thin | 15 | 14 | 6 | 0 | 2 | 1 | 5 | .429 | .467 | .500 | .419 |
| RISP · thin | 7 | 6 | 3 | 0 | 2 | 1 | 2 | .500 | .571 | .500 | .475 |
Runners on includes runners in scoring position, which is the convention every reference uses. Rows under 25 plate appearances are marked thin — at that size a rate moves several dozen points on one hit. Counted from play-by-play, 2019.
Head to head
Put Cristhian Adames beside up to three others.
wOBA uses linear weights measured from this season's own play-by-play rather than published constants, and wRC+ is park-adjusted against that same league. dbWAR is our own open implementation — not fWAR or bWAR — and the full derivation, including its simplifications, is on the methodology page.