Differences in the diversity of fish species between granite and limestone reefs, as well as high- and low-relief limestone reefs, were investigated at Hamelin Bay, south-western Australia. It was found that there were significant differences in the presence and abundance of fish species between granite reefs and limestone reefs. Granite reefs were characterized by greater numbers of Coris auricularis (western king wrasse) and Parma mccullochi (common scalyfin), whereas limestone reefs had greater numbers of the fish species Odax cyanomelas (herring cale), Pempheris klunzingeri (rough bullseye) and Kyphosus sydneyanus (common buffalo bream). A significant difference in fish diversity was also found between high- relief and low-relief limestone reefs in the same area. More species were found on the high- relief reefs than low-relief reefs. Complementing differences in fish assemblages, significant differences were found in algal assemblages from the different habitats. This was mainly owing to a dominance of Ecklonia radiata on low-relief limestone reefs. Ecklonia radiata was less dominant on granite reefs and on high- relief limestone reefs, where there was a lower overall algal biomass and a higher total number of species.