Staffing Agency Margin & Markup Calculator
Enter your pay rate, bill rate, and headcount to see markup %, gross margin %, and gross profit per placement, instantly. No sign-up required.
Margin & Markup Calculator
Markup
50%
(Bill − Pay) ÷ Pay
Gross Margin
33.3%
(Bill − Pay) ÷ Bill
Software cost as a share of this gross profit, on FreshStaff
1.3%
$209/mo ($149 base + 10 × $6), with $0 recruiter seat fees. Per-seat platforms add a fixed cost for every login, which eats the same margin.
How to Calculate Staffing Agency Profit Margins
A staffing agency's gross profit is the spread between what you bill the client and what you pay the worker. Two ratios describe that spread, and they are not the same number, so it's worth being precise about which one you mean.
Markup vs. gross margin
Markup % divides the spread by the pay rate:Markup % = (Bill Rate − Pay Rate) ÷ Pay Rate × 100
Gross margin % divides the same spread by the bill rate:Gross Margin % = (Bill Rate − Pay Rate) ÷ Bill Rate × 100
A worked example
Pay a worker $18/hour and bill the client $27/hour. The spread is $9/hour, which is a 50% markup ($9 ÷ $18) but a 33.3% gross margin ($9 ÷ $27). Over a 40-hour week that's $360 of gross profit per placement, or roughly $18,720 a year, before overhead.
From gross margin to net margin
Gross margin is what's left after you pay the worker. Net margin is what's left after your overhead, and software is part of that overhead. Per-seat ATS platforms charge a fixed fee for every recruiter login, so your software bill grows with your team even in a slow month. FreshStaff charges $0 per recruiter seat and only $6/month per active placement, so more of the gross profit above stays as net margin.
Frequently Asked Questions
How do you calculate staffing agency markup?
Markup is the difference between the bill rate and the pay rate, expressed as a percentage of the pay rate: markup % = (bill rate − pay rate) ÷ pay rate × 100. For example, paying a worker $18/hour and billing the client $27/hour is a $9 spread, which is a 50% markup.
What is the difference between markup and gross margin?
They use the same dollar spread but a different denominator. Markup divides the spread by the pay rate; gross margin divides it by the bill rate. A $9 spread on an $18 pay / $27 bill rate is a 50% markup but a 33.3% gross margin. Margin is always the smaller number.
How do you calculate gross profit per placement?
Multiply the hourly spread (bill rate minus pay rate) by the hours worked. At a $9/hour spread and 40 hours a week, a single placement generates $360 of gross profit per week, or about $18,720 a year before overhead.
How do software seat fees affect net margin?
Gross margin is what's left after paying the worker; net margin is what's left after your overhead, including software. Per-seat ATS platforms charge a fixed fee for every recruiter login, which comes straight out of that margin. FreshStaff charges $0 per recruiter seat and only $6/month per active placement, so more of the gross profit survives as net margin.
Keep More of Every Placement's Margin
$0 recruiter seats, $6/mo per active placement, and native gross-to-net payroll, so the spread you just calculated doesn't get eaten by per-seat software fees.