Because it has a shortage of lone pairs.
Actually, an ammonia molecule can form two hydrogen bonds, not one.
An important difference in terms of hydrogen bonding between ammonia,
A water molecule has two partial positive hydrogen atoms and two lone pairs of electrons located on the oxygen atom. This implies that each water molecule can potentially have both its hydrogen atoms and both its lone pairs involved in hydrogen bonding.
Now, if you assume that these water molecules can form the maximum number of hydrogen bonds at all times, then for a group of water molecules, the majority of these molecules will be involved in four hydrogen bonds.
This is not the case for ammonia.
By comparison, ammonia only has one lone pair of electrons, located on the nitrogen atom, and three partial positive hydrogen atoms.
Although this configuration can potentially lead to four hydrogen bonds being formed, that does not happen because you have a shortage of lone pairs.
For a group of ammonia molecules, there will not be enough lone pairs to form hydrogen bonds with all the three partial positive hydrogens.
In fact, if you assume that each ammonia molecule can form the maximum number of hydrogen bonds at one time, the nthe majority of ammonia molecules in this group will be involved in two hydrogen bonds, one with the lone pair on nitrogen and the other with one of the three hydrogen atoms.
Simply put, you will always have ammonia molecules that have at least two partial positive hydrogen atoms not participating in hydrogen bonding.
So, as a conclusion, the fact that ammonia has fewer lone pairs than partial positive hydrogen atoms will prevent an ammonia molecule from being able to form, on average, more than two hydrogen bonds at a particular moment in time.