"give clients access to their data" is going to be the kicker.
What kind of access, how collaborative, what level of permissions and granularity do you require, etc.
A big chunk of remote storage is one thing. But friendly UX for team and client access is another...