With an ever-increasing number of user equipment (UE) and bandwidth demands of new applications, the deployment of dense heterogeneous cellular networks has been adopted in many network scenarios. The small cells are unable to unload the traffic due to the random UEs mobility and cells deployment. This degrades the network performance such as handover success, throughput, and load distribution. To address such a problem, we propose an enhanced mobility load-balancing algorithm for small cells. The conventional mobility load balancing (MLB) algorithms study only the fixed or adaptive thresholds of the network separately to consider the load balance process, while other MLB algorithms consider the neighboring cells of the network those experience unnecessary MLB actions. The proposed load balancing algorithms study overloaded cells and neighbors using the proposed efficiency parameter, B. To identify the overloaded cells, we propose B which compares between a pre-defined threshold and the network threshold to categorize medium and overloaded cells, based on B, the algorithm is triggered. Then, to control the shifted load to a target neighbor cell, we propose the Rescue factor, f. the f ensures the load of the target cell after handover is equal or less than Ɓ. The simulation results showed a lower standard deviation and higher throughput and physical resource block utilization than surveyed algorithms.