HomeArticlesFox & Rabbits

Fox & Rabbits: Why Predator and Prey Populations Rise and Fall Out of Phase

The Lotka-Volterra equations behind every predator-prey cycle, why fox booms always lag behind rabbit booms, and what a century of real fur-trapping records confirms.

mysimulator teamUpdated June 2026≈ 7 min read▶ Open the simulation

Two populations, one feedback loop

Foxes eat rabbits. More rabbits means more food for foxes, so the fox population grows; more foxes means more rabbits get eaten, so the rabbit population shrinks; fewer rabbits means less food for foxes, so the fox population shrinks too; fewer foxes means rabbits stop getting eaten as much, so the rabbit population grows again — and the cycle repeats. This isn't a story, it's a real, measurable pattern: the classic case is the roughly decade-long boom-and-bust cycle recorded in Hudson's Bay Company snowshoe hare and lynx fur-trapping records stretching back over a century, still cited as one of ecology's cleanest real-world examples of predator-prey cycling.

live demo · rabbit and fox population counts rising and falling out of phase● LIVE

The Lotka–Volterra equations

Alfred Lotka and Vito Volterra independently derived the same pair of equations in the 1920s to describe exactly this feedback loop mathematically:

dR/dt = a*R - b*R*F      // rabbits: grow proportional to their own count,
                          // die at a rate proportional to how often they meet foxes
dF/dt = d*R*F - c*F      // foxes: grow proportional to how often they meet (and eat) rabbits,
                          // die off at a constant rate without enough food

R = rabbit population   F = fox population
a = rabbit birth rate    b = predation rate
d = fox growth-per-meal  c = fox death rate

The R*F term in both equations is the important part: it says predation happens at a rate proportional to how often rabbits and foxes actually encounter each other, which — assuming both populations mix roughly randomly through the same space — scales with the product of the two population sizes, not their sum. Double the rabbits with the same number of foxes and encounters roughly double; double both and encounters roughly quadruple.

Why the cycles are out of phase, not in sync

Solve those equations and the two populations don't peak together — they trace closed, repeating loops with the fox peak trailing the rabbit peak. Rabbits surge first because more food (each other's absence of predation pressure) lets them breed unchecked; foxes only start surging once there are enough rabbits around to actually catch and eat, so their own boom lags a season or more behind the rabbits'. By the time foxes have caught up and their numbers peak, they've usually already eaten down the rabbit surplus, causing rabbits to crash — which then, with a further lag, starves the fox population back down, closing the loop.

Why the model is idealised — and why that's still useful

Real Lotka–Volterra dynamics assume unlimited food for rabbits, no other predators or diseases, and perfectly random mixing — none of which hold exactly in nature, and the pure model's cycles are famously fragile to small parameter changes in ways real ecosystems usually aren't (the trajectories are neutrally stable closed loops, not settling toward a fixed equilibrium). Real field data, including the century-long hare-lynx records, shows the same qualitative signature — offset booms and busts with roughly the right period — even though the exact numbers never match the idealised equations perfectly. That's the value of the model: it isn't meant to predict next year's exact rabbit count, it's meant to explain why predator-prey systems oscillate out of phase at all, which was not obvious before Lotka and Volterra wrote it down.

What changing the sliders actually changes

Raising the rabbit birth rate raises how high the rabbit peaks climb before predation catches up. Raising the hunt/predation rate shortens the whole cycle's period, because foxes convert a rabbit surplus into their own population growth faster, which crashes the rabbit population sooner. Push predation too high relative to rabbit birth rate and the system doesn't cycle at all — it collapses, because foxes eat rabbits faster than rabbits can reproduce, and once rabbits are gone the fox population has nothing left to sustain it either.

Frequently asked questions

Why do fox and rabbit populations peak at different times instead of together?

Rabbits surge first because fewer predators means more of them survive to breed. Foxes only start growing once there are enough rabbits to actually catch, so the fox peak lags behind the rabbit peak — and by the time foxes catch up, they've already eaten down the surplus, crashing the rabbit population and eventually the fox population too.

Is this predator-prey cycle just a model, or has it been observed in real animals?

It's been observed — the best-known real dataset is over a century of Hudson's Bay Company snowshoe hare and lynx fur-trapping records, which show the same offset boom-and-bust pattern the Lotka-Volterra equations predict, even though real populations are messier than the idealised math.

What happens if you make the foxes hunt too effectively?

The cycle collapses instead of oscillating: if predation outpaces rabbit reproduction, the rabbit population crashes toward zero, and once rabbits are gone the fox population loses its only food source and crashes too — a reminder that a predator hunting "too well" can be as destabilising to an ecosystem as hunting too little.

Try it live

Everything above runs in your browser — open Fox & Rabbits and change the parameters while it is running. Nothing is installed, nothing is uploaded, the whole model lives in one tab.

▶ Open Fox & Rabbits simulation

What did you find?

Add reproduction steps (optional)