Why are real life data skewed? Say we have a graph between number of people vs income. Say there is a majority of people with income 20000$ and as we go on increasing the income the number of people gets lower and lower. That means this data is positively skewed.
But what is the reason that this is positively skewed? Why are real life data skewed at all?


Symmetry is a pretty strict condition and would be very rarely the case in real data (if ever).
Even near-symmetry is not that common. Most distributions are not really close to symmetric.
The support of distributions (loosely, what values the random variable can take) is often suggestive of the likely direction of potential skewness.
There's no real upper limit on income but a pretty definite lower limit.
Income in particular can't be negative - aside some special edge cases perhaps.
It's pretty easy to find people who earn more than twice the mean (income$>μ+μ$) but not people who earn equally as far below the mean (income$<μ−μ$), so we can immediately see that if that's the case, it cannot be symmetric. Similarly you could find people who earn 3 or 4 times the mean, but not the other direction.
Many measured quantities are similar (consider weight, say), you can weigh more than twice the average but not equally as far below the mean.
Similarly with counts of events; you can't have fewer than 0 events but in many cases you can have more than twice the mean; in those cases you would expect asymmetry.
Note that many effects on expected income are more-or-less multiplicative, rather than additive (their logs are additive). The combined result of several multiplicative effects tends to produce right skew distributions.
You do see left skewness -- consider for example, scores on an easy test, where many people score close to full marks, but some people don't do all that well. Conversely, scores on a hard test might be right skew. There, considering where typical values are relative to the support gives a clue about the likely direction of skewness.
