and two more:
The US military tends to buy things in the USA for obvious reasons. That costs more. One would expect the Chinese military to buy things made in China. That saves money, making the military effort look smaller.
The US military pays for lots of stuff that isn't really military. Consider VA hospitals for veterans. Some countries would count that sort of thing in a military budget, while others would not.