Kelly started playing football with his local side in Lucan, Esker Celtic where he played from under 5's age group, right up to under 14's.He then played for Lucan United from 2012 to 2014 before moving to Peamount United where he caught the eye of St Patrick's Athletic scouts.
St Patrick's Athletic
Kelly signed for St Patrick's Athletic on his 17th birthday ahead of their underage 2015 campaigns, with Kelly eligible for both the under 17 and under 19 sides. Kelly impressed for the under 19's among an excellent squad including Fuad Sule, Aidan Keena, Darragh Markey, Jamie Lennon, JJ Lunney, Rory Feely, Conor Kane and Shane Elworthy, all of whom went on to play at senior level in the League of IrelandPremier Division or abroad. His first involvement with the first team came on 16 October 2015, when manager Liam Buckley included him on the bench for a league game with Drogheda United, although he remained an unused substitute. Kelly and the under 19's were narrowly beaten by Cork City in the final of the Enda McGuill Cup on 13 September 2016. He made his first senior appearance on 25 October 2016 when he came off the bench for Ian Bermingham in the 88th minute of a 5–2 win over champions Dundalk at Richmond Park. Unfortunately for Kelly and the Pats under 19's, on 1 November 2017, they again finished up their season up as runners up in the league, as they lost 1–0 in the final to Bohemians at Dalymount Park, in what was Kelly's last game in underage football. Kelly made 2 more appearances for the first team in the 2017 season, against Firhouse Clover and Shelbourne in the Leinster Senior Cup.
Drogheda United season
With first team appearances at St Patrick's Athletic limited, it was announced on 1 January 2018 that Kelly had been persuaded to sign for Drogheda United by new manager Tim Clancy. Kelly's first career goal came on 11 March 2018, in a 6–0 win over Athlone Town at United Park on the opening night of the season. He proved to be a mainstay in the team and a key player as Drogheda had a late push in the league to finish in 4th place ahead of Longford Town to qualify for the League of Ireland Promotion Playoffs. His side beat Shelbourne over 2 legs before they were knocked out by Finn Harps despite Kelly scoring a vital goal in the first leg to give Drogs the lead. Kelly's first full season in senior football saw him make 39 appearances in all competitions, scoring seven goals from his centre back position.
Return to St Patrick's Athletic
On 20 November 2018, it was announced that Kelly had signed a contract back at St Patrick's Athletic under new manager Harry Kenny. Kelly's manager at Drogheda, Tim Clancy stated soon after his move that he would not have left the club if it had been any club other than Pat's. Kelly's first league start came against Finn Harps on 25 February 2019, with Kelly playing at left back, covering for the injured Ian Bermingham. He had to wait until the 12 April away to Cork City for his first start in his preferred centre back role and he impressed in a 1–1 draw which helped him nail down his spot in the starting 11 from there on. Kelly's first senior goal for Pats came in a 2–0 win over UCD. His first appearances in Europe came on 11 and 18 July 2019 as he played in both legs against IFK Norrköping of Sweden, as Pats lost 2–0 at home and 2–1 away with Kelly being sent off in the 89th minute after 2 yellow cards. Kelly announced on his Twitter account on 1 November 2019 that he was leaving St Patrick's Athletic following the ending of his contract.
Bohemians
Kelly was announced as a pre-season signing for Phibsborough side Bohemians before the 2020 League of Ireland campaign.
Career statistics
Professional appearances – correct as of 7 March 2020.