Ontogenetic colour change is typically associated with changes in size, vulnerability or habitat, but assessment of its functional significance requires quantification of the colour signals from the receivers' perspective. The tropical python, Morelia viridis, is an ideal species to establish the functional significance of ontogenetic colour change. Neonates hatch either yellow or red and both the morphs change to green with age. Here, we show that colour change from red or yellow to green provides camouflage from visually oriented avian predators in the different habitats used by juveniles and adults. This reflects changes in foraging behaviour and vulnerability as individuals mature and provides a rare demonstration of the adaptive value of ontogenetic colour change.