Why do departments fund PhD students instead of postdocs? If I'm not mistaken, most PhD students (at least in the sciences, which is the field I'm most interested in) are funded. They're provided with a stipend, and all tuition fees are waived. In other words, it's effectively a low-paying job for them. My question is, why fund PhD students instead of postdocs?

I'm dismissing the altruistic reason ("we fund PhD students as a service to the community") immediately since it doesn't make sense - presumably if someone is spending money in this fashion, they'd fund need-based scholarships. The only other reason I can think of is that the department wants something out of the PhD students - presumably research output; can't think of anything else - that they think they're getting a good deal on. 

Now according to Google, the typical PhD stipend is about $20-25k / year. Meanwhile, the typical postdoc is paid $47k / year. That means that a department can hire approximately one postdoc per two PhD students. To that we can add:


Postdocs have already been trained; PhD students are in training. Postdocs should hit the ground running while PhD students take time to get up to par.
PhD students especially in 5-year programs spend the first couple of years taking courses, i.e. not doing research work.
Postdocs can do other things like supervise Masters students that PhD students can't.
PhD students apparently have a high attrition rate, as high as 50%. Postdocs have been in the business longer, so presumably are also more aware of what they're going into.


It seems more sensible to me that departments should concentrate all funding on postdocs, and leave PhD students to pay for their own education. This is already the case for undergraduate studies. Why do departments continue to fund PhD students?
"I'm dismissing the altruistic reason"


Therein lies one of the biggest problems with your question. I work for a land-grant state university in the U.S. Our mission includes education. It's not an altruistic reason, it's literally why we exist.

The other flaw in your question is assuming that the money to hire these two groups is fungible - it isn't always. For example, there are grant programs where education of graduate students is a major component of what one is supposed to be doing - "we're going to hire a postdoc" is simply a non-alloweable use of funding.

There are some other nice features of graduate students to consider as well:


They're cheaper. While a postdoc is probably more value for complex activities, there are sometimes things that require some expertise, but not a full-blown PhDs worth. Masters and early-stage PhD students are excellent people to conduct literature reviews, field collection, etc.
You can identify promising researchers early. Lets say you see someone in undergraduate courses whose impressed you. If you only recruited postdocs, you're essentially saying "Look me up in 6 to 8 years, I'd love to work with you." If you recruit graduate students, you can usher them into their research career.
You get them for longer. Postdocs are (by and large) transient positions, and much of their time may be taken up by looking (rightly) for another position. In many labs, especially those without long-term technicians, graduate students may actually have more institutional knowledge.