There is described a method of balancing a multi-cell battery. An alignment distance for each cell of the multi-cell battery is determined. The alignment distance defines a change in charge quantity required to achieve a target alignment point, based on a current charge quantity of the cell. Based on the determined alignment distances, one or more unbalanced cells are identified. Each unbalanced cell is then balanced by adjusting its current charge quantity according to the alignment distances. In one embodiment, the target alignment point is a target state of charge. In another embodiment, the target alignment point is a target charge quantity.