Plants for Caterpillars

To attract "flying flowers," select the right plants to feed caterpillars.

RDA, Inc./GID

One of the best ways to attract butterflies is to fill your garden with plants for caterpillars to eat. You can even combine the plants into a butterfly and caterpillar garden.

You don't need to worry that the caterpillars will destroy all your plants. That's a common misconception.

Most garden butterfly species lay only one or two eggs on each host plant before moving on to look for another plant. As a result, the caterpillars don't appear in large enough numbers to cause great harm to any single plant. In addition, very few butterflies lay their eggs in clusters, as several moths are known to do.

In fact, moth caterpillars often are responsible for the plant damage gardeners find. While some moths can be a welcome backyard addition, such as the attractive hawk moths or Saturn moths, many can be quite destructive. A good example is the eastern tent caterpillar that appears in early spring and consumes cherry tree foliage to the very last leaf.

16 Plants for Caterpillars

To attract butterflies, host plants are a good place to start. These plants provide a spot for butterflies to lay their eggs, and they also offer food for the caterpillars. Butterfly expert Tom Allen recommends the following "sweet 16" to attract some common species.

  1. Aster—Pearl crescent
  2. Everlasting—American lady
  3. Carrot—Black swallowtail
  4. Choke or black cherry—Tiger swallowtail
  5. Dill—Black swallowtail
  6. False nettle—Red admiral, eastern comma
  7. Fennel—Black swallowtail
  8. Flax—Variegated fritillary
  9. Milkweed—Monarch
  10. Pansy—Variegated fritillary
  11. Parsley—Black swallowtail
  12. Passionflower—Gulf fritillary, zebra long-wing, variegated fritillary
  13. Snapdragon—Common buckeye
  14. Toadflax—Common buckeye
  15. Violet—Most fritillaries
  16. Willow—Viceroy, western tiger swallowtail, red-spotted purple, mourning cloak