Butterflies may come to your garden if they detect the right kinds of flowers. They can do this from more than 5 miles away by smelling the air. The best candidate to plant for attracting butterflies is the butterfly bush, or Buddleja. However, it outgrows all other plants in your garden.
Dwarf hybrids can be found, though. A 90cm variety is the Blue Chip. Larger versions include B. alternifolia, which is a light purple.
You are not limited to buddleja to attract butterflies. More importantly is the timing. From March to November the butterflies search for flowers to lick nectar from. So in Spring try bluebell, aubretia, and primrose. Later in Summer you should have asters, coneflowers, and ice plants blooming.
Butterflies also like grasses and perennials in prairie gardens. So you could dedicate a small section to a meadow sowing, including the violet blossom of Verbena bonariensis.
Avoid cornflowers, which are annuals. Rather, you should purchase a sachet of mixed perennials. Scabious and knapweed are good choices in the mix. Make sure there are meadow grasses, but not many or they will take over your gardens.
To create a breeding grounds in your garden you must create the right kinds of food for the caterpillars to feed off of. Don’t worry about them eating other plants, since they only look for specific ones.
Try buckthorn, nettles, sweet rocket, bramble, and cock’s-foot or fescue. Nettles require a lot of sun, but in a protected area from the wind. Don’t hide them under another plant such as a tree. Be careful to plant all of these in a container to prevent them from destroying the rest of your garden or flowers.