For a permanent position the recruiters get from the employer one time fee. For a contract position is different - they get an extra on every hour you get paid. If you make $20 per hour, they probably get another $10 overhead. But most of the jobs are through recruiters any way