Check your filtration system. There have been several fry that get sucked up through the pump and end up living in the filtration system. Fry in the tank can be eaten within minutes.

The other thing that can be happening is if you have a large population of males and they are fighting the female will spit out the eggs and either they will be eaten or fall to the bottom and if she doesn't pick up fairly quickly they will not develop and hatch.