Portsmouth Ritchie had been involved in Portsmouth's academy since he turned 13, previously playing football locally in Gosport, starting at the age of six. After signing his first professional contract with the club, and a positive 2008–09 pre-season campaign, including a
hat-trick in a 4–1 victory over hometown club
Gosport Borough, after the match, Ritchie said scoring a hat-trick was 'unreal'. At the end of the season, with Portsmouth's relegation from the Premier League confirmed, he signed a new two-year deal. For the
2010–11 season, Ritchie was handed the number 5 shirt and was selected in Portsmouth's starting XI for their first match of the season at
Coventry City. However, he soon found himself out of the Portsmouth line-up and, with the club having disbanded its reserve team, manager
Steve Cotterill agreed to loan out the player for fitness reasons.
Loan to Dagenham & Redbridge Ritchie played reserve and academy football at Pompey until late September and continued to impress until he was taken on a one-month loan deal by
League Two club
Dagenham & Redbridge. He made his Football League debut against
Rotherham United on 27 September 2008, coming on as a late substitute. Ritchie scored on his first competitive start for the
Daggers in a 2–0 win over
Rochdale. He scored again in his next match, a 2–0 win over
Barnet. Ritchie also made clear his wishes to extend the loan deal until the end of the season. Dagenham announced on 30 December that the player would remain with the club until the end of the current season. His impressive performances saw him rewarded with a new two-year deal at Portsmouth, and their Young Player of the Season Award.
Loan to Notts County On 28 July 2009, it was reported that
Notts County, were in talks with
Portsmouth over a six-figure fee for his services, believed to be £100,000. On 1 September 2009, Ritchie signed on loan until 31 December, although County wanted to extend his loan deal.
Loan to Swindon and permanent basis After
Danny Wilson failed to secure Ritchie's services on a permanent deal during the transfer window, it was announced on 11 February 2010 that
Swindon Town had signed the midfielder on loan for the remainder of the
season. He made his debut on 23 February against
Stockport County after coming on for
Danny Ward after 25 minutes. After making a brief appearance for Pompey on 4 October, Ritchie was loaned again to Swindon Town, on a one-month deal. Two weeks later the deal was extended to two months. On 7 January 2011, Swindon Town signed Ritchie on a two-and-a-half-year deal for an undisclosed fee. He added to his tally with goals against
Bournemouth in a 3–2 loss, a 4–1 loss to
Southampton, a 1–1 draw with
Hartlepool United and a 2–1 loss against Notts County. Despite Swindon Town being relegated to League Two, Ritchie was named the Robins' Player of the Season. Under manager
Paolo Di Canio in League Two, he retained his first team place in the starting eleven and scoring form with ten goals that season. During the season, Ritchie was linked with League One clubs, with the likes of Bournemouth interested in signing the player. After Bournemouth's bid for him was rejected, manager Di Canio said that he was worth about £2 million. In March, he won the Football League Two Player of the Year for 2012. With teammate
Paul Caddis he was named in the PFA League Two Team of the Year. Ahead of a new season in League One, Swindon turned down a £900,000 offer from a League One club for Ritchie, insisting he would be sold for £2.5 million. Shortly afterwards he signed a new contract, keeping him at the club until 2014.
AFC Bournemouth On 30 January 2013, Ritchie signed for Bournemouth on a three-and-a-half-year deal for £400,000. After leaving Swindon Town, he said that he was surprised to leave the club and that he had left with a "heavy heart". However, Di Canio claimed that the club sold Ritchie behind his back. He made his debut on 2 February in a 3–0 win over
Milton Keynes Dons. Ritchie scored his first goal for his new team on 23 March in a 4–1 win over
Bury. That win was the first of an eight match run of successive wins, including a brace for Ritchie in a 3–1 victory over
Notts County, that culminated in clinching promotion to the Championship. He was a key performer for Bournemouth during the 2014–15 season. His form helped the side to top the Championship and won him international recognition with
Scotland. By April, he had scored 11 goals and provided 13 assists for his team. Ritchie's form saw him voted the
Football League's best player in a poll by
FourFourTwo magazine. On 19 September 2015, he scored his first ever goal in the
Premier League, coming on for Bournemouth in a 2–0 home win against
Sunderland. On 25 October 2015, Ritchie scored his team's only goal of the game after just one minute, in Bournemouth's 5–1 drubbing by
Tottenham Hotspur.
Newcastle United On 1 July 2016, Ritchie signed a five-year contract with newly relegated
Newcastle United, becoming the third signing under manager
Rafael Benítez. He made his debut for the club in a 1–0 loss to
Fulham, playing the full 90 minutes. His first goal, a penalty, came two matches later in a 4–1 win over
Reading. From then on, Ritchie would become the club's designated penalty taker and had a 100% success rate in all competitions, converting from the spot five times. He was involved in two penalty related incidents over the course of the season. On 25 October, he refused to hand the ball to
Aleksandar Mitrović, tucking it under his shirt, before scoring the third goal in a 6–0 win over
Preston North End. On 5 April 2017, against
Burton Albion, Ritchie scored a penalty, but it was not awarded due to encroachment by
Dwight Gayle. However, referee
Keith Stroud awarded a direct free kick to Burton, rather than allowing Ritchie to retake the penalty. Ultimately, it did not matter as he scored the winner anyway, to keep Newcastle in the promotion hunt. Ritchie's season was ended by suspension, when he argued with a match official after a home draw with
Leeds United. Ritchie scored sixteen goals in all competitions, with only Gayle having netted more for the club throughout the season. On 26 August, Ritchie assisted
Ciaran Clark for the second goal of the match, as Newcastle got their first win of the season, beating
West Ham United 3–0. He was then credited with the assists for the goals scored by
Jamaal Lascelles and
Christian Atsu in wins over
Swansea City and
Stoke City. On 28 November, he assisted both Newcastle goals from set-pieces in a 2–2 draw with
West Bromwich Albion. In the second half of the season, Ritchie scored three times, all in home wins over
Manchester United,
Southampton and
Arsenal. On 11 August 2018, Ritchie set up
Joselu for the equaliser, in a 2–1 home loss to
Tottenham Hotspur. He was taken off in the second half, much to his disapproval; his emotional outburst on the bench was captured on television cameras. In August 2019, he injured his ankle and was expected to be out of action for two months. In 2019–20, Ritchie celebrated goals by assertively kicking the corner flag. On 29 May 2024, Newcastle announced Ritchie would be leaving when his contract expired in the summer. During his eight years with the club, he made 215 appearances and scored 25 goals.
Return to Portsmouth In August 2024, Ritchie returned to his first club
Portsmouth signing a two-year deal, 13 years after he first left the club. On 10 August 2024, Ritchie made his debut in his second spell at Portsmouth against
Leeds United in a 3–3 away draw in the
Championship. On 30 November 2024, he scored his first goal for the club away to
Swansea City in a 2–2 draw. On 18 January 2025, he scored his first goal at Fratton Park, scoring a brace in a 2–1 win against
Middlesbrough. On 28 August 2025, Ritchie left Portsmouth after his contract was ended by mutual agreement.
Reading On 28 August 2025,
Reading announced the signing of Ritchie to a two-year contract following his release from
Portsmouth. ==International career==