Singh was born in India, but moved to England and attended King Edward's School, Birmingham where he played alongside Mark Wagh. He began his cricketing career at Warwickshire and represented England at U-19 level in 1994 and 1995 alongside players such as Marcus Trescothick, Michael Vaughan and Andrew Flintoff. Singh later attended the University of Cambridge and captained Cambridge University Cricket Club in 1997 and 1998, playing against opposing captain and friend Mark Wagh in the annual Oxford vs Cambridge varsity match at Lord's. He divided his time between them and Warwickshire and captained the British Universities cricket team during this period.
However, Singh struggled to live up to his initial promise, and having failed to establish himself at Warwickshire, he moved to Worcestershire in 2000 in search of new opportunities. In 2003, he was signed by Nottinghamshire as a replacement for Usman Afzaal. He was released by Nottinghamshire at the end of the 2006 season.
Singh's top score from a decade's worth of cricket is 187, and he has a career average of 32.