There are lots of reasons: high prices, low wages, student loan debt, government policies and more. But part of the problem may be that too many people want to live in the expensive parts of the country. The average cost of a home in Vancouver is over $700,000 in Calgary it is over $450,000 and Toronto it is over $500,000. Pretty hard to save a down payment and make mortgage payments in that environment.
There are lots of great smaller cities where home prices are far more affordable. I live in mid Vancouver Island just outside Nanaimo. Here the average single family detached home sells for around $300,000.00. Fix ups start at around $150,000, nice new homes are available for $325,000.00 and a good 3 bedroom townhouse in a great complex for under $200,000.00. Nanaimo is a beautifully situated city of around 100,000 on the sheltered side of Vancouver Island nestled between the Gulf Islands and the Island mountains. It has a great climate and lots of outdoor opportunities. Besides that small cities like ours tend to be very friendly and welcoming.
If more young people, especially creative and entrepreneurial ones were to consider locating to a small city like ours, they could still buy their own homes, raise families, find or create jobs, go to university and have a wonderful lifestyle. That would benefit both them and those of us that already live here.