Because you are usually just interested in the worst case when analyzing the performance. Thus, knowing the upper bound is sufficient. When it runs faster than expected for a given input – that is ok, it’s not the critical point. It’s mostly negligible information.

Some algorithms don’t have a tight bound at all. See quicksort for example which is

and *O*(*n*^{2})* Omega(n)*. Moreover, tight bounds are often more difficult to compute.