Born in Barrow-in-Furness, Cumbria,[5] Davies signed with the youth system at Preston North End after being spotted playing for Furness Rovers aged 11.[6] He made his debut for the first team in a home 2–2 draw against Coventry City on 26 January 2013 at the age of 17 years, completing 83 minutes before being replaced by David Buchanan.[7] During the match, he provided an assist for Nicky Wroe's 60th-minute equaliser and picked up a yellow card for a foul on Cyrus Christie.[7][8] He drew praise from Preston managerGraham Westley, who likened Davies' transition into the first team to that of George Boyd at Stevenage.[8] Davies kept his place for the next match at home against Shreswbury Town.[7] His second match did not go as well as his debut, conceding a 90th-minute penalty (for which he picked up a booking), fouling Marvin Morgan in the penalty box.[7][9] He was substituted shortly after for Paul Huntington, with Preston to ultimately lose the match.[9] He signed a one-year professional contract at Preston, with an option to extend for a second year, in May 2013, after being named the club's Scholar of the Year for the 2012–13 season.[10]
Davies joined League Two club York City on 19 July 2013 on a one-month loan.[11] He made his debut in a 1–0 home win over Northampton Town on 3 August 2013, in the first match of 2013–14.[12] On 15 August 2013, his loan was extended until January 2014,[13] having appeared in York's opening two matches.[12] He played 47 times for York City as they qualified for the 2014 League Two play-offs, but lost 1–0 to Fleetwood Town in the semi-final.[14] He signed a two-year contract extension with Preston in May 2014.[15]
Davies joined Tranmere Rovers of League Two on 19 September 2014 on a one-month loan[16] and made his debut a day later in a 2–1 home defeat to Exeter City.[17] He played in four matches for Tranmere, returning to Preston once the loan ended on 22 October 2014.[18] He joined National League club Southport on 11 September 2015 on a one-month loan,[19] and made his debut a day later in a 2–1 away defeat to Forest Green Rovers.[20] Davies was recalled by Preston on 20 October 2015, to provide cover for injured defensive players,[21] having made nine appearances for Southport.[20]
On 7 January 2016, Davies joined Newport County of League Two on a one-month youth loan,[22] subsequently extended until the end of 2015–16.[23] He made 19 league appearances for Newport County.[24]
On 2 January 2017, Davies joined League One club Fleetwood Town on loan for the remainder of 2016–17.[25] He made his debut for the club on the same day, starting a 1–0 away win over Shrewsbury Town.[26] He made 22 league appearances for Fleetwood Town and scored once as they qualified for the play-offs,[27] though Fleetwood were knocked out by Bradford City in the semi-final.[28] Davies signed a new three-year contract in July 2017.[29] He signed a new three-and-a-half-year deal in March 2018.[30] Davies won Preston's Young Player of the Year award for the 2017–18 season.[31] He won Preston's Players' Player of the Year award for the 2018–19 season, as well as the Sir Tom Finney Player of the Year award.[32]
Liverpool
Davies signed for Premier League club Liverpool on 1 February 2021 on a long-term contract for an undisclosed fee,[33] reported to be an initial fee of £500,000, plus £1.1 million in performance-related add-ons.[34]Sepp van den Berg also moved in the opposite direction on loan for the rest of the season as part of the deal.[35] Davies did not make an appearance for Liverpool during the remainder of the 2020–21 season.[36] He joined newly relegated Championship club Sheffield United on 16 August on loan for the 2021–22 season.[37] He scored his first goal for Sheffield United on 23 February 2022 when he came on as a substitute and scored a late winner in a 1–0 win against Blackburn Rovers.[38]
Rangers
Davies signed for Scottish Premiership club Rangers on 19 July 2022 on a four-year contract for an undisclosed fee, reported to be an initial £3 million, potentially rising to £4 million in add-ons.[39] He made his debut for the club as a substitute against Belgian side Union Saint-Gilloise during a UEFA Champions League qualifier loss on 2 August.[40]
Davies returned to English football when he joined recently relegated League One club Birmingham City on 24 August 2024 on loan for the rest of the season.[41]
^Seddon, Dave (7 January 2016). "PNE defender joins Newport". Lancashire Evening Post. Preston. Archived from the original on 15 February 2016. Retrieved 10 March 2016.