I went through this back in the 1990's. We were paid every two weeks, but payday was on the last day of the pay period, the very same day you submitted your (paper) time card. It was great for the employee because there was no lag. From the company standpoint it was a pain. They would have to adjust their accounting because they wouldn't know how much vacation, or sick, you took until after payday. If you worked multiple projects they couldn't assign your hours until after payday.
When they decided to go to a more normal pay system where payday was a week after the end of the pay period, there were a lot of people upset. It meant that they had one check where they had to wait an extra week. For people living check-to-check that was a problem.
The company did several things to make it easier:
- They gave several months notice.
- They made sure it wouldn't change the number of checks in the year; which would have impacted 401(k), Flexible spending accounts, and insurance premiums.
- They allowed people the option of getting three weeks of pay in the first check after the switch, but then reduced the next 10 checks by 4 hours of time. Essentially they gave them an interest free loan to be paid over about 5 months.
The company argued they would save overhead because of less effort to adjust their accounting. It also conformed with how billing the government contracts had to work.
I don't think the company makes a lot of money off of holding pay for a week. Unless there is a law that mandates the check be generated sooner, I think a week lag is normal.