Utley singled against Joe Ross to open the first inning, then moved to second base when Corey Seager did the same. Justin Turner followed with a fly ball to center field that advanced Utley to third base, where he was brought home on a wild pitch.
Carl Crawford was designated for assignment on June 5 sitting on 998 runs scored.
Utley nearly scored the milestone run in the first inning on Sunday against the Brewers, trying to tag up from third base on a fly ball to left field by Adrian Gonzalez, but Ryan Braun threw him out at the plate.
This the second time someone has reached the 1,000-run plateau in five days, as Ian Kinsler scored his 1,000th career run on Saturday night for the Tigers.
Utley is 13th among active players with his 1,000 runs. The first 949 of those runs came with Philadelphia, where he spent the first 12½ seasons of his career. Utley ranks sixth on the Phillies' all-time franchise list for runs scored, behind four Hall of Famers (Mike Schmidt, Ed Delahanty, Richie Ashburn and Chuck Klein) and Jimmy Rollins.
Though he has struggled in June (.197/.290/.262 entering Wednesday), 2016 has been a bounce-back year for Utley, who battled injuries last season to hit just .212/.286/.343 in 107 games between the Phillies and Dodgers. Now at age 37, Utley is hitting .264/.351/.387 on the season, leading the Dodgers in on-base percentage and second in runs scored (37).