Estimation is one of the most difficult activities in software development due to uncertainties and changing requirements.Accurate estimation is critical as it impacts planning and customer expectations.Using only technological skills for estimation can lead to underestimation and increased workload.The article presents 10 principles of software estimation to improve accuracy and save time.