Porter was raised in Newark, New Jersey in the South Ward and is a graduate of Weequahic High School. While in high school, Porter was an all-state performer in baseball, football and basketball.
Porter attended the University of Iowa, and played both baseball and football for the Iowa Hawkeyes. He earned All-Big Ten Conference honors in both sports.
Porter was drafted by the Chicago Cubs in the 40th round of the 1993 Major League Baseball draft.
In 1999, Porter made his major-league debut with the Cubs. Following the season, he was selected by the Oakland Athletics in the Rule 5 draft. After the 2000 season, he was selected off waivers by the Texas Rangers. He was granted free agency following the 2001 season, and he played the remainder of his career in the Atlanta Braves and Colorado Rockies minor league systems.
Porter served as the hitting coach for the Class A Greensboro Grasshoppers in 2005 and manager of the Class A-Advanced Jamestown Jammers in 2006. Porter served as Florida Marlins' third base coach and outfield and baserunning instructor from 2007 to 2009.
Porter became the Diamondbacks third base coach in 2010, after he declined the Marlins' offer to remain with the organization. Following the dismissal of manager A. J. Hinch and promotion of bench coach Kirk Gibson to interim manager in July 2010, Porter was promoted to bench coach.
The Marlins interviewed Porter for their managing job in mid-2010, after they fired Fredi González. Porter was fired by the Diamondbacks following the 2010 season.
Porter was hired by the Washington Nationals on November 2, 2010 as their new third base coach taking over for Pat Listach.
Porter was a finalist for the Florida Marlins & Pittsburgh Pirates Managerial positions after the 2010 season. The Marlins position eventually went to Florida's interim manager Edwin Rodríguez. While Porter accepted his position with the Nats before the Pirates finished their interview process.
On September 6, 2012, Porter was involved in a benches-clearing incident during a game between the Nationals and the Chicago Cubs. Chicago bench coach Jamie Quirk was yelling, apparently at Porter, from inside the Cubs dugout, causing Porter to leave his position as third base coach and approach Quirk. Ultimately, both teams came out onto the field and Quirk was ejected by umpire Jerry Layne.
On September 27, 2012, Porter was announced as the new manager of the Houston Astros for the 2013 season. Porter is also the first Astros manager to manage the team in the American League.
On September 1, 2014 Bo Porter was fired as the manager of the Houston Astros along with bench coach Dave Trembley (replaced by Adam Everett). Tom Lawless was named interim manager for the remaining month of the 2014 season.
On October 3, 2014, the Atlanta Braves announced coaching changes for the 2015 season which included Bo Porter being hired as thirdbase coach, a position which also includes outfield and baserunning coaching responsibilities. After the 2016 season concluded Ron Washington replaced Porter as the Braves 3rd base coach, and Porter was named a special assistant to GM John Coppolella. As of games played on July 18, 2017
Porter has lived in Houston, Texas, since 1996, and founded and runs the Texas Hawkeyes select baseball team program. In January 2012, he founded The Bo Porter SELF Foundation in Houston. SELF stands for Sports, Education, Life Skills, and Faith. Porter's wife, Stacey, was born in and grew up in Houston. They have a son Bryce.