From a Cornish background, he was born on 26 May 1818 at Sidmouth in Devon, the son of a builder there; his mother was a daughter of Captain James Fawkner of Plymouth.
In 1868 Nicholls was appointed city librarian of Bristol.