If you move a group of components and one or a few are already not aligned, then if your mouse is over that component, it would be aligned, but the rest would become misaligned.
This happens if you have "Wrap mouse to origins of moved objects" enabled.
Why things get misaligned in a first place - hard to tell. May be you used finer grid at the beginning or something like this.
Another options is that if you move the component by one of the pads, then with the options above, the pad would be snapped to the grid, not the component center.