A single file containing parsed data for all games for which Retrosheet has play-by-play data can be downloaded here. Retrosheet currently has play-by-play data for 199,830 games and this file includes 15,852,865 lines of data.
Download Parsed Play-by-Play for All Games
Parsed Play-by-Play by Season
1903 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024
Contents of parsed play-by-play files
gid GameID event play as it appears in our event file inning inning top_bot top (0) or bottom (1) of inning vis_home visiting (0) or home (1) team batting ballpark location of event - if a game was suspended and later resumed at a different ballpark, the value for 'ballpark' will change mid-game, indicating the site of specific events batteam batting team pitteam pitching team batter batter pitcher pitcher lp lineup position of batter bat_f fielding position of batter bathand batter handedness (B, L, R) pithand pitcher handedness count pitch count, if known; '??' if unknown pitches pitch sequence, if known; blank if unknown nump number of pitches, if known; blank if unknown pa did the play result in a plate appearance? (1 if yes, 0 if no) ab at bat single single double double triple triple hr home run sh sacrifice bunt sf sacrifice fly, if awarded; in some seasons, sh and sf were combined in official stats; they are separated here hbp hit-by-pitch walk walk iw intentional walk k strikeout xi catchers' interference oth plate appearance not identified by any previous stats othout 'oth' on which a batting out was made noout 'oth' on which no batting out was made bip ball-in-play; the hit type for bip is identified in the next four columns, if known bunt bunt ground ground ball fly fly ball (or pop up) line line drive gdp grounded into double play; 'gdp' is an official stat othdp double play that was not a 'gdp' tp triple play wp wild pitch pb passed ball bk balk oa non-pa not identified by any other stats: either 'out advancing' or 'other advance' di defensive indifference sb2 stolen base of second base sb3 stolen base of third base sbh stolen base of home cs2 caught stealing second base cs3 caught stealing third base csh caught stealing home pko1 pickoff at first base pko2 pickoff at second base pko3 pickoff at third base k_safe strikeout on which the batter reached base safely e1 error(s) by the pitcher; it is possible to be charged multiple errors on a single play e2 error(s) by the catcher e3 error(s) by the first baseman e4 error(s) by the second baseman e5 error(s) by the third baseman e6 error(s) by the shortstop e7 error(s) by the left fielder e8 error(s) by the center fielder e9 error(s) by the right fielder outs_pre number of outs prior to the play outs_post number of outs at the conclusion of the play br1_pre runner on first base, if any, prior to the play br2_pre runner on second base, if any, prior to the play br3_pre runner on third base, if any, prior to the play br1_post runner on first base, if any, at the conclusion of the play br2_post runner on second base, if any, at the conclusion of the play br3_post runner on third base, if any, at the conclusion of the play run_b batter if he scored a run on the play run1 runner on first base if he scored a run on the play run2 runner on second base if he scored a run on the play run3 runner on third base if he scored a run on the play prun1 pitcher charged with the run scored by the runner on first base prun2 pitcher charged with the run scored by the runner on second base prun3 pitcher charged with the run scored by the runner on third base runs total runs scored on the play rbi total RBI credited to batter on the play er total earned runs scored on the play tur runs scored on the play credited as (TUR) - team unearned runs f2 catcher f3 first baseman f4 second baseman f5 third baseman f6 shortstop f7 left fielder f8 center fielder f9 right fielder po0 putouts on play for which fielder is not identified (scored as 99 in event files) po1 putouts on play by pitcher po2 putouts on play by catcher po3 putouts on play by first baseman po4 putouts on play by second baseman po5 putouts on play by third baseman po6 putouts on play by shortstop po7 putouts on play by left fielder po8 putouts on play by center fielder po9 putouts on play by right fielder a1 assists on play by pitcher a2 assists on play by catcher a3 assists on play by first baseman a4 assists on play by second baseman a5 assists on play by third baseman a6 assists on play by shortstop a7 assists on play by left fielder a8 assists on play by center fielder a9 assists on play by right fielder batout1 fielding position of player who initiated first batting out batout2 fielding position of player who initiated second batting out (for double play) batout3 fielding position of player who initiated third batting out (for triple play) brout_b fielding position of player who initiated baserunning out by batter brout1 fielding position of player who initiated baserunning out by runner on first base brout2 fielding position of player who initiated baserunning out by runner on second base brout3 fielding position of player who initiated baserunning out by runner on third base firstf fielding position of first player to field a ball-in-play (1 - 9; 0 if unknown) loc location of ball in play, if known hittype hit type of ball in play, if known - B (bunt), G (ground ball), P (pop up), F (fly ball), or L (line drive) dpopp equal to one if there was a runner on first base and fewer than two outs pivot pivot man on double-play opportunity if one existed - on ground ball where 'dpopp' = 1, 'pivot' is player who made initial putout if a baserunner was forced out, or fielder of ground ball ('firstf') if no force out - idea behind 'pivot' is to establish fielders who deserve to share credit/blame for converting double plays pn play number - sequential order of plays within a particular game date date of game - if a game was suspended and later resumed at a different ballpark, the value for 'date' will change mid-game, to indicate the resumption of the game; 'date' does not change mid-game for games that are played continuously, but end after midnight local time gametype type of game (e.g., regular-season, exhibition, etc.) pbp 'deduced' or 'full'It is always Retrosheet's intention that everything it offers for download (and displays on its website) is as correct as possible. The data offered for download here include no known errors. Nevertheless, this is a massive undertaking and the volume of data here is quite formidable. Please let me know if you find any errors or have any issues with any of the files.
Enjoy!
Tom Thress
Retrosheet President
Recipients of Retrosheet data are free to make any desired use of the information, including (but not limited to) selling it, giving it away, or producing a commercial product based upon the data. Retrosheet has one requirement for any such transfer of data or product development, which is that the following statement must appear prominently
The information used here was obtained free of charge from and is copyrighted by Retrosheet. Interested parties may contact Retrosheet at 20 Sunset Rd., Newark, DE 19711.
Retrosheet website last updated January 8, 2025.
All data contained at this site is copyright 1996-2025 by Retrosheet. All Rights Reserved. Click here for information about the use of Retrosheet data