Caterpillars have a diverse diet that includes leaves, flowers, bark, fruits, moss, lichen, hair, and other insects. Their diet depends on their species.
What do caterpillars drink and eat?
A caterpillar’s diet is made up of plant-based and animal-based food sources. Caterpillars can eat plants or insects (or both), depending on the species.
Furthermore, herbivores caterpillars can be generalists or specialists. The generalists eat a wide variety of plants, while the specialists only eat one type of plant.
A plant-based diet includes:
- Leaves
- Stems
- Flowers
- Fruits
Oak trees, apple trees, willow trees, and other plants are also on the menu.
Caterpillars can also eat honeycombs (Wax moths), keratin, and animal waste. Unlike other insects, caterpillars do not drink water. They get all the moisture they need from the food they eat.
1. Leaves

Leaves are a common food source for caterpillars. Most species enjoy fresh leaves but some feed on dead leaves. Some of the common leaf-eating species include:
- Beet armyworm
- Cabbage looper
- Gypsy moths
- Eastern tent caterpillars
2. Flowers

To some caterpillars, flowers are more than just pretty. They will eat the seeds, buds, and blooms of flowers. Flowers favorites for caterpillars include monkey flowers, milkweed plants, and wild lilac.
Species such as the Monarch butterfly caterpillars and the Tussock moth caterpillars are known to eat flowers. For example, the sea aster is a common delicacy.
3. Fruits

Caterpillars will eat any fruit that is soft and ripe enough for them to get inside. Some of the fruits that caterpillars eat include apples, bananas, wild black cherries, and raspberries. Species, such as the Codling moth, will devour apples and pears.
4. Bark

Some caterpillars eat tree bark by making tunnels through them. Species that eat tree bark include the Tent caterpillar and Fall webworm.
Tent caterpillars are common in early spring, while the Fall webworms appear during late summer to fall.
Some species prefer to eat bark from certain types of trees. For example, you can find the Fall webworm on oak trees.
5. Grass

The grass is a popular food source for caterpillars. Wild grasses are a favorite among many species, including Gatekeeper, Skipper, and Meadow brown.
6. Ants
Ant-munching caterpillars have a life cycle involving eating ants before becoming adult butterflies. A popular species of ant-munching larva is the Large blue butterfly caterpillar that eats red ants.
The Large blue caterpillars mimic the sounds and secrete chemicals of the ants, so the ants believe that the caterpillars are their own kind. The ants carry the caterpillar to their nest, where it feeds on the ant pupa, larvae, and ants until it is ready to pupate.
7. Moss

Moss is a live plant that grows on rocks, trees, and other surfaces. Some common species of moss-eating caterpillars are the Muslin and Scarce footman moths.
8. Hair

Caterpillars that eat hair are typical in homes. They feed on many fabric types, including carpets, furniture, and clothing. Species such as the Webbing clothes moth prefer dirty clothing and carpet made from wool.
How many times do caterpillars eat each day?
Caterpillars are eating machines. They will eat for as long as they are awake. Some can eat 20,000 times their weight during their lifetime. They are larvae, and their primary purpose at this life cycle stage is to eat and grow.
For example, the Monarch caterpillar can eat as much as 200 times its weight of milkweed in 2 weeks.
Host Plants for Caterpillars
A caterpillar host plant is a plant where the adult butterfly lays eggs. The host plant is the primary food source and safe spot for caterpillars. Some caterpillars eat only one type of plant, while others can eat many.
Some common host plants include:
Dill | dill is a plant belonging to the Apiaceae family. It is a host for Black swallowtail butterflies and Armyworms |
Parsley | parsley is another plant belonging to the Apiaceae family. It is a host plant to “Parsley caterpillars,” such as the anise and Black swallowtail caterpillars |
Oak | over 500 butterfly species feed on oak leaves. Oak leaves are favorites for Tussock moth caterpillars and Orange-striped oak worms |
Milkweed | milkweed is a member of the Asclepiadoideae family. It is a host plant for Monarch butterflies |
Common caterpillars and their host plants
Alfalfa butterfly | alfalfa, clovers, deerweed |
American lady | pearly everlasting, ironweed |
American snout | hackberry |
Anise swallowtail | parsley, anise, fennel, citrus |
Black swallowtail | dill, fennel, parsley, carrot |
Banded hairstreak | oak, walnut, hickory |
Baltimore checkerspot | turtlehead |
Cabbage white | mustard plant, collard |
California sister | oak |
Clouded sulphur | clover, alfalfa |
Common snout | hackberry |
Dotted checkerspot | Beardtongue |
Eastern comma | nettle |
Giant swallowtail | lime, citrus, hop tree, prickly ash |
Gulf fritillary | passion vine |
Marine blue | alfalfa, legume |
Mourning cloak | birch, poplar, willow |
Sulphur | clover |
Painted crescent | aster |
Pipevine swallowtail | pipevine |
Painted lady | mallow, thistle |
Question mark | hackberry, elm, willow |
Monarch | milkweed |
Red satyr | grass |
Red admiral | nettles |
Red-spotted purple | oak, birch, poplar, willow, cherry |
Sachem skipper | grass |
Satyr comma | nettle |
Spring azure | black cherry |
Tawny emperor | elm |
Viceroy | poplar, willow |
Zebra swallowtail | paw-paw |
What Do Caterpillars Eat in Captivity?
The first step to feeding a hungry caterpillar is determining its species. This will help you decide which plants to offer because some caterpillars will only munch on certain food plants.
If you don’t know what type of caterpillar you have, you can look at the area where you found it for clues. If unsure, gather different plants and offer them to the caterpillar. You can narrow down its food preferences if it eats from one plant.
Common caterpillar plants include:
- Oak leaves
- Willow
- Poplar
- Cherry
- Birch
- Apple
- Milkweed
Caterpillars’ job is to eat and grow, so you should ensure that your caterpillar has plenty of food. Check your caterpillar’s cage regularly to ensure that it has fresh leaves and remove any waste.
Caterpillars also need a clean and comfortable cage. You can make a cage using a small aquarium. Add an inch of soil at the bottom of the cage, and place a few twigs in it. Eating a lot of food results in lots of droppings, so you should clean the cage regularly.
Do all caterpillars eat plants?
Carnivorous caterpillars are rare, but they exist. The most common carnivorous caterpillar is the Dun-bar which eats leaves but can also eat other moths. Additionally, the Skin moth caterpillar eats the carcasses of birds and mice.
An animal-based caterpillar diet also includes insects such as aphids, snails, and even other caterpillars.

Tabitha is a nature lover who loves nothing more than a day spent outdoors. With her introverted personality, she often finds herself seeking solitude in the outdoors. She loves the feeling of being surrounded by nature and the peace it brings her. She also finds herself drawn to the beauty that exists in this world, whether it’s a majestic waterfall or a butterfly fluttering by.