Savage started his professional career at Reading in 2002 after moving from non-League club Walton & Hersham, where, after a very promising start, he was struck by a career threatening injury that kept him out of the game for almost a year. After Reading appointed Steve Coppell as manager, Savage struggled to get a place back in the team, and was used as a utility midfielder, often playing on the right wing. Despite some good performances in 2003 (notably one against Chelsea in the League Cup) and spending a couple of sessions on loan to Bury and Wycombe Wanderers, Savage was eventually released by Reading. He then joined Forest Green Rovers on trial and impressed but rejected the chance to join Forest Green when Bristol City moved in for him.
After being courted by Coventry City, and a host of other clubs, Savage finally decided to sign for Bristol City on a short-term contract. He was soon a favourite of Gary Johnson during his time at Bristol City, and he finally quickly scored his first League goal – a header against Scunthorpe United. He soon won over the City fans, not just by scoring his first goal but with his extravagant style of play. However, he was relegated to the substitutes bench following the arrival of Mark McCammon, before finally leaving the club after being released from his contract.
On 28 September 2006, Savage signed a three-month contract with Gillingham after manager Ronnie Jepson decided they would 'have a good look at him before deciding on a long term decision'. He made his debut for Gillingham as a second-half substitute for Clint Easton in a 2–1 home win over Cheltenham Town.
His first start came in a 3–2 away win over Tranmere Rovers on 23 December. Following starts in Gillingham's following games, a Boxing Day home match against Leyton Orient where he was involved in the buildup to Gillingham's first goal, an own goal scored by Brian Saah.
Having impressed Jepson during his initial three months at Gillingham, Savage signed for a further month in late December and scored his first goal on 20 January 2007, in a 1–1 draw away to the team he made his debut against, Cheltenham Town.
On 31 January 2007, Savage was released from his deal at Gillingham after failing to agree new contract terms, and on 2 February 2007 he signed a one-year deal at Brighton & Hove Albion.
His career at Brighton got off to a flying start, with four goals in his first eight appearances for his new club. His goals for the club has meant he had doubled his goals tally with Brighton compared to what he achieved throughout his whole career combined.
It was his move to Brighton which was the catalyst for his newly found cult status. TV show Soccer AM picked up on his moonwalk goal celebrations and now broadcast every one of his moonwalk celebrations. The feature 'I wanna be like Bas Savage' is broadcast every weekend morning. He even had his own T-shirt made to highlight his goal celebration.
Savage started new contract talks with Brighton chairman Dick Knight during November 2007. Knight has been quoted as saying that he offered the player a new improved 18-month contract. It was revealed on Boxing Day 2007 that Savage had turned this deal down.
Savage signed for Millwall on 24 February 2008, on a contract that ran until the end of the season.
On 9 July 2008 Savage, along with ex-Brighton teammate George O'Callaghan, joined Tranmere Rovers on a two-year contract. He scored a goal on his début, away to Swindon Town on the opening day of the 2008–09 season. On 11 May 2010 it was announced that Bas would not be offered a new contract at Tranmere.
Ahead of the 2010–11 season, Savage was on trial with League Two side Stevenage, coming on as a substitute in the club's 0–0 draw against Norwich City. On 17 August 2010 he played as a trialist for Torquay United's reserve team, but was not signed by the club.
In September 2010 Savage signed a short-term contract with Dagenham & Redbridge, making his début on 18 September in a 3–0 home defeat by Bristol Rovers. In May 2011 Dagenham announced the release of Savage at the end of his contract.
After initially joining Northampton Town on non-contract terms, on 16 August 2011 Savage signed a five-month contract with The Cobblers. He was released after only four months at the club.
In February 2012, Savage signed a one-year contract with Thai club TOT S.C.