Nicholson attended Penicuik High School in Midlothian and grew up supporting Heart of Midlothian.[4] He joined Hearts aged 12, progressing through their youth teams until on 31 August 2013, he made his senior debut for the club, coming on as a 74th-minute substitute in a Scottish Premiership match against Inverness Caledonian Thistle, replacing Jamie Walker in a 2–0 defeat.[5] His first senior goal for the side came on 18 January 2014, helping Hearts come from 3–1 down at McDiarmid Park scoring in the 89th minute to help Hearts earn a point in a 3–3 draw against St Johnstone.[6]
On 16 June 2014, Nicholson signed a new three-year contract extending his stay until the summer of 2017, following the club's relegation to the Scottish Championship.[7]
Nicholson began the 2014–15 season by setting up a goal for Osman Sow at Ibrox in stoppage time. He scored his first goal of the season against Hibs in the Edinburgh Derby; a solo effort after he nutmegged Scott Robertson and hit a left-footed drive beyond the keeper.
Minnesota United
On 28 June 2017, it was confirmed that Nicholson agreed to a contract with MLS side Minnesota United FC, and would be eligible to join the team on 10 July 2017.[8]
On 22 July 2020, Nicholson returned to the UK, delighted to sign for League One club Bristol Rovers.[10] He made his debut for the club on 5 September 2020, in a 3-0 League Cup defeat to Ipswich Town.[11] Nicholson scored his first goal for the club on 31 October 2020, opening the scoring in a 1–1 draw at Rochdale, driving forward with the ball before firing in from the edge of the box.[12] In late March 2021, Rovers' manager Joey Barton announced that Nicholson would miss the rest of the season as Rovers would fight against the drop, due to the fact that he was to have surgery on his hip,[13] which it was announced in April 2021 he had still yet to have had the operation and would likely miss the start of the 2021–22 season also.[14]
Nicholson opened his account for the 2021–22 season as he opened the scoring in a League Two 1–1 draw with Barrow, who had been reduced to ten men.[15] The season ended in success for Nicholson and Rovers as a 7–0 victory on the final day of the season saw Rovers move into the final automatic promotion place on goals scored.[16]
Return to Colorado
On 17 June 2022, it was announced that Nicholson had re-joined MLS side Colorado Rapids on a two-and-a-half-year deal.[17] Nicholson made his second debut for the club in a 2–2 comeback draw with Real Salt Lake.[18]
On 13 October 2023, it was announced that Nicholson had undergone ankle surgery to decompress the anterior and posterior right ankle joint, causing him to miss the final two games of the season.[19]
Nicholson was waived by Colorado on 2 January 2024.[20]
Motherwell
On 23 January 2024, Nicholson joined Scottish Premiership club Motherwell on a short-term deal until the end of the season.[21] On 31 May 2024, Motherwell announced that they had signed Nicholson to a permanent two-year contract, after he'd initially joined the club on loan from Colorado Rapids.[22]