Instantly recognizable from the sharp, spiky quills covering their bodies, porcupines are among the largest rodents on earth. Present on every continent except Antarctica, there are 30 species of porcupines contained in two families: Hystricidae, Old World porcupines, and Erethizontidae, New World porcupines. Though there are exceptions, the vast majority of porcupine species are strict herbivores. As herbivores, porcupines eat fruits, leaves, roots, and bulbs. Their diets vary by region, species, and season, but popular staples include berries, nuts, seeds, leaves, grass, roots, and stems. Some species also feed on carrion and insects.
Where Porcupines Find Their Food

Most porcupines are herbivores, though there are exceptions.
©Dennis Laughlin/Shutterstock.com
Along with food that they find scattered on the ground, porcupines pull bark, twigs, and leaves from the lower branches of trees. Some species, especially the Cape porcupine (Hystrix africaeaustralis), may feed on dead animals that they happen upon, while others consume insects and small animals.
Seasonal Differences in the Porcupine Diet

Porcupines eat what is readily available.
©Warren Metcalf/Shutterstock.com
Most porcupine species eat foods that can be easily found on the ground or across low-lying branches. Therefore, their diets typically change with the seasons. In the winter, North American porcupines primarily eat bark from trees and evergreen needles. In North America, porcupines’ diets expand considerably in the summer to contain seeds, berries, grasses, roots, stems, and leaves.
A Complete List of Foods Porcupines Eat

Porcupines eat a wide variety of foods.
©iStock.com/Carol Gray
As previously mentioned, porcupines’ diets vary by habitat, species, and season. Below is a list of foods that porcupines commonly eat:
- evergreen needles
- seeds
- nuts
- berries
- leaves
- grasses
- twigs
- roots
- stems
- tree bark
- various fruits found on the ground
- taros
- bamboo shoots
- sugarcane
- beans
- peanuts
- sweet potatoes
- buds
- carrots
- cocoa nuts
- insects
- carrion
- animal bones
The Old World Porcupine Diet
Old World porcupines, sturdily built with rounded heads and flattened, cylindrical spines, are primarily found in Africa, Asia, and Southern Europe. Foods Old World porcupines eat vary by species.
African Bush-Tailed Porcupines (Atherurus africanus) are herbivores that eat tree bark, fruits, leaves, nodules, and bulbs. They are also known to occasionally eat dead animal carcasses they stumble upon in the wild. Asiatic Bush-Tailed Porcupines (Atherurus macrourus) are smaller than their African counterparts. They also tend to be herbivores, primarily eating bamboo shoots, taro, fruits, and vegetables. This species may also scavenge animal horns and bones. Asiatic bush-tailed porcupines also sometimes eat insects, which they dig out of hiding places.
Sumatran Porcupines (Hystrix sumatrae) are found exclusively in the tropical forests of the Sumatran Islands of Indonesia. This species eats fallen fruits, including mangoes and melons. They also eat beans, peanuts, and sugarcane, and sometimes dig up root vegetables, primarily sweet potatoes.
The New World Porcupine Diet
Large rodents with blunt noses and rounded heads, New World porcupines are found across North and South America. Long, soft hairs are interspersed between their spiky spines, helping them stand out from their Old World counterparts.
Found across North America, primarily in scrublands and forested areas, the North American Porcupine (Erethizon dorsatum) is a true herbivore. North American porcupines eat clover, evergreen needles, skunk cabbage, fruits, twigs, leaves, bark, and buds. The Mexican Dwarf Hairy Porcupine (Sphiggurus mexicanus) is found in forested mountain regions, scrublands, and rainforests across Mexico. Also strictly herbivorous, Mexican dwarf hairy porcupines primarily eat carrots, sweet potatoes, seeds, fruits, buds, and leaves.
The Bristle-Spined Porcupine (Chaetomys subspinosus) is primarily found in forested areas along the Atlantic coast of Brazil. As strict herbivores, they eat leaves, fruits, nuts, coconuts, and various other nuts.