Naismith was born in Paisley. A member of St Mirren's under-19 squad, Naismith made his first team debut as a substitute on 25 February 2012 against Aberdeen in the Scottish Premier League. In May 2012, Naismith was loaned out to Greenock Morton for six months. In doing so he became the first player in history to be loaned between the two rival clubs. Naismith joined Cowdenbeath for a month on loan at the end of February 2013. On 24 May 2013, it was confirmed by St Mirren that Naismith had signed a new one-year deal to keep him at the club until the end of season 2013–14. On 22 November 2013 it was announced that Naismith had signed a three-year contract extension, tying him to the club until the summer of 2017. Naismith scored his first senior goal for the club on 26 December 2013, in a 4–1 Scottish Premiership victory over Dundee United. During the 2013–14 season Jason became a regular first team player for the club, making 27 league appearances and scoring 2 goals. On 15 August 2015, Naismith suffered serious knee ligament damage in a 2–1 home defeat to Dumbarton in the Scottish Championship.
Ross County
Naismith signed for Scottish Premiership side Ross County on 18 January 2017, moving for an undisclosed fee.
Peterborough United
Naismith moved in June 2018 to EFL League One club Peterborough United, with whom he signed a three-year contract. He was loaned to Hibernian in September 2019. Naismith made 14 appearances for Hibs, but suffered a serious knee injury during a Scottish Cup match at Dundee United in January 2020. Following the formal conclusion of the truncated 2019/20 season, Naismith returned to his parent club in May 2020.
International career
Naismith has represented Scotland at under 17 level. He made his debut for the under 17s on 11 March 2011 playing the full 90 minutes against Slovakia. He was also called up to the Scotland under-18 squad in February 2012, and made his debut against Serbia in April that year. In May 2012, Naismith spent time with the Scotland U20 squad at the ADO Den Haag youth tournament in the Netherlands. He made one appearance in the competition as a substitute against ADO, but was injured and missed the remainder of the tournament. On 18 November 2014, Naismith earned his first Scotland Under–21 cap against Switzerland in a friendly match. The 20-year-old came on as a 72nd-minute substitute, replacing Marcus Fraser. The match ended in a 1–1 draw.