We tracked the long-term movements of 70 parrotfishes, surgeonfishes and goatfishes captured inside a small (1.3 km2) marine protected area (MPA: Kealakekua Bay Marine Life Conservation District, Hawaii) by implanting them with small transmitters and deploying underwater monitoring devices inside the bay and along 100 km of the adjacent west Hawaii coastline. Individual fish were detected inside Kealakekua Bay for up to 612 days but many were detected for much shorter periods (median = 52 days). There were species-specific differences in the scale of movements and habitats used, but most fish utilized between 0.2 and 1.6 km of coastline, and individuals of each species showed some degree of diel habitat shift. A wide variety of reef fishes captured inside the MPA swam back and forth across an MPA boundary intersecting continuous reef (i.e., this boundary was porous to reef fish movements), but only 1 of 11 species tagged crossed a wide sandy channel inside Kealakekua Bay suggesting that this feature may function as a natural barrier to movements. Results indicate relatively small MPAs (<2 km of coastline) could provide effective, long-term protection for multi-species assemblages of reef fishes provided that boundaries are situated along major habitat breaks (e.g., large sand channels between reefs) that may serve as natural barriers to reef fish movements. It is crucial that a multi-species approach be used when assessing MPA effectiveness.