Johannes-fisk finnes i tempererte og tropiske farvann over hele verden.
- Atlanterhavet, fra Norge til Sør-Afrika og utenfor Nord-Amerika
- Middelhavet
- Stillehavet, utenfor Sør-Amerika og Australia
De befinner seg typisk i dypere vann fra 100 til 500 meter, og foretrekker steinagtige bunner og sandområder nær havbunnen.