During standard alerts, I'll have a variable five-fifteen percent of the population at idle. I mass-designate items to be dumped, though, to keep a lot of inconsistently-busy dwarves moving. It's usually easy to find a lot of something that needs to go somewhere, in my experience.
A great way to generate hauling jobs, at least, is to narrow stockpiles from general to more specific. I am very stringent with population limits — I prefer to have some infrastructure in place before the waves of unemployed arrive.
It probably depends a lot on how one prefers to allocate labors, though. I have few dedicated haulers; instead, I tend to assign a few (three-five) of the hauling categories to a dwarf, which are generally related to the field it works in. "Item" usually means less otherwise, as it is a broad category. Food, too, since I want food to get where it's going before it spoils. Burial is left for the some of the medics. Refuse is for the chronically idle. Idling becomes more of an issue when an alert is triggered, as the restriction usually means whole industries are outside the permitted burrow.
Masonry. If nothing else, block fabrication can keep quite a few of the rotters busy.