Born in Wick, Gunn started his career at his hometown team, Highland League side Wick Academy. He spent just one season there and finished as the club's top scorer with 22 of the club's 42 league goals as the side finished 11th in the table. He also scored three cup goals. In the nine seasons from 1998–99 to 2006–07, Gunn was the only Wick player to get into double figures for league goals.
Ross County
After his impressive performance in the Highland League, Gunn moved to First Division side Ross County. He stayed there for five seasons, scoring only two goals in 47 league appearances. He made only two appearances for the first team in the 2004–05 season, but was used a lot more in his second season at the Stags. In the league he scored in a 2–1 loss to Gretna, and in a 4–1 win over Hamilton Academical on 13 March 2006. Gunn also scored two cup goals that season; one in the Scottish League Cup in the first round in a 4–2 win over Stranraer and one in the Scottish Challenge Cup in the 4–1 semi-final victory over Albion Rovers. In the 2007–08 season, Gunn made just nine substitute appearances and failed to score.
Peterhead
In 2008–09, Gunn was sent on loan to Second Division side Peterhead. He made an immediate impact with a hat trick on his début, as Peterhead beat Montrose 6–0 in the Challenge Cup. Gunn would score five more goals that season – four in the league and one in the Scottish League Cup.
Elgin City
Gunn was released by Ross County in the summer of 2009, and the striker signed a 12-month deal with Third Division Elgin City. Gunn was a regular scorer for the Moray side, contributing his fair share of goals. Despite Elgin finishing second bottom in his first season at the club, Gunn was top scorer for the whole division with 18 goals In the 2011–12 season, Gunn was fifth top scorer in the league with 18 goals, as Elgin finished fourth. That season Gunn was awarded the Ginger Boot for August, an award for the player who scored the most goals that month across the three SFL divisions. Gunn continued his proflic scoring for Elgin, netting 128 times in 316 appearances. After eight years with the club, he left Elgin in May 2017.