Phosphofructokinase from Bacillus stearothermophilus shows cooperative kinetics with respect to the substrate fructose-6-phosphate (F6P), allosteric activation by ADP, and inhibition by phosphoenolpyruvate. The crystal structure of the active conformation of the enzyme has been solved to 2.4 A resolution, and three ligand-binding sites have been located. Two of these form the active site and bind the substrates F6P and ATP. The third site binds both allosteric activator and inhibitor. The complex of the enzyme with F6P and ADP has been partly refined at 2.4 A resolution, and a model of ATP has been built into the active site by using the refined model of ADP and a 6 A resolution map of bound 5'-adenylylimidodiphosphate (AMPPNP). The <latex>$\gamma$</latex>-phosphate of ATP is close to the 1-hydroxyl of F6P, in a suitable position for in-line phosphoryl transfer. The binding of the phosphate of F6P involves two arginines from a neighbouring subunit in the tetramer, which suggests that a rearrangement of the subunits could explain the cooperativity of substrate binding. The activator ADP is also bound by residues from two subunits.