Game HardBreakingOffspeed
SF@ARI (3/22/16) 5 4 1
SF@ATL (5/30/16) 0 2 0
SF@ATL (6/2/16) 1 0 0
LAD@SF (6/11/16) 0 0 0
MIL@SF (6/15/16) 0 2 0
SF@PIT (6/21/16) 1 2 0
OAK@SF (6/27/16) 1 1 2
SF@OAK (6/29/16) 2 0 0
GameHardBreakingOffspeed
SF@COL (4/22/17) 4 3 1
SD@SF (4/29/17) 0 0 0
SF@DET (7/6/17) 4 6 0
PIT@SF (7/25/17) 3 2 0
ARI@SF (8/5/17) 2 7 1
SF@WSH (8/13/17) 5 8 3
MIL@SF (8/21/17) 5 2 2
SF@ARI (8/27/17) 2 9 1
SF@COL (9/4/17) 3 3 1
LAD@SF (9/11/17) 0 1 0
ARI@SF (9/17/17) 1 3 2
SF@LAD (9/24/17) 4 2 1
SD@SF (9/29/17) 7 3 2
GameHardBreakingOffspeed
OAK@SF (3/27/18) 2 4 1
SF@LAD (4/1/18) 4 3 1
LAD@SF (4/7/18) 4 5 0
SF@SD (4/12/18) 7 5 1
SF@ARI (4/18/18) 7 1 0
WSH@SF (4/23/18) 3 4 3
LAD@SF (4/28/18) 3 0 1
SF@ATL (5/4/18) 7 1 0
SF@PHI (5/9/18) 3 4 0
CIN@SF (5/14/18) 1 2 0
COL@SF (5/19/18) 3 0 2
SF@CHC (5/26/18) 6 7 0
PHI@SF (6/1/18) 3 5 1
ARI@SF (6/6/18) 7 3 2
SF@MIA (6/12/18) 5 3 2
SF@LAD (6/17/18) 3 0 2
SD@SF (6/22/18) 5 1 1
COL@SF (6/28/18) 6 1 1
SF@COL (7/3/18) 9 3 0
MIL@SF (7/26/18) 2 0 2
SF@ARI (8/3/18) 1 7 0