It depends partly on whether you need to process and compute on the users' data. Some companies use client-side encryption to prevent themselves from possessing usable user data in the first place. If you do need to process data server-side, it's tricky to see how you can unlock the data for processing while not exposing it to other uses. There are DRM-like approaches that attempt to use tamper-resistant hardware that is then only allowed to run certain software.
An example of this is the https://en.wikipedia.org/wiki/IBM_4758 which is pretty expensive and inconvenient to use, but can in principle be used in high-assurance applications where you want to say that the data is processed inside the 4758 but only in preapproved ways and can't be directly exported. Presumably there are somewhat cheaper ways to do this nowadays... PrivateCore was working on a way to do something along those lines on commodity hardware, but they got acquired by Facebook.