The time between laying and hatching of fish eggs varies by the species of fish and the temperature of the water. Goldfish eggs hatch two to seven days after being laid. Rainbow trout eggs can take one to five months to hatch.

Long incubation periods can be hazardous to eggs because many creatures like to eat fish eggs. Fish use various strategies to reduce the number of eggs eaten. Some fish, such as rainbow trout, bury their eggs in an effort to hide them. Other fish, such as walleye, simply produce large numbers of eggs. Other fish attempt to guard their eggs. For example, the various species of mouth-brooder fish hold the eggs in their mouths until they hatch.