I'd suggest that if you are building a product like this, it really needs to work on-prem. Many companies will not host this kind of critical information outside their own network.
Seems like premature optimization. One can build a huge product based on the companies that don't mind, and adapt for on-prem later depending on feedback.
You can often tell when a product has been changed to do on-prem as well as the reverse. Those traces of transition can be painful for the developers and the customers. Like the other person mentioned there's a lot you probably won't consider in terms of features or compliance if you're not building for both.
There's also ops and support. Building something meant for a dedicated team to keep running is way different from something a team will do ops for as one of many things. A complex architecture (even if contained in a single VM) requires a lot more support from more capable support people on the developer's side as well.
You have to think through a lot there. It's not something to take on without careful deliberation but if you're sure you'll eventually need to do both you should strongly consider it. If nothing else make it part of every design decision and pay attention to operational overhead by your own teams because those problems might end up being customer problems.