But understand what you are doing: you are adding noise to individual's data to make them less identifiable within a specified set of data. The amount of noise you need to add depends on the size of the set they are within.
The OP is also right: For arbitrary customer data (within arbitrary sets of data) you can't guarantee anonymization.
There are also multi-party computation systems, homomorphic encryption and federated learning approaches that all provide different approaches for parts of the private machine learning problem.
It's hard.
https://en.wikipedia.org/wiki/K-anonymity
k-anonymity is an attempt to solve the problem "Given person-specific field-structured data, produce a release of the data with scientific guarantees that the individuals who are the subjects of the data cannot be re-identified while the data remain practically useful."
One serious problem with that approach is that no matter how well you k-anonymise your data set, someone else's dataset may deanonymise yours.