Brown started his career at Milton Keynes Dons and joined Peterborough United at a young age, and quickly impressed within their youth ranks. Brown became a regular for the Peterborough youth sides and was rewarded with promotion to the first-team squad ahead of the 2013–14 campaign. However, following an off-the-field incident, Brown was subsequently released by Peterborough in November 2013. Following his release from Peterborough, Brown had spells at several non-league sides including Langford, Barton Rovers, Wingate & Finchley and Arlesey Town before joining Kettering Town in July 2015. Brown went onto feature nineteen times scoring just once in an FA Cup tie against Market Drayton Town. Brown went on to appear as a trialist for St Albans City during their Herts Senior Cup tie against Hitchin Town in February 2016, however, the club opted against signing the Jamaican forward.
Brown rejoined Arlesey Town, before making the switch to Northern Premier League Division One South side Stamford ahead of the 2016–17 campaign. On the opening day of the campaign, Brown made his debut for Stamford, replacing John King during their 3–1 home defeat against Witton Albion. Three days later, Brown scored both goals during their 2–1 away victory over Rugby Town, cancelling out David Kolodynski opener in the 71st minute, then sealing the win in the final seconds. Brown was part of Stamford's impressive FA Cup run, in which he netted three times in nine appearances, before they were knocked out by League Two side Hartlepool United in the first round.
Following an impressive start to the campaign with Stamford, Brown opted to join Southern Football League Premier Division side St Neots Town in late 2016. He made his debut on 2 January 2017, in their 1–0 away defeat against Dunstable Town. Brown went onto score his first goal for St Neots during their 3–2 home victory over Dorchester Town. Brown went on an impressive run towards the end of the campaign, netting eighteen times in seventeen games. Following this impressive form, Brown attracted significant interest from Football League sides including Birmingham City, Hull City and Cambridge United.
Cambridge United
Although Brown had trialled at Birmingham City, he joined League Two side Cambridge United on a two-year deal in August 2017. On 8 August 2017, Brown made his Football League debut during Cambridge's EFL Cup first round tie against Bristol Rovers, replacing David Amoo in the 4–1 away defeat. On 21 October 2017, Brown scored his first Football League goal during Cambridge's 2–1 home victory over Chesterfield, netting United's equaliser in the 70th minute.
Colchester United
On 4 July 2019, Brown signed for Cambridge's League Two rivals Colchester United on a two-year contract for an undisclosed fee. He made his club debut on 3 August in Colchester's 1–1 home draw with Port Vale. On 4 January 2020, Brown joined Colchster's League Two rivals Forest Green Rovers on loan for the remainder of the season. He made his debut for the club the same day in a 1–1 draw with Crawley Town.