MMatt Goren
← All exotic animals
Snakes & Pythons

Ball Python Habitat Setup: The Complete Beginner's Build

By Matt Goren · Updated June 25, 2026

Most ball python problems I get asked about — won't eat, stuck sheds, sitting in the water bowl, never leaves one corner — trace straight back to the enclosure. Get the habitat right and the snake becomes the famously easygoing pet it's supposed to be. Get it wrong and you spend months troubleshooting a stressed animal. So this is the build I'd hand a beginner: the components, the numbers, and the reasoning, in the order you'd actually set them up.

Ball pythons (Python regius) come from the warm grasslands and forest edges of West and Central Africa, where they spend their days tucked into rodent burrows and termite mounds and emerge at night to hunt. That tells you the three things this build has to deliver: steady warmth, moderate humidity, and a powerful sense of being hidden. Everything below serves one of those three.

Step 1: Choose the enclosure

Size: An adult ball python is comfortable in a 40-gallon-equivalent, about 36 x 18 x 18 inches, and bigger is fine as long as you furnish it densely. Ignore the old advice that ball pythons need cramped tubs — what they need is security, and you create that with hides and clutter, not by denying them space. A bare big tank stresses them; a big tank packed with hides, branches, and cover does not.

Material: I steer beginners toward PVC or other solid-walled enclosures (front-opening models are a joy to work in). They hold heat and humidity, block sightlines on the sides so the snake feels secure, and are simply easier to keep stable. Glass tanks with screen tops work but actively fight you: heat and humidity escape through the top, and the see-through walls can leave a shy snake feeling exposed. If you use glass, plan to cover much of the screen lid to hold humidity.

Babies can start in something smaller and secure (even a properly heated tub), but there's nothing wrong with starting an adult-sized, well-cluttered enclosure from day one as long as it has plenty of hides.

Step 2: Build the heat gradient

This is the part that determines whether your snake thrives, and the rule is non-negotiable: a snake can't make its own heat, so you build a temperature range and let it choose.

  • Warm side: a basking or belly-heat surface around 88–92°F.
  • Cool side: around 78–80°F.
  • Night: don't let ambient fall below the mid-70s.

Heat sources, with how I'd prioritize them:

  • Heat mat / under-tank heater on the warm end gives belly heat that ball pythons use to digest. Good in a tub or as a supplement.
  • Radiant heat panel (RHP) mounted to the ceiling of a PVC enclosure is my favorite for adults — it warms the air and a basking zone gently and safely.
  • Deep heat / basking bulb works for ambient warmth but dries the air and shuts off at night; pair with a non-light night source if needed.

The single most important rule: every heat source runs through a thermostat. An unregulated heat mat can scorch a snake and cause serious burns; this is one of the most common preventable injuries in the hobby. A thermostat with the probe placed at the warm surface holds the temperature where you set it. And verify the actual temperatures with a separate probe (digital) thermometer — the dials and stick-on gauges that come with kits are notoriously inaccurate. A cheap infrared temp gun is great for spot-checking surfaces. The Merck Veterinary Manual covers thermal-gradient husbandry and the consequences of getting it wrong.

Step 3: Lighting and UVB

Ball pythons are crepuscular/nocturnal and don't require UVB the way a basking lizard does — generations have been kept without it. But the modern, welfare-forward approach is to offer low-level UVB because it supports natural vitamin D pathways and more normal behavior. If you add it, use a low-percentage T5 UVB bulb (a low Ferguson-zone output), mount it over a basking spot, and always provide deep shade and a hide so the snake controls its own exposure. Whether or not you run UVB, give the snake a regular day/night light cycle (roughly 12/12) for a sense of routine. Never use a bright white light 24/7.

Step 4: Humidity

Target 55–65% relative humidity, rising to 70%+ during a shed. Get this wrong in either direction and you'll see it on the snake:

  • Too dry → incomplete, stuck sheds (especially retained eye caps and tail tips) and dehydration.
  • Chronically too wet with poor airflow → scale rot and respiratory infections.

Tools to control it:

  • A water bowl large enough for the snake to soak in, placed on the cooler side (a bowl over the heat evaporates too fast and spikes humidity).
  • A moisture-holding substrate (see below).
  • Partially covering a screen top (foil tape or a panel) on glass tanks to slow evaporation.
  • Misting for a temporary bump during shed cycles — but fix ambient humidity through substrate and bowl rather than relying on misting.

Always pair humidity with ventilation. Stagnant, wet, stuffy air is what causes respiratory problems; you want humid and breathing, not swampy.

Step 5: Substrate

A good ball python substrate holds moisture, resists mold, and is safe if a little is ingested with a meal. My go-to options:

  • Coconut husk / coir — holds humidity beautifully, looks natural. My default.
  • Cypress mulch — good moisture retention, attractive.
  • Aspen — cheap and great for burrowing but dries out fast and molds when wet, so it's a poor choice if you struggle with humidity; better in dry homes with diligent spot-cleaning.

Lay it 2–3 inches deep so the snake can push into it. Avoid pine and cedar shavings — their aromatic oils are toxic to reptiles. Avoid sand for this species. Spot-clean waste promptly and do a full substrate change periodically; ammonia buildup from soiled bedding is an invisible stressor.

Step 6: Hides, water, and clutter — the security layer

This is where most beginner setups fall short, and it's the difference between a calm snake and a stressed one.

  • Two hides, minimum — one on the warm side and one on the cool side. Both should be snug, tight enough that the snake's coils touch the walls. A ball python forced to choose between a good temperature and feeling hidden will pick hidden every time, even if that means sitting somewhere too cold. Identical hides on both ends remove that trade-off.
  • A water bowl big enough to soak in, kept clean and refilled often. Occasional soaking is normal; constant soaking usually signals temps are too high, humidity is too low, or mites — investigate rather than assume it's preference.
  • Clutter: fake or sturdy live plants, cork bark, branches, leaf litter. Cover across the open floor gives the snake confidence to explore and use the whole enclosure instead of bolting between two hides. A cluttered enclosure is a used enclosure.

Step 7: Cycle, verify, then add the snake

Set the whole thing up and run it empty for a few days with the thermostat on and a hygrometer and two thermometers (warm side and cool side) in place. Adjust until the gradient and humidity hold steady on their own before the snake moves in. This is the step beginners skip and regret — you want the habitat already correct when the animal arrives, not a science experiment it has to endure.

When the snake goes in, leave it alone for about a week to settle before the first feeding and any handling. A new ball python that hides constantly and skips a meal or two is normal; a stable, correct enclosure is what lets it relax.

A common beginner trap: the bare, oversized glass tank

The setup I most often have to talk people out of is a big glass tank with a screen lid, a single hide, and a heat lamp — because it's what pet-store kits look like. On a ball python it produces a textbook stressed snake: humidity pours out the screen top (stuck sheds), the see-through walls leave it feeling exposed (constant hiding, refused meals), and an unregulated lamp dries and overheats the air. If that's what you've got, you can rescue it: cover most of the screen to hold humidity, add a second snug hide and lots of clutter for security, and put the heat on a thermostat verified with a probe thermometer. Fixing those three things turns the most common "my ball python won't eat" enclosure into a working one without buying a whole new setup.

The quick-reference setup

  • Enclosure: 40-gal+ (36 x 18 x 18 in), solid-walled PVC preferred.
  • Warm side: 88–92°F basking surface, on a thermostat.
  • Cool side: 78–80°F; night not below mid-70s.
  • Humidity: 55–65%, 70%+ in shed; ventilated.
  • Substrate: 2–3 in coconut husk or cypress mulch; never pine/cedar.
  • Hides: two snug, identical hides (warm + cool).
  • Water: soak-sized bowl, cool side, kept clean.
  • Clutter: plants, bark, branches across the floor.
  • Lighting: 12/12 cycle; optional low-level T5 UVB with shade.

Nail this build and the rest of ball python keeping gets easy. A snake in a correct enclosure eats reliably, sheds clean, and shows the calm, curious temperament that makes the species such a good first snake.

Once the habitat is dialed in, the next thing to get right is the menu — see my ball python feeding guide: what, when, and how to feed. More builds and care sheets live in the exotic-animal library.