Wrong range estimation and wrong wind compensation are the two main factors that explain most of the misses.
Wind pushes bullets off target.
The solution is to aim off target to compensate. This can be done by either literally aiming off target, or using the dials on the scope to compensate (preferred method).
Beware, wind is not always constant from you to the target...
If you know by how much your bullet will move, you can use this to go around obstacles! But that is a stunt shot. Move around the obstacle unless there is no other possibility.
A dead on wind also affects the trajectory of the bullet. It will push it low.
A back wind will push the bullet high.