No, butterflyfish do not eat small fish. Butterflyfish are omnivores that typically eat plankton, sea anemones, algae, coral, and crustaceans. Part of caring for your pet butterflyfish means making sure that they have a balanced and varied diet.
You should feed your butterflyfish fish flakes, plankton, meaty foods, and shrimp. They need a variety of different foods to stay happy and healthy.