Calculate exactly what you should charge to meet your financial goals.
What you want to take home after expenses.
Software, rent, equipment, insurance.
Exclude admin, marketing, and sales time.
Time off where you aren't earning.
Self-employment tax plus income tax.
Your Required Hourly Rate
$0.00
How to Calculate a Sustainable Freelance Hourly Rate
Many freelancers make the mistake of simply choosing a rate based on what they think the market will bear. However, this often leads to burnout or financial struggle. To build a sustainable business, your rate must be calculated from the bottom up, starting with your life goals and business realities.
Key Factors in the Calculation
The "Real" Billable Hour: You cannot bill 40 hours a week. As a freelancer, you spend significant time on administrative tasks, invoicing, marketing, and professional development. Most successful freelancers find that only 20-30 hours per week are truly billable.
Overhead and Expenses: Unlike employees, you pay for your own laptop, software licenses (Adobe, Slack, Zoom), health insurance, and office space. These must be covered by your clients.
Self-Employment Tax: In many regions, you are responsible for both the employer and employee portions of social security and healthcare taxes. This can easily consume 20-35% of your gross income.
Profit vs. Salary: Your hourly rate should include a margin for profit that stays in the business for future investment or a "rainy day" fund.
Example Calculation
If you want to take home $80,000 per year, have $500 in monthly expenses, pay 25% in taxes, and want 4 weeks of vacation while billing 25 hours per week:
Adjust for taxes: You actually need to earn ~$106,666 to keep $80,000.
Add annual expenses ($6,000): Total gross revenue needed is $112,666.
It is recommended to review your rates annually. If you find that more than 80% of your leads are saying "yes" immediately to your quotes, it is a strong signal that you are priced too low for your current skill level and market demand.
function calculateFreelanceRate() {
var desiredIncome = parseFloat(document.getElementById('desiredIncome').value);
var monthlyExpenses = parseFloat(document.getElementById('monthlyExpenses').value);
var billableHours = parseFloat(document.getElementById('billableHours').value);
var vacationWeeks = parseFloat(document.getElementById('vacationWeeks').value);
var taxRate = parseFloat(document.getElementById('taxRate').value);
// Validation
if (isNaN(desiredIncome) || isNaN(monthlyExpenses) || isNaN(billableHours) || isNaN(vacationWeeks) || isNaN(taxRate)) {
alert("Please fill in all fields with valid numbers.");
return;
}
if (vacationWeeks >= 52) {
alert("Vacation weeks must be less than 52.");
return;
}
// 1. Calculate Gross Revenue needed before taxes
// Formula: Net Income / (1 – (Tax Rate / 100))
var decimalTax = taxRate / 100;
var preTaxIncomeNeeded = desiredIncome / (1 – decimalTax);
// 2. Add Annual Expenses
var annualExpenses = monthlyExpenses * 12;
var totalRevenueNeeded = preTaxIncomeNeeded + annualExpenses;
// 3. Calculate Billable Hours per Year
var workingWeeks = 52 – vacationWeeks;
var totalAnnualHours = workingWeeks * billableHours;
// 4. Calculate Final Hourly Rate
var hourlyRate = totalRevenueNeeded / totalAnnualHours;
// Display Results
var resultArea = document.getElementById('resultArea');
var hourlyResult = document.getElementById('hourlyResult');
var breakdownText = document.getElementById('breakdownText');
if (hourlyRate > 0 && isFinite(hourlyRate)) {
resultArea.style.display = 'block';
hourlyResult.innerText = '$' + hourlyRate.toFixed(2);
breakdownText.innerText = "To net $" + desiredIncome.toLocaleString() + " annually, you must generate $" + totalRevenueNeeded.toLocaleString(undefined, {maximumFractionDigits: 0}) + " in gross revenue across " + totalAnnualHours + " billable hours per year.";
// Scroll to result
resultArea.scrollIntoView({ behavior: 'smooth', block: 'nearest' });
} else {
alert("Please check your inputs. Ensure billable hours are greater than zero.");
}
}