For a system to be causal, number of finite zeros <= number of finite poles. Why?
If the number of finite zeros is not greater than the number of finite poles then the transfer function is proper, i.e., the degree of the numerator polynomial is not greater than the degree of the denominator polynomial.

If the degree of the numerator polynomial were greater than the degree of the denominator polynomial, we would get at least one pole at infinity. This violates the requirement that a causal and stable system must have all its poles in the left half-plane (for continuous-time systems), or inside the unit circle (for discrete-time systems). Consequently, a causal and stable system must have a proper transfer function. This is true in continuous time as well as in discrete time.

These two answers are related: answer 1, answer 2