The short answer
Project profit is what you billed minus what the project cost. Cost has three parts: freelancers and vendors, your own team's hours, and a share of overheads. Most people stop after the first part and overstate profit.
The formulas
- Direct profit = billed (excluding GST) − freelancer and vendor costs − staff time cost
- Staff time cost = hours logged × hourly cost rate
- Hourly cost rate = monthly cost of the person ÷ standard working hours in a month
- Overhead share = monthly overheads ÷ monthly billing
- Profit after overheads = direct profit − (billed × overhead share)
- Margin = profit ÷ billed × 100
Step by step
- Write down what was billed, without GST. GST is collected for the government and is not your revenue.
- Add every freelancer and vendor payment for the project, including late ones.
- Log your own team's hours and value them at a cost rate. Fifteen unlogged hours is the most common reason profit disappears.
- Subtract both from billed to get direct profit and its margin.
- Apply the overhead share to get profit after overheads.
- Use the result to price the next job. Price = cost ÷ (1 − target margin).
Worked example (sample project, illustrative numbers)
| Line | Amount |
|---|---|
| Billed to client (excluding GST) | ₹60,000 |
| Freelancer cost | −₹40,000 |
| Staff time: 22 hours × ₹500 | −₹11,000 |
| Direct profit | ₹9,000 (15%) |
| Overheads at 12% of billed | −₹7,200 |
| Profit after overheads | ₹1,800 (3%) |
To earn a 40% direct margin on the same job, price it at ₹51,000 ÷ 0.6 = ₹85,000. Loading the ₹7,200 overhead in as a cost as well raises the price to ₹58,200 ÷ 0.6 = ₹97,000.
Common mistakes
- Counting billed minus freelancer as profit.
- Leaving out internal hours spent on revision rounds and client calls.
- Including GST in revenue.
- Calculating profit once a year instead of while the job is still open.
Doing it automatically
You can keep this in a spreadsheet with one row per project. The weak point is that hours and freelancer payments must be copied in by hand. Bridge X takes the hours from timesheets and the freelancer and vendor payments from each project, and shows profit and margin per project, with profit per finished minute for minute-priced work. Overheads are applied by you on top. See the project profit tracker for video production studios, the plans that include the profit report, or import your existing tracker.
Frequently asked questions
What is the formula for project profit?
Project profit = amount billed (excluding GST) − direct costs. Direct costs are freelancer and vendor payments plus the cost of your own team's hours. Profit margin = profit ÷ amount billed × 100. Profit after overheads subtracts an overhead share as well.
How do I work out the cost of my own team's hours?
Use an hourly cost rate per person: their full monthly cost (salary plus employer costs) divided by the standard working hours in a month. Multiply by the hours they logged on the project. Bridge X uses the same approach, with either a rate you set or monthly salary divided by standard monthly hours.
What overhead percentage should I use?
Take your monthly overheads (rent, software, admin salaries, utilities) and divide by your average monthly billing. A studio spending ₹1.2 lakh a month on overheads and billing ₹10 lakh has a 12% overhead share. Use your own figures.
What margin should a video production studio aim for?
There is no single right number. Many studios use a target between 30% and 40% on direct profit. Check yours against your overheads: your margin on direct costs must at least cover the overhead share, with something left over.
How do I price a job to hit a target margin?
Price = total cost ÷ (1 − target margin). With a cost of ₹51,000 and a 40% target, the price is ₹51,000 ÷ 0.6 = ₹85,000. If you also load overheads into the cost, the price is higher.
Why is my project profit lower than I expected?
The usual causes are unlogged internal hours, extra revision rounds, freelancer costs added late and overheads left out. Logging hours on every project and recording each freelancer payment against it is what closes the gap.