Josh Martin played for Norwich's Under-18s in their 2-0 defeat to Fulham on 23rd February 2019. He also played for them against Brighton.
He was registered with Arsenal's youth set-up since the age of 8. He is an attacking left-sided midfielder.
On 20th March 2019, he signed for Norwich. He said “I’m really happy, it’s a very big opportunity for me. I’m delighted to be here, and it’s the best move I could have had. I had been at Arsenal since I was eight, so since I was very young. I came here because they [Norwich City] are giving young players opportunities, and they are a team on the up so I think that’s the best opportunity you can get.”
On 25th January 2020 Martin was included on the bench for Norwich's fourth round FA Cup tie at Burnley which the Canaries won 2-1. Martin was included after impressing with a hat-trick in the FA Youth Cup against Newcastle.
On 29th May 2020 Martin signed a new contract keeping him at the club until 2023. Manager Daniel Farke said “I am really happy that Josh has signed a new contract. He is full of potential. He has technical and dribbling skills, makes key passes and can provide many assists and score. He’s also a very brave player with that special bit of creativity that you can’t learn. He has developed a lot during his time with us and it was no coincidence and not a gift that he was for already in the squad for our cup game at Burnley. Of course, he needs to develop and improve further on, but we will give him the time and are convinced that he can take the next steps with us.”
Josh made his Premier League debut coming on as a 89th minute substitute in the home clash with Southampton on 19th June 2020 which City lost 3-0. He made a further three appearances, all as substitute.
He made 11 appearances during the 2020/21 season as Norwich won the Championship title. Josh scored his first senior goal for Norwich in the 2-1 home win over Sheffield Wednesday on 5th December 2020, netting the equaliser in the 81st minute.
On 1st July 2021 he joined MK Dons on a season long loan to work under former Norwich captain and namesake Russell Martin. Josh said “I’m really happy to be here. This is a great club and it’s close to home for me so I can’t wait to get started. I heard a lot about Russell Martin from my time at Norwich and when I heard he and MK Dons were interested, I came down to visit. The style of play here is something that I’m used to and suits me really well, and the stadium is amazing.
Josh made 12 appearances for MK Dons before his loan was ended on 17th January 2022 and he signed instead for League One side Doncaster Rovers. He made 20 appearances for Rovers, scoring four goals but couldn't help them avoid relegation which was confirmed on 30th April 2022 with Martin scoring in a 1-1 away draw to Oxford.
On 31st August 2022 Josh joined Barnsley on a season-long loan with an option to buy.
On 5th May 2023 Norwich reported that Martin would leave the Canaries at the end of the season. He had played 16 games for Norwich, scoring once.
In October 2023 it was reported that Josh was training with Portsmouth with Pompey considering a potential dip into the free agents market amid some injuries in attack. Portsmouth said "Josh Martin has been in training with us, his girlfriend lives locally so it has been a really good opportunity for him to come in. He came in on Tuesday last week and will be with us this week as well."
Following an injury to Tino Anjorin, Portsmouth offered Martin a two month deal which he signed on 13th November 2023. Pompey boss John Mousinho said: "He's done really well with us and we know what qualities he can bring. Josh is an excellent player and actually had a couple of other options, but we're delighted that he's chosen to sign with us."
Martin made nine appearances for Pompey in the 2023/24 season as they won the League One title. On 1st May 2024 Portsmouth announced that Martin would be leaving the club.
On 27th September 2024 Josh signed for Notts County on a contract until January 2025.