Determining how many people can afford to buy a new home depends on how you define “afford.” Generally speaking, most home buyers are expected to dedicate about 25% of their income to mortgage payments. Lenders are reluctant to make loans to potential buyers if they think they won't be able to make the payments, so they look at the income-to-mortgage percentage carefully. This is especially true now, after the disastrous role failed mortgages played in the recent recession.
Most home ownership, historically, has been driven by the middle class. In recent decades, middle class income has been more stagnant than it used to be. At the same time, fewer of the smaller, more affordable houses are being built, as builders have focused on larger, more expensive homes.
According to the website Businessinsider.com, only about 40% of American households make enough money to handle the average mortgage on a new house (if you use the 25% ratio explained above). This number could be higher if wages had not stagnated and/or if smaller houses, with smaller price tags, were being constructed.