Attracting Butterflies: 11 Must-Have Host Plants

Need help attracting butterflies to your yard? National Wildlife Federation expert David Mizejewski unveils butterfly host plants you want in your garden.

Everyone loves butterflies. Just seeing these colorful winged insects flitting about the garden is enough to brighten anyone’s day. You can definitely attract these beauties by filling your garden with nectar-rich blooms, but that’s just the beginning!

Butterflies do most of their eating during their larval phase as caterpillars, feeding exclusively on the leaves of host plants specific to their species. As adults, female butterflies spend as much time eating as searching for those host plants where they can lay their eggs.

If you put these two things together, it means you’ll have the most success attracting butterflies by planting both flowers that provide nectar for adults and host plants for their caterpillars.

Focus on Natives

The relationship between butterflies and host plants is one reason having native plants in your garden is so important. How does it work? It’s a process that has happened over tens of thousands of years. As a defense against hungry wildlife, including caterpillars, plants have evolved to harbor a host of chemical toxins in their leaves. In response, each butterfly species has evolved to be resistant to the toxins of just a small number of plants so their caterpillars have something to feed on.

So how does that relate to native plants? Few native butterfly species use exotic plants as their hosts. They haven’t evolved together, so the caterpillars have no resistance to the toxins in the exotics’ leaves. As we continue to replace native vegetation with lawns and exotic ornamental plants, we often remove the only food source for butterfly caterpillars and dramatically decrease their populations—and, of course, our chances of attracting butterflies to our gardens.

Plant Milkweed

The good news is that including host plants in your garden is easy. Take a look at our list (right) of the best native wildflowers, trees and shrubs to beautify your garden and support the largest number of butterfly species by serving as caterpillar host plants.

The last one on the list is important. Milkweed (Asclepias) is the only host plant of the monarch butterfly. Populations of these winged jewels and their striped caterpillars are plummeting, largely because of the eradication of milkweed. So planting milkweed in your garden can make a big difference for monarchs.

Attracting Butterflies: 11 Must-Have Host Plantspicsbyst/
picsbyst/ Sunflowers attract several species, including checkerspots and painted ladies.


Aster (Aster)
Birch (Betula)
Sunflower (Helianthus)
Lupine (Lupinus)
Crabapple (Malus)
Poplar (Ponulus)
Cherry (Prunus)
Oak (Quercus)
Willow (Salix)
Goldenrod (Solidago)
Milkweed (Asclepias)

David Mizejewski
David Mizejewski is a naturalist with the National Wildlife Federation.