The main difference between resource allocation, also referred to as resource loading, and resource leveling is that resource loading is the process of allocating resources to planned project activities, while resource leveling is mainly used to relate project requirements with available resources. The leveling process ensures that demand for resources does not exceed available resources at a particular time given the interdependent nature of most project activities.
An article at the Houston Chronicle indicates that resource loading is usually based on an educated guess and that the required estimates usually turn out to be either overstated or understated. Once it turns out that the allocated resources are in excess (slack), businesses can reassign the excess resources to areas that need them, which is known as resource leveling with slack. In other scenarios, the business may lack enough resources to complete the project on time despite utilizing slack and reallocating resources, in which case the business must postpone some project activities by extending the project deadline. Once some activities have been completed and their resources are free, the business can then use the freed resources to complete the remaining part of the project. In cases where the project deadline cannot be extended and the business does not have enough resources, it may be forced to borrow money to expand the resources.