Keogh was born in Harlow, Essex.[1] Having been a schoolboy in Ipswich Town's academy and a ballboy at Portman Road,[5] Keogh moved on to the Stoke City youth set-up. He was loaned out to Icelandic club Víkingur, where he played nine games.[6] Keogh was released in 2005 without making a first team appearance for Stoke City.

Keogh became somewhat of a cult hero at Brunton Park,[7] with one group of supporters carrying a giant 'In Keogh We Trust' banner across the country in support of Carlisle United. In his final season at Carlisle, Keogh won the 2009–10 Carlisle Player of the Year award.[8] Keogh left the club at expiry of his contract at the end of the 2009–10 season after turning down offers of a new contract with the club.[8]

Keogh signed a three–year deal with Coventry City on 29 June 2010 becoming the fourth close season signing for new manager Aidy Boothroyd. He officially transferred to Coventry on 1 July 2010 after his contract with Carlisle United had expired, because Keogh was under the age of 24 compensation was to be paid for the transfer, however, this was to remain undisclosed.

Keogh played every minute of every game for this season 2010–11, and scored his first goal for Coventry on the last game of the season against Norwich. He was voted Players' Player of the Year at the end of the 2010–11 season awards for Coventry City.[9] Keogh played every game for Coventry since signing for the club, until his unfortunate dismissal in the game at home to Doncaster Rovers on 21 April 2012, which brought an end to a run of 91 consecutive games played. Despite Coventry City's relegation from the Championship, Keogh won the Player of the Year award for the second consecutive season at Coventry's end of season awards. He also won the Players' Player of the Year awards.[3]

In May 2012, Coventry had rejected a £250,000 bid from Bristol City and a £800,000 from Cardiff City, as they opened contract negations with Keogh.[10] In July an undisclosed bid from Cardiff was rejected, believed to be in the region of £800,000.[11] Fellow Championship club Derby County had a reported £800,000 bid accepted on 17 July 2012.[11] Cardiff had pulled out of the bid two days later after refusing to match Derby's wage offer.[12] He was named the 5th best defender and 19th best player in the 2012–13 Football League Championship by the Actim Index.[13]

On 19 July 2012, Keogh signed a three-year contract at Derby County, for an undisclosed fee believed to be in excess of £1 million.[14] A day later, Keogh was named Derby County's new captain, replacing the departed Jason Shackell,[15] who covered the role after Shaun Barker's season long injury. Keogh was also captain at Coventry and said, "I thrive on the pressure. I feel it brings out the best in me. It's something I look forward to and I cannot wait to get out there and play."[15]

Keogh scored on his debut against Scunthorpe United in the League Cup, an extraordinary game which Derby had led 3–0, 4–1, and 5–3 but which ended in a 5–5 draw before Derby then lost 6–7 on penalties.[16] Keogh was an ever present in Derby's 2012–13 season, one of only two outfield players to play in every minute of every game in the Championship and praised the team spirit at the club as well as the management style of Nigel Clough.[17] He was awarded Derby County's Player of the Season award ahead of the club's final home game of the season against Millwall, as well as the Players' and Supporters awards.[4] Keogh, an ever present in the Derby starting 11 was the only Championship defender bar Aaron Cresswell to feature in every minute of league action during the season.[18]

Keogh was again considered the first choice centre back at the club by Clough ahead of the 2013–14 season.[19] The 2013/14 season ended in heartbreak for Keogh. His mistake led to Bobby Zamora scoring the winning goal in stoppage time of the Playoff Final.[20]

In September 2014, Keogh signed a new three year contract with Derby.[21]

Keogh made his debut for Republic of Ireland under-21s in 2005, and made eight appearances in total for them over a three-year period. He also captained the under-21 side.[22] In January 2013, Keogh was called up to the senior squad for the first time to play in a friendly against Poland on 6 February.[23] Keogh made his debut in the game, which Ireland won 2–0 as an 84th minute substitute for Ciaran Clark.[24] He scored his first goal for Ireland in a 4–0 win on 2 June in a friendly against Georgia.[25] Richard captained the Republic of Ireland for the first time in a friendly against Oman at the Aviva Stadium. A moment which he described as the 'proudest of his career'.[26]