The first one is that the population must have a necessary service to allow new population to move into that residence. Some examples of services are the Carpenter’s Workshop and Chapel which first appear in the early stage of the game. All services can be located in the Construction tab under the Public group at the very end of that menu.
Services do not add to income, they are just a necessary building that provides “permits” to allow new population to move into those residences. Click on any service to see the range it covers. It is wise to surround all services and marketplaces with houses to make the best use of them. Building the missing service will fix that issue.
The second major reason is that there is a missing supply material that the population needs to be fully satisfied and then would produce income for that item. If any of those materials are undersupplied, no new pop will move in until that is corrected. Usually adding one production chain for that material will resolve the problem.
Services, community, faith and entertainment all require 100% compliance while supply materials vary by population type. See Requirements Residences in ultrafine for details.
You should also check your road connections carefully to ensure that there are no missing road fragments. Holding down the spacebar while either creating or deleting roads will make buildings and trees semi-transparent which makes that task simpler.