April scorecard: Dodgers, Giants take the lead
Rockies and Tigers bring up the rear in 2021’s first monthly rankings
The first month of baseball’s 2021 season is over, and the grades are in.
The Boston Red Sox (17-10) and Kansas City Royals (15-9) ran up the best records in April, but they weren’t the best teams. Not according to my formula.
I’ve ranked all 30 big-league clubs according to their partial team scores for last month. Those calculations put the Los Angeles Dodgers and San Francisco Giants at the top of the heap.
You remember team score (TS), which I used to generate rankings last week of the worst and best clubs of the Expansion Era (1961-2020). My TS formula gives equal weight to four factors: winning percentage, the differential between bases per out (BPO) attained by batters and allowed by pitchers, the differential between runs scored and allowed per game, and postseason success. It generates a score for each club on a 100-point scale.
That last factor — playoff results — doesn’t apply during the season, of course, which is why I use partial TS for the rankings below, based solely on the first three components. The maximum score is 75.
What follows is a statistical rundown for all 30 teams, based solely on their April outputs. You’ll see each club’s record and its base and scoring differentials. You’ll also see home runs hit and allowed, as well as contact rates (CT) for hitters and pitchers. (CT is the share of at-bats that don’t end in strikeouts.)
Those last comparisons — power and contact — have no impact on a club’s partial TS. They’re included simply to add context.
Each club is ranked in every category. Ranks are shown in parentheses at the end of each line.
Twelve teams posted winning records in April. They’re dispersed all the way from the No. 1 Dodgers to the No. 14 Oakland Athletics (16-11), which are separated by more than 21 points on the TS scale.
The two clubs with the worst records, on the other hand, truly are the worst. The No. 29 Colorado Rockies (9-17) and the No. 30 Detroit Tigers (8-19) were the only teams with winning percentages below .350 last month.
Subscribe — free — to Baseball’s Best (and Worst)
A new installment will arrive in your email each Tuesday and Friday morning
1. Los Angeles Dodgers
Partial TS: 61.604
Record: 16-11, .593 (rank: 5)
Bases: .730 offensive BPO vs. .564 defensive BPO, a difference of .166 (rank: 1)
Scoring: 4.70 offensive R/G vs. 3.44 defensive R/G, a difference of 1.26 (rank: 1)
Power: 31 offensive HR vs. 27 defensive HR, a difference of 4 (rank: 9)
Contact: .714 offensive CT vs. .700 defensive CT, a difference of .014 (rank: 11)
2. San Francisco Giants
Partial TS: 56.917
Record: 16-10, .615 (rank: 3)
Bases: .660 offensive BPO vs. .553 defensive BPO, a difference of .107 (rank: 3)
Scoring: 4.08 offensive R/G vs. 3.19 defensive R/G, a difference of 0.89 (rank: 4)
Power: 32 offensive HR vs. 24 defensive HR, a difference of 8 (rank: 4)
Contact: .711 offensive CT vs. .726 defensive CT, a difference of -.015 (rank: 20)
3. Boston Red Sox
Partial TS: 54.507
Record: 17-10, .630 (rank: 1)
Bases: .711 offensive BPO vs. .620 defensive BPO, a difference of .091 (rank: 4)
Scoring: 4.78 offensive R/G vs. 3.89 defensive R/G, a difference of 0.89 (rank: 4)
Power: 31 offensive HR vs. 17 defensive HR, a difference of 14 (rank: 1)
Contact: .750 offensive CT vs. .710 defensive CT, a difference of .040 (rank: 7)
4. Chicago White Sox
Partial TS: 54.204
Record: 14-11, .560 (rank: 7)
Bases: .723 offensive BPO vs. .600 defensive BPO, a difference of .123 (rank: 2)
Scoring: 5.08 offensive R/G vs. 3.92 defensive R/G, a difference of 1.16 (rank: 3)
Power: 23 offensive HR vs. 25 defensive HR, a difference of -2 (rank: 19)
Contact: .745 offensive CT vs. .686 defensive CT, a difference of .059 (rank: 6)
5. San Diego Padres
Partial TS: 49.728
Record: 15-12, .556 (rank: 8)
Bases: .669 offensive BPO vs. .583 defensive BPO, a difference of .086 (rank: 6)
Scoring: 4.04 offensive R/G vs. 3.48 defensive R/G, a difference of 0.56 (rank: 7)
Power: 26 offensive HR vs. 30 defensive HR, a difference of -4 (rank: 21)
Contact: .744 offensive CT vs. .664 defensive CT, a difference of .080 (rank: 1)
6. Houston Astros
Partial TS: 49.338
Record: 14-12, .538 (rank: 10)
Bases: .679 offensive BPO vs. .625 defensive BPO, a difference of .054 (rank: 8)
Scoring: 5.04 offensive R/G vs. 3.85 defensive R/G, a difference of 1.19 (rank: 2)
Power: 26 offensive HR vs. 30 defensive HR, a difference of -4 (rank: 21)
Contact: .789 offensive CT vs. .729 defensive CT, a difference of .060 (rank: 4)
7. Milwaukee Brewers
Partial TS: 48.834
Record: 16-10, .615 (rank: 3)
Bases: .625 offensive BPO vs. .595 defensive BPO, a difference of .030 (rank: 9)
Scoring: 3.96 offensive R/G vs. 3.58 defensive R/G, a difference of 0.38 (rank: 10)
Power: 31 offensive HR vs. 27 defensive HR, a difference of 4 (rank: 9)
Contact: .693 offensive CT vs. .684 defensive CT, a difference of .009 (rank: 13)
8. Kansas City Royals
Partial TS: 43.209
Record: 15-9, .625 (rank: 2)
Bases: .658 offensive BPO vs. .669 defensive BPO, a difference of -.011 (rank: 17)
Scoring: 4.38 offensive R/G vs. 4.46 defensive R/G, a difference of -0.08 (rank: 17)
Power: 22 offensive HR vs. 23 defensive HR, a difference of -1 (rank: 16)
Contact: .755 offensive CT vs. .732 defensive CT, a difference of .023 (rank: 9)
9. New York Yankees
Partial TS: 42.974
Record: 12-14, .462 (rank: 20)
Bases: .662 offensive BPO vs. .574 defensive BPO, a difference of .088 (rank: 5)
Scoring: 3.92 offensive R/G vs. 3.54 defensive R/G, a difference of 0.38 (rank: 10)
Power: 37 offensive HR vs. 26 defensive HR, a difference of 11 (rank: 3)
Contact: .737 offensive CT vs. .677 defensive CT, a difference of .060 (rank: 4)
10. Toronto Blue Jays
Partial TS: 42.919
Record: 12-12, .500 (rank: 13)
Bases: .668 offensive BPO vs. .647 defensive BPO, a difference of .021 (rank: 11)
Scoring: 4.46 offensive R/G vs. 3.75 defensive R/G, a difference of 0.71 (rank: 6)
Power: 35 offensive HR vs. 29 defensive HR, a difference of 6 (rank: 6)
Contact: .738 offensive CT vs. .744 defensive CT, a difference of -.006 (rank: 17)
11. Seattle Mariners
Partial TS: 41.124
Record: 15-12, .556 (rank: 8)
Bases: .628 offensive BPO vs. .625 defensive BPO, a difference of .003 (rank: 14)
Scoring: 4.15 offensive R/G vs. 4.11 defensive R/G, a difference of 0.04 (rank: 15)
Power: 30 offensive HR vs. 23 defensive HR, a difference of 7 (rank: 5)
Contact: .702 offensive CT vs. .767 defensive CT, a difference of -.065 (rank: 28)
12. St. Louis Cardinals
Partial TS: 41.053
Record: 14-12, .538 (rank: 10)
Bases: .628 offensive BPO vs. .646 defensive BPO, a difference of -.018 (rank: 18)
Scoring: 4.50 offensive R/G vs. 4.15 defensive R/G, a difference of 0.35 (rank: 12)
Power: 33 offensive HR vs. 21 defensive HR, a difference of 12 (rank: 2)
Contact: .723 offensive CT vs. .737 defensive CT, a difference of -.014 (rank: 19)
13. Arizona Diamondbacks
Partial TS: 40.677
Record: 14-12, .538 (rank: 10)
Bases: .709 offensive BPO vs. .737 defensive BPO, a difference of -.028 (rank: 19)
Scoring: 5.23 offensive R/G vs. 4.85 defensive R/G, a difference of 0.38 (rank: 9)
Power: 36 offensive HR vs. 35 defensive HR, a difference of 1 (rank: 14)
Contact: .744 offensive CT vs. .757 defensive CT, a difference of -.013 (rank: 18)
14. Oakland Athletics
Partial TS: 40.004
Record: 16-11, .593 (rank: 5)
Bases: .658 offensive BPO vs. .690 defensive BPO, a difference of -.032 (rank: 21)
Scoring: 4.11 offensive R/G vs. 4.26 defensive R/G, a difference of -0.15 (rank: 18)
Power: 33 offensive HR vs. 31 defensive HR, a difference of 2 (rank: 12)
Contact: .718 offensive CT vs. .748 defensive CT, a difference of -.030 (rank: 22)
15. Cincinnati Reds
Partial TS: 39.250
Record: 12-13, .480 (rank: 18)
Bases: .735 offensive BPO vs. .719 defensive BPO, a difference of .016 (rank: 13)
Scoring: 5.44 offensive R/G vs. 5.12 defensive R/G, a difference of 0.32 (rank: 13)
Power: 38 offensive HR vs. 35 defensive HR, a difference of 3 (rank: 11)
Contact: .718 offensive CT vs. .711 defensive CT, a difference of .007 (rank: 15)
16. Miami Marlins
Partial TS: 37.736
Record: 11-14, .440 (rank: 25)
Bases: .637 offensive BPO vs. .619 defensive BPO, a difference of .018 (rank: 12)
Scoring: 4.16 offensive R/G vs. 3.72 defensive R/G, a difference of 0.44 (rank: 8)
Power: 21 offensive HR vs. 26 defensive HR, a difference of -5 (rank: 23)
Contact: .705 offensive CT vs. .733 defensive CT, a difference of -.028 (rank: 21)
17. Cleveland Indians
Partial TS: 37.712
Record: 12-12, .500 (rank: 13)
Bases: .629 offensive BPO vs. .628 defensive BPO, a difference of .001 (rank: 15)
Scoring: 3.96 offensive R/G vs. 4.00 defensive R/G, a difference of -0.04 (rank: 16)
Power: 31 offensive HR vs. 36 defensive HR, a difference of -5 (rank: 23)
Contact: .741 offensive CT vs. .706 defensive CT, a difference of .035 (rank: 8)
18. Tampa Bay Rays
Partial TS: 34.557
Record: 13-14, .481 (rank: 17)
Bases: .638 offensive BPO vs. .641 defensive BPO, a difference of -.003 (rank: 16)
Scoring: 4.19 offensive R/G vs. 4.59 defensive R/G, a difference of -0.40 (rank: 20)
Power: 27 offensive HR vs. 27 defensive HR, a difference of 0 (rank: 15)
Contact: .700 offensive CT vs. .733 defensive CT, a difference of -.033 (rank: 23)
19. New York Mets
Partial TS: 34.292
Record: 9-11, .450 (rank: 24)
Bases: .610 offensive BPO vs. .525 defensive BPO, a difference of .085 (rank: 7)
Scoring: 2.90 offensive R/G vs. 3.60 defensive R/G, a difference of -0.70 (rank: 26)
Power: 15 offensive HR vs. 10 defensive HR, a difference of 5 (rank: 7)
Contact: .726 offensive CT vs. .656 defensive CT, a difference of .070 (rank: 2)
20. Minnesota Twins
Partial TS: 33.497
Record: 9-15, .375 (rank: 28)
Bases: .688 offensive BPO vs. .661 defensive BPO, a difference of .027 (rank: 10)
Scoring: 4.63 offensive R/G vs. 4.54 defensive R/G, a difference of 0.09 (rank: 14)
Power: 31 offensive HR vs. 32 defensive HR, a difference of -1 (rank: 16)
Contact: .740 offensive CT vs. .739 defensive CT, a difference of .001 (rank: 16)
21. Los Angeles Angels
Partial TS: 31.826
Record: 12-12, .500 (rank: 13)
Bases: .682 offensive BPO vs. .713 defensive BPO, a difference of -.031 (rank: 20)
Scoring: 4.79 offensive R/G vs. 5.58 defensive R/G, a difference of -0.79 (rank: 28)
Power: 33 offensive HR vs. 28 defensive HR, a difference of 5 (rank: 7)
Contact: .764 offensive CT vs. .699 defensive CT, a difference of .065 (rank: 3)
22. Philadelphia Phillies
Partial TS: 31.194
Record: 13-13, .500 (rank: 13)
Bases: .641 offensive BPO vs. .676 defensive BPO, a difference of -.035 (rank: 22)
Scoring: 3.73 offensive R/G vs. 4.31 defensive R/G, a difference of -0.58 (rank: 23)
Power: 26 offensive HR vs. 35 defensive HR, a difference of -9 (rank: 26)
Contact: .696 offensive CT vs. .731 defensive CT, a difference of -.035 (rank: 25)
23. Atlanta Braves
Partial TS: 29.415
Record: 12-14, .462 (rank: 20)
Bases: .738 offensive BPO vs. .786 defensive BPO, a difference of -.048 (rank: 23)
Scoring: 4.69 offensive R/G vs. 5.08 defensive R/G, a difference of -0.39 (rank: 19)
Power: 38 offensive HR vs. 39 defensive HR, a difference of -1 (rank: 16)
Contact: .732 offensive CT vs. .716 defensive CT, a difference of .016 (rank: 10)
24. Baltimore Orioles
Partial TS: 28.743
Record: 12-14, .462 (rank: 20)
Bases: .585 offensive BPO vs. .664 defensive BPO, a difference of -.079 (rank: 27)
Scoring: 3.62 offensive R/G vs. 4.12 defensive R/G, a difference of -0.50 (rank: 21)
Power: 25 offensive HR vs. 34 defensive HR, a difference of -9 (rank: 26)
Contact: .713 offensive CT vs. .746 defensive CT, a difference of -.033 (rank: 23)
25. Pittsburgh Pirates
Partial TS: 27.312
Record: 12-13, .480 (rank: 18)
Bases: .623 offensive BPO vs. .696 defensive BPO, a difference of -.073 (rank: 24)
Scoring: 3.88 offensive R/G vs. 4.52 defensive R/G, a difference of -0.64 (rank: 25)
Power: 20 offensive HR vs. 29 defensive HR, a difference of -9 (rank: 26)
Contact: .734 offensive CT vs. .720 defensive CT, a difference of .014 (rank: 11)
26. Texas Rangers
Partial TS: 24.408
Record: 11-16, .407 (rank: 27)
Bases: .625 offensive BPO vs. .704 defensive BPO, a difference of -.079 (rank: 26)
Scoring: 3.85 offensive R/G vs. 4.63 defensive R/G, a difference of -0.78 (rank: 27)
Power: 31 offensive HR vs. 39 defensive HR, a difference of -8 (rank: 25)
Contact: .680 offensive CT vs. .765 defensive CT, a difference of -.085 (rank: 29)
27. Chicago Cubs
Partial TS: 24.021
Record: 11-15, .423 (rank: 26)
Bases: .684 offensive BPO vs. .765 defensive BPO, a difference of -.081 (rank: 28)
Scoring: 4.38 offensive R/G vs. 4.92 defensive R/G, a difference of -0.54 (rank: 22)
Power: 32 offensive HR vs. 35 defensive HR, a difference of -3 (rank: 20)
Contact: .688 offensive CT vs. .723 defensive CT, a difference of -.035 (rank: 25)
28. Washington Nationals
Partial TS: 23.420
Record: 10-12, .455 (rank: 23)
Bases: .632 offensive BPO vs. .708 defensive BPO, a difference of -.076 (rank: 25)
Scoring: 3.50 offensive R/G vs. 4.45 defensive R/G, a difference of -0.95 (rank: 29)
Power: 21 offensive HR vs. 34 defensive HR, a difference of -13 (rank: 30)
Contact: .746 offensive CT vs. .738 defensive CT, a difference of .008 (rank: 14)
29. Colorado Rockies
Partial TS: 17.049
Record: 9-17, .346 (rank: 29)
Bases: .646 offensive BPO vs. .760 defensive BPO, a difference of -.114 (rank: 29)
Scoring: 4.42 offensive R/G vs. 5.00 defensive R/G, a difference of -0.58 (rank: 24)
Power: 30 offensive HR vs. 28 defensive HR, a difference of 2 (rank: 12)
Contact: .731 offensive CT vs. .768 defensive CT, a difference of -.037 (rank: 27)
30. Detroit Tigers
Partial TS: 3.478
Record: 8-19, .296 (rank: 30)
Bases: .530 offensive BPO vs. .747 defensive BPO, a difference of -.217 (rank: 30)
Scoring: 2.78 offensive R/G vs. 4.93 defensive R/G, a difference of -2.15 (rank: 30)
Power: 28 offensive HR vs. 38 defensive HR, a difference of -10 (rank: 29)
Contact: .668 offensive CT vs. .772 defensive CT, a difference of -.104 (rank: 30)