The speckled shrimpfish is native to the coast of East Africa and the western Indian Ocean. Its range extends from Algoa Bay, South Africa to Madagascar, the Red Sea, the Persian Gulf, the Seychelles and the Maldive Islands. It is found intertidally on sandy flats and in seagrass meadows down to a depth of about .
