2. By requiring users to share their wage information at signup. The idea is that to see salaries of others you need to share yours first. It’s possible to delete wage entry later, but also that makes the user lose access to others, until they either: add wage entry again or upgrade to paid account plan.
3. Yes, I agree that certain folks will have no motivation to share, because they don’t care to know what others ("below" their level) earn. What could be interesting for them is what others of the same or similar level earn. So maybe something like peer-to-peer sharing may be interesting to these folk.
4. We’re going to implement an algorithm that will try to detect "suspicious" data entries, and devise some a more advanced validation mechanism. Such entries will be hidden from other users in the meantime.
So there are two fields: core wage (this is what you get no matter what), and other benefits estimate (here you just bundle everything else, and for non-deterministic stuff, make your best estimate, of what it’s worth).
"More than 50% come from bonus or stock, or others" is actually not quite true in every culture or country. For what I’ve seen here in Germany and in few other countries, 90% or even more is the base salary.