Ball Python Feeding Chart, Tips, Schedule & Diet

Ball Pythons are important pest controllers in Africa; they feed on rats, mice, and birds. These strong snakes are ambush predators and use their colorful scale patterns to blend into their environment and ambush prey.

As pets, ball pythons feed on rodents and are happy eating either live or pre-killed prey.

But how much should you feed and how often?

Feeding charts are an essential tool for ball python owners of all experience levels. They help to understand the relationship between snake size, age and prey.

Continue reading for our complete ball python feeding guide. We share the best feeding schedules (for all age ranges), tips, and beginner mistakes to avoid.

What Do Ball Pythons Eat?

Ball Python Feeding

Ball pythons are carnivores that hunt and eat small mammals and birds. In their native range in West and Central Africa, they prefer African giant rats, black rats, grass mice, weaver birds, and rufous-nosed rats. However, their prey is not limited to these animals, they will feed on any bird or mammal small enough to be swallowed.

Like all pythons, this species is an ambush predator that sits and waits for prey to come to them.

Pythons use a combination of chemical cues, movement and vision to find prey. Once they find prey they strike and then kill them with constriction. They use their unique and irregular color patterns to help them blend in with their environment, this is one of the reasons why there are many natural ball python morphs.

Their ambush-style hunting strategy and slow metabolism let these snakes go for weeks or even months between meals.

Male and female ball pythons differ in the type of prey they eat. Males are more arboreal than females and so eat more birds than mammals. Females spend more time on the ground and subsequently eat more mammals than birds.

Unlike other pet snake species, ball pythons will not eat foods like amphibians, eggs, fish, or other reptiles.

Pet ball pythons are mostly fed domestic mice, rats and chicks.

Just as wild pythons eat a variety of prey, it is important for your pet snake to have variety too. Mice and rats are the staple of a ball python’s diet, but adding the occasional chick, quail, or young rabbit can provide enrichment.

Wild Ball Python Diet Captive Ball Python Diet
African giant rats Domestic mice
Rufous-nosed rats Domestic rats
Shaggy rats Chicks
Weaver birds Quails
Grass mice Gerbils
Shrews Rabbits

Ball pythons are able to go for long periods of time without eating. Their ability to fast helps them to survive a period of drought or incubate their eggs. However, just because these snakes can go without eating for long periods, does not mean they should.

It is your job to feed your snake prey that provides good nutrition without under or overfeeding.

The best way to make sure your python is getting the right amount to eat is to use a feeding schedule.

Sticking to a feeding schedule is important to accurately regulate your ball python’s weight.

Schedules will help to make sure that your python will not go hungry, but also lets you easily keep track of and adjust the amount you are feeding to prevent overfeeding. Knowing when your snake last ate helps alert you to any feeding abnormalities such as refusal.

Ball Python Feeding Chart

Ball Python Eating

A feeding chart for ball pythons will change as they grow and age.

Young pythons will need to eat more often than a mature male who is growing very slowly. Younger individuals need a lot of energy to put into rapid body growth. Feedings needs even differ among fully grown pythons, depending on whether or not they are gravid or getting ready to breed.

Exact feeding requirements vary between individuals, but there are guidelines for how much the average python needs to eat based on its size and age.

Snake Age Snake Weight Prey Size Frequency
Hatchling 50 – 100 g Hopper mouse or pinky rat (8-12 g) Every five days
3 months 120 – 200 g Small mouse or fuzzy rat (13-19 g) Once week
6 months 300 – 370 g Adult mouse or rat pup (20-30g) Every 7 – 10 days
1 year 500 – 900 g 1-3 adult mice or 1 small rat (45-80 g) Every 10 – 14 days
1.5 years 700 – 1500 g 3-5 adult mice, 1 medium rat, or 2 small rats (80-150 g) Every 10 – 14 days
3 years 1200 – 1800 g 4-5 adult mice, 1 medium rat, or 2 small rats (90-150 g) Every 14 – 21 days
5 years+ 1800 – 2300 g 4-5 adult mice, 1 medium rat, or 2 small rats (90-150 g) Every 21 – 50 days

The size of your python determines what size prey you should feed.

A good rule of thumb is to feed prey that are is wider than the largest part of your python’s midsection. Hatchlings can be started off with pinky mice, while adults may be able to eat large-sized rats.

Hatchlings (Baby)

Hatchling pythons grow very fast! Females can grow up to 12 inches within a year and males can grow eight inches per year. To keep up with their growth hatchlings need to eat a lot. They should be fed a hopper mouse every five days for the first four weeks of their life.

This is also the time when you should make sure their feeding response is strong and that they are able to strike at prey accurately.

Overfeeding hatchling ball pythons is not an issue because of their extremely high metabolisms.

3 Months Old

Pythons under one-year-old are considered to be juveniles. Juveniles are still growing at a tremendous rate. To sustain this growth, they need to eat a small mouse or fuzzy rat every week.

During this growth period, you may need to increase the size of your snake’s prey regularly. The prey should be no larger than the widest part of your snake’s body, this will help your snake swallow and digest the rat without problem.

6 Months Old

At six months old your python should be between 20 and 27 inches and have a good appetite. You can now offer a larger prey item over longer periods of time. One rat pup or adult mouse every ten days works well for most individuals.

1 Year Old

By now, male and female ball pythons will start to differ in size. Females grow consistently bigger than males. This size gap means that you may need to feed male and female pythons different prey. Smaller males can have 1-3 adult mice and larger females can have a rat.

You should still feed prey based on the size of your individual python.

A small, 1-year-old female may not be large enough for a rat yet, or an especially big male may swallow a rat without any trouble.

3 Years Old

At three years old a ball pythons’ growth begins to slow down significantly. It is also the age at which males reach maturity.

You can now start spacing feedings out to once every two weeks and slightly increase the prey size again. The prey should be just smaller than the size of your snake’s widest point. Larger snakes need larger prey, but less often.

Pythons at this age frequently become overweight because their owner continues to use a juvenile feeding schedule (i.e. feeding every 5-7 days). Make sure you are only feeding every two or three weeks.

5 Years Old

Both male and female ball pythons are fully mature at five years old. Interestingly, they will continue to grow gradually for the rest of their lives.

Your ball python should now be a consistent weight (unless it is being used for breeding) and your feeding schedule should not need to change. Most adults are happy with a single medium rat, two small rats, or 4-5 large adult mice every one to two months.

Breeding Females

Female ball pythons do not eat while laying and incubating eggs and their energy needs increase significantly while ovulating. Because of this, a breeding female will need to be fed lots before she lays.

Feed a gravid python a large rat once a week from when she first shows signs of ovulation until she lays. Continue to feed her for as long as she will eat to maintain that weight. This helps to build fat reserves for the time after laying when she guards the eggs. Make sure a female is at least 1,500 grams before breeding.

Breeding Males

Unlike females, breeding males only need energy for mating.

Breeding males only need a slight increase in their feeding and this will depend on how often they are used.

If you only breed a male once, he will be fine with his normal feeding schedule. If you breed him with more than two females over a span of several days or weeks, increase his meals to every 14 days during this period.

Ball Python Feeding

Ball Python Feeding on a Rat

Feeding a ball python can be done in one of two ways: by using live or pre-killed prey.

Using live prey can feel more natural to beginners, but mice and rats can cause serious harm to your python. Especially if both animals are confined together in a small space.

We highly recommend feeding your python frozen rodents.

While both methods are used by snake keepers, feeding pre-killed prey is both safer for your snake and more convenient for you.

Pre-killed prey is sold frozen in most pet stores and can simply be thawed out prior to feeding. Ball pythons are happy to eat frozen-thawed prey, but snakes that have previously eaten live prey may take some time to adjust to dead prey.

Ball pythons are nocturnal, so the best time for feeding is in the evening or just after you have turned out the lights.

How To Feed A Ball Python Frozen-Thawed Prey

  1. Five hours before feeding (2 hours for a mouse) defrost your prey/rat in the refrigerator.
  2. Alternatively, rodents can be kept overnight in the fridge to thaw prior to feeding day. Never try to defrost a frozen rat in the microwave, as it can heat unevenly or explode.
  3. After the prey is thawed, place it inside a plastic bag.
  4. Place the plastic bag in warm water and allow it to heat to about 110°F.
  5. Dry the rat.
  6. Use soft tongs to lift the rat by the tail and offer it to your snake. Tongs keep your snake from associating your hand with feeding and gives you extra room in case it misses a strike.
  7. Alternatively, you can place the warmed rodent on the floor of the tank.
  8. Remove the prey if it hasn’t been eaten in 12 hours.

How To Feed A Ball Python Live Prey

  1. Pick a rat that is smaller than your python’s widest girth.
  2. Check to make sure the rat is free from injuries and parasite.
  3. Use soft tongs to lift the rat by the tail.
  4. Open your python’s enclosure or the lid of its feeding tub and dangle the rat in front of its head. The rodent’s movements, combined with its scent, should entice your snake to strike.
  5. Never drop the rat on your snake or let it loose in your snake’s enclosure.

Tips and Mistakes

Ball Python Hunting

Ball pythons are forgiving of feeding mistakes, though you should still do your best to avoid them in the first place. Many mistakes are the result of misinformation and can be easily corrected.

Below are some of the most common ball python feeding mistakes we see in beginners.

Overfeeding

Because ball pythons are naturally heavy-bodied it can be difficult to tell if they are overweight.

Overfeeding can be avoided by sticking to a regular feeding schedule and consistently monitoring your python’s body score:

  • Healthy individuals should have a hard, fairly triangular body shape when viewed from the front. They should not have a prominent spine.
  • Obese individuals have a circular or slightly flattened body, feel soft when handled, and have fat folds around the head and cloaca.

Good management of your python’s feeding habits will help you keep your snake at a healthy weight. Not too thin and not fat.

Feeding inside the enclosure

Feeding your snake in its terrarium may not seem like a mistake, but it can cause some unintended behavioral problems.

Your ball python will quickly learn that opening the enclosure doors = feeding time.

This can cause it to strike whenever the doors are opened, even for cleaning or handling.

It is best to feed your python in a separate feeding enclosure. This can be something as simple as a plastic bin or empty fish tank, provided it is secure and large enough.

After feeding, move your snake back into its enclosure and leave it alone for up to 72 hours.

Handling After Feeding

Reptiles have slower metabolisms than mammals and take longer to digest their food.

Handling with your ball python after it eats is unpleasant and stressful for them. Interrupting can even cause regurgitation.

Make sure you give your snake plenty of privacy while it eats and digests prey.

Leave your snake alone for 72 hours after eating, or until it shows only a slight bulge. After this time, your python should be long enough into digestion that normal handling is fine.

Power feeding

Power feeding means feeding a ball python more than once a week. This is a controversial practice that is used by some ball python breeders to rapidly increase their snake’s weight.

Power feeding quickly leads to obesity and can shorten your snake’s lifespan. It should not be done.

Vitamins and Supplements

Unlike many pet reptiles, healthy ball pythons do not need additional vitamin or mineral supplements.

If you are feeding high-quality rats then all the nutrients it needs are included in its prey.

Summary

Your ball python should eat weaned mice and young rats as a juvenile, and adult rats and several mice as an adult, supplemented with the occasional chick, quail, or gerbil.

Feeding charts for ball pythons should vary based on their size, sex, and age. Of course, no chart will give you the exact requirements for your individual snake.

They should be used as a starting point based on the average weight of your snake. Tailor them to your snake based on its growth rate and size.

Have we cleared up your feeding questions? Let us know in the comments below!

About Johnathan David 255 Articles
Johnathan leads the Everything Reptiles’ editorial team as our Editor in Chief. He has been a reptile hobbyist since childhood and after years in herpetoculture he has cared for many Geckos and Frogs.

19 Comments

  1. Do many people really put their snake in a separate cage to feed them? I’ve never done that…and I’ve never had a snake mistake me for food unless I smelled like a rat or a mouse…

    • Some people will do that because snakes could be more aggressive in their natural enclosure, but it depends on the species. You don’t have to put them in a separate cage, but some owners will. I, for one, have never had problems feeding my ball python in its enclosure, and if it’s the same for you continue to do what you’re doing.

      • my snake was fed in his cage a couple of times but I immediately stopped when he got some of his bedding in his mouth.

    • I never feed my BP in a separate container. I always thaw my rats beside his enclosure so he knows he’s about to be fed. Feed him with tongs then I leave him alone for a day. The only time he has struck at me when I was drunk and dropped the rat of the tongs. Totally my fault lol. I handle him too up to an hour before I feed him as well. No issues, but then he is a big softy that likes to climb all over you for some heat.

    • I do or in a area like inside the bathtub, I used to do a big box when he was smaller.

  2. I always feed my ball python in a separate cage (a plastic bin with a mesh lid). This is the first snake I’ve owned so I read up on it and followed this advice. I feel like she knows when I put her in the bin that she’s going to be fed. She gets very still and alert with her head up. She usually strikes very soon after I hold out the mouse with the tongs.

  3. My snake came from the shop very aggressive. She would strike at anything with heat. She nipped my hand while holding tongs. So yes- very dependent on environment. Put her into a huge tank and rarely had problem since. They are gentle creatures, but if past experiences scarred them, they can be protective of their space, or aggresive(?)
    I might need to bump up her feeding

  4. I have bought a female bp and have had her 23 days I have tried everything to get her to eat but I can’t I need help I am new to snakes but am really desperate to get her to eat and stay healthy

    • Do not panic just yet. 23 days is longer than normal but it is not alarming yet. What are you feeding her?

      In captivity they usually eat rodents only. First of all, make sure they are the right size, so roughly 1.5 times the snake’s width (at its widest point). Do not go bigger, or you might cause her to regurgitate, but do not go much smaller either, because you’d have to feed her two mice, which is inefficient and more tiring for her.
      Secondly, if you have frozen mice, make sure they are fully defrosted before offering them to your snake. You might want to try live mice too, as it is more natural to the snake but be aware that this constitute a risk to the snake, since the mouse will most definitely fight back and can give your snake injuries.

  5. Wow thanks freaking pets smart told me feed em 1nce a month geez good thing incame into to this thanks soo much

    • You can feed them more often, especially younger snakes. However it is not uncommon for them to only accept food over longer periods of time and this should not alarm you.

    • Please keep in mind that one appropriately sized mouse/rat is generally more energy and space efficient for the snake to digest. However, sometimes we do need to feed multiple preys in one meal. In these cases, you just want to make sure some time passes between the two offerings. Reading your snake is key to this. Do not feed two mice simultaneously.

  6. Ball pythons should never be fed “4-5” prey. Thats a terrible idea to tell people looking for info on their snake. One appropriate sized prey is always the best course. And feedings can be done inside or out of their home enclosure. Theres no increase risk of aggression.they will realize you arent food.the only risk of in enclosure feedings is substrate in the mouth which can be avoided to a good extent by placing something in there over the substrate during feed time.

    • I have mentioned many times what you just said: one appropriately sized prey is better than more items in one go. Having said this, I encountered a lot of people who could not get a hold of large enough mice, or were not willing to, so I thought this would come in handy. Especially considering that while being a more efficient in terms of calories/space, it doesn’t mean that feeding multiple items will definitely hurt a python. It is a safe but less efficient method.

Comments are closed.