I lived in Japan for two years and entered 6 half-marathons as an English teacher on small salary. Each race for $40-50 and came with a free t-shirt promoting the town the event took place in. Many people from the community (not just the wealthy) took part.
When I returned to America, I was excited to join races in America. Every long distance race was $100+. I haven't raced in a single half-marathon since. I can't justify spending that much money to run in the street. It turns more into an ego/selfie-experience than a celebration of running.