Hi, welcome to the Community!
I don’t know if my scenario is anything like yours, but for the typical situation with one company running several different (and not communicated) sub-companies, I put everything in one instance of SuiteCRM, and hide each sub-company from the others using SecuritySuite settings (the security permissions system that comes with SuiteCRM).
The top managers see everything, the local managers and employees see only their records.
If this is about mixing four different “sub-companies” within a single SuiteCRM installation, I did it simply based on Security Groups permissions. I wouldn’t do it like this if they were really separate companies, I just did it because it’s four schools owned by the same people. They don’t need to see each other’s data, but they’re also not complete strangers.
The reason to be hesitant about mixing different companies is that it is too easy to leak data from one to the other. The system is not built for this, you’d have to be very careful to ensure the security permissions and views were all well separated, and this is complex, dynamic, and hard to verify.