Because nobody compares them to what happened. The project finishes, the actuals sit in timesheets, and the next estimate is produced from memory by whoever is free.
So the same optimism repeats, project after project, and the phase that always overruns always overruns.
Use completed projects' actual hours, not their original estimates. Estimates are what were wrong last time.
Estimate in ranges. A phase that has taken between forty and ninety hours across five projects is a range, and presenting it as sixty-five is a false precision that will be quoted back at you.
Actuals, always.
Estimate a spike to find out, then estimate the work.
Usually a committed date with the range held internally.
Half an hour with your own data usually saves reading three of these. The guides will still be here afterwards.