The ACH system supports transfers up to $1 million. However, the highest limit I see on this list of major banks is only $25,000. Why do banks set a relatively low transfer limit? From my experience, individuals can only do ACH transfers between his/her own accounts. If I want to transfer more money than the ACH limit, I can very well write my self a check which still goes through the ACH system.
First off, ACH transfers can go from any person's account to any other person's account (well, within the US). So there is no guarantee that transfers are only going between accounts controlled by the same person.
- Fraud. If someone gets control of your bank account, it is much easier to stop or mitigate theft if they have to transfer $5,000 a day for several days in a row.
- Business accounts. Businesses regularly want to make a bunch of ACH transfers on the same day for payroll. Banks charge businesses more for business checking accounts. Making it inconvenient/ impractical to run a business out of a personal checking account makes it more likely that a small business owner goes to the effort of opening a business checking account.
For corporate customers, wires (sent through the Fed Wire system) with same day settlement are more commonly used for higher value payments, and in my experience, have no effective limit. They are inherently higher touch (operations folks can manually check for the wire), and transaction risk management groups can keep a closer eye on them. In terms of revenue for banks, they also command a fee premium over ACH.