Methodology
What we store
Every answer is one row in the database. This is all of it:
- the job title from the catalogue and what the person typed themselves
- city and region
- take-home amount, currency and period (month, day, hour)
- the rate used to convert to UZS, and its date
- level, years of experience, industry, company size
- how the salary is paid and the answers about working conditions
- an irreversible hash of the IP — for spam protection only
- the date of the answer and the interface language
What we do not store
- names or any contact details
- email addresses and phone numbers
- raw IP addresses — only an irreversible keyed hash
- raw Telegram identifiers — also only a hash
- any link between an answer and a specific person
How we calculate
The median is the middle: half the people earn less, half earn more. It is more honest than the average, which a single executive salary drags upwards for everyone.
Before calculating, we drop the top and bottom 5% of values. This guards against typos and jokes: one answer with an extra zero would otherwise move the figure for everyone. The number of answers shown is the real one — we do not hide how much data there actually is.
While a slice has fewer than 5 answers, we show nothing. With two or three answers any figure is random, yet it reads as fact.
About companies
A company name is never shown next to an individual answer. A company median appears only from 25 answers up. Statements about working conditions — “they don't pay on time here” — are never published per company, at any sample size.
Open source
https://github.com/TENEr98/real_maosh
Last recalculated: 2026-07-25