How Much and How Often Should Ball Pythons Eat?

Reviewed by Dr. Rocio Villalobos, DVM

Ball Pythons tend to eat once every 7 to 21 days.

This is a huge range, so how often should you feed your ball python?

A good feeding schedule should factor in growth rate, age, size, and body condition. My feeding routine has changed throughout the years with my Ball Python, Ivy. She started on weekly hopper mice, and now at 11 years old, I feed her a medium rat (130-150 grams) every 21 days.

The correct diet is important for your snake’s health, growth, and lifespan. Keep reading as I share how often and how much ball pythons should eat.

Key Points

  • You should feed a Ball Python more frequently when it is younger and has a higher growth rate.
  • Hatchlings and juveniles should eat every 7 days, while juveniles over 6-8 months can transition to 10-day feedings. Sub-adults over 1 year can eat every 10-14 days, and snakes over 3 years old can eat every 21 days.
  • Prey should weigh 7-9% of your Ball Python’s body weight and should not be larger than the thickest part of their body.
  • Staple prey include rats and mice. Treats or occasional prey can include gerbils, quail, chicks, young rabbits, and young guinea pigs.
  • Obesity increases the risks of kidney, liver, and heart disease, so be careful not to overfeed and provide plenty of exercise opportunities.

How Often Should Ball Pythons Eat?

Feeding tips for a ball python

Hatchling Ball Pythons should be fed prey every 7 days until they are 6-8 months old. Hatchlings and juveniles have the highest growth rate, so they should eat most often.

After 6-8 months, Ball Pythons begin to thicken in the middle and are able to eat larger prey items like rats. They are still growing at a fast rate, but feeding may be tapered to every 10 days.

As your Ball Python reaches 1-1.5 years old (or over 700 grams), they should definitely be on a 10 day feeding schedule, if not every 14 days.

Typically, after 4-5 years old, your Ball Python will have reached a stable adult size. At this point, feed adult Ball Pythons larger meals every 21 days. This will help to maintain their size and good body condition. Always pay attention to your snake’s body condition. Aim for a rounded-out triangle, not a circular body shape.

Author Tip: Remember, body condition is one of the most important factors in their feeding schedule! Regular weight checks and body assessments are essential.

Weighing a ball python
I feed Ivy, my 11 year-old Ball Python, a prey item that is ~7% of her body weight every 21 days.

Feeding Chart

Ball Python Size Prey Type Prey Weight Frequency
Hatchling (<3 months) Hopper Mouse or Pinky Rat 8-12 grams 5 days
Baby (3-6 months) Small Mouse or Fuzzy Rat 13-20 grams 7 days
Juvenile (6-8 months) Adult Mouse or Rat Pup 20-35 grams 7-10 days
Juvenile (8-12 months) Adult Mice, Small Rat, Young Quail, 1-2 Week Chick or Rabbit Kit 45-80 grams 10 days
Sub-Adult (12-18 months) Adult Mice, Small-Medium Rat, Adult Quail, Gerbil, 3-4 Week Chick, 2-3 Week Rabbit or Newborn Guinea Pig 80-140 grams 10-14 days
Young Adult (1.5-3 years) Adult Mice, Small-Medium Rat, Adult Quail, Gerbil, 4 Week Chick, 2-3 Week Rabbit or Newborn Guinea Pig 90-150 grams 14 days
Adult (>3 years) Adult Mice, Small Rats, Medium-Large Rat, Adult Quail, Gerbil, 4 Week Chick, 3 Week Rabbit or Newborn Guinea Pig 120-150 grams 21 days

Feeding Schedule


The main goal with baby Ball Pythons is establishing a strong feeding response and consistent metabolism.

For hatchlings before their second shed and under three months old, hopper mice or pinky rats should be fed every five days. At this age your snake will be between 50-100 grams and should eat prey weighing 10-12% of their body weight.

As your Ball Python begins to put on weight and becomes heavier than 120 grams, larger prey between 12-20 grams can be fed every 7 days.

Hatchlings and babies grow extremely fast, doubling in size in under six months and shedding every four weeks.

Author Tip: Feed Ball Pythons under 6 months every 5-7 days. This promotes regular growth and establishes a strong feeding response for continued growth into adulthood.

Mice are great for hatchlings and smaller Ball Pythons, but juveniles will need to eat rats. Young Ball Pythons are known to be picky eaters, and some even refuse to transition from mice to rats.

To avoid hunger strikes, there are several strategies you can use.

I have always tried to alternate between mice and pinky rats to help the transition. If this doesn’t work, “scenting” rats by thawing them with mice and rubbing the mice on them to transfer the scent works well.

If you have a larger hatchling, you can always start them on pinky rats so they don’t have to experience a transition at all.

Another consideration is feeding excitement.

To feed your Ball Python, frozen-thawed prey is recommended because it reduces the chance of prey injuring your hatchling, but some snakes are less excited by frozen-thawed prey and do not have a feeding response.

Personally, I like to use long feeding tongs so my hand doesn’t show a close heat signal, and then jiggle the rat around the snake’s general area so they prepare to “ambush.” After striking and coiling the prey, I like to gently wiggle the prey to simulate a “struggle,” causing the snake to coil harder, as if it’s truly hunting.

Finally, I recommend feeding in the enclosure to reduce stress.

Ball Pythons are natural ambush predators, so removing them from their tank can cause stress and insecurity, preventing them from eating. Properly socializing your snake and approaching them in the enclosure will reduce the chance of striking when you pick them up.


For young Juveniles between 300-420 grams, feed adult mice or rat pups every 7-10 days. At this age, you should feed your ball python prey that is 8-10% of their body weight. This means adult mice or rat pups around 20-35 grams.

Juveniles between 500-900 grams, need to eat every 10 days.

Since they are starting to eat larger meals, they will require more time to fully digest and metabolize meals.

You can also start experimenting with feeding “treats” that may be higher in fat or lower in calcium than typical rats and mice. Young quail, chicks, and newborn rabbits are all good options. I recommend offering these treats no more than every five meals.

Author Tip: I have had a lot of success with feeding chicks and quail as treats to juveniles. Birds are a natural prey in the wild for young climbing Ball Pythons.

Rats and mice should remain the staple diet, but treats can be welcome additions to your feeding routine to increase enrichment.

Juveniles are Ball Pythons between 6-18 months of age and 300-1,400 grams.

Pets in the 800-1,400 gram range who are 12-18 months old are known as juvenile subadults.

Subadults have a noticeable slowdown in growth and start to take on that classic thick body type Ball Pythons are known for. Your snake will now be able to take on even larger prey items, so transitioning to feeding every 10-14 days is important to reduce the chance of obesity or power feeding.

Juveniles often have a slim body type, but will grow into the ideal range before adulthood.

Weight Bodyscore
Underweight Underweight Ball Pythons have distinct spines and a stomach groove between their ribs. Increase feedings and visit a vet for a fecal parasite exam.
Slim The Slim body type is common in young, growing individuals and males. It has a distinct spine, but is more rounded and the stomach becomes fuller between the ribs.
Ideal The ideal shape for an adult Ball Python is a rounded triangle, with a noticeable spine and thick, rounded out body. They may have slight bulging and wrinkles when coiled.
Overweight Overfeeding or certain illnesses can lead to an overweight body type. The spine becomes so rounded it loses its visibility. They will also have significant wrinkling when coiled.
Obese This body condition is so rounded that there may even be a depression over the spine where fat bulges around it. They will also have significant wrinkling and an inability to fully coil.

If your snake is losing or gaining weight without any diet changes, consult a veterinarian for help.


How much and how often ball pythons eat differs greatly as adults.

At 1.5 years old, male Ball Pythons will have reached sexual maturity and have a much slower growth rate compared to female. Females will continue to grow at a slightly faster rate and most will be preparing to reach sexual maturity by 3 years old.

For this reason, you should now feed your ball python based on sex, size and body condition.

Young adults under 4 years old can remain on a 14-day feeding schedule, though some males may need to transition to a 21-day frequency earlier if they begin to develop a circular shape.

After 4 years old, females should be transitioned to regular feedings every 21 days.

At this point, your goal should be maintenance! Prey should weigh in at 6-8% of their body weight, which is typically between 120-150 grams. Treat prey can be offered, but if it’s a larger item (e.g. small rabbit or mature guinea pig), you may want to wait 28-35 days before the next feeding.

Prey ready for feeding
Prey should weigh 6-8% of your Ball Python’s body weight.

When my Ball Python reached full-size, I was still feeding her every 10-14 days because that’s the schedule I always had. Then, she became a near perfect circle with no definition to her spine.

After a general health check with my vet, we decided to decrease her prey to every 4 weeks until she reached a healthier rounded-triangle shape.

Now, Ivy is a 1940 grams, 4.5 foot long and I maintain her by feeding every 3 weeks. I now feed her a medium rat (130-150 grams) every 21 days.

In the last three years, she’s put on 100 grams of weight and she sheds every 8-9 weeks.

Feeding tongs for a ball python

Was this article helpful?

Leave a Comment