How to Calculate Your Daily Rate

Daily Rate Calculator

Determine your freelance or contractor service rate

Subtract vacation and sick days from 52
Exclude admin and marketing days
Your Recommended Daily Rate
$0.00
Hourly Equivalent: $0.00 (8hr day)

Total Annual Revenue Needed:

Total Billable Days Per Year:


How to Calculate Your Daily Rate as a Freelancer

Setting your daily rate is one of the most critical steps in running a successful service-based business. Unlike a traditional salary, your daily rate must cover more than just your take-home pay; it needs to account for taxes, insurance, software, marketing, and the days you spend working "on" your business rather than "in" it.

1. The "Top-Down" Strategy

The most effective way to calculate your rate is the top-down approach. You start with your desired lifestyle and working preferences and work backward to find the minimum price you must charge to sustain that lifestyle.

2. Account for Billable vs. Non-Billable Time

A common mistake is assuming you will work 52 weeks a year, 5 days a week. In reality:

  • Public Holidays & Vacation: Usually 3 to 5 weeks.
  • Sick Leave: Plan for at least 5-10 days.
  • Admin/Marketing: Most freelancers spend 20% of their week on bookkeeping, pitching, and professional development.

3. The Mathematics of Your Rate

The formula used by our calculator is:

Daily Rate = (Target Income + Business Expenses) / (Billable Weeks × Billable Days)

Example Calculation

If you want to earn $90,000 a year and your business expenses (laptop, coffee, insurance, software) total $10,000, you need a gross revenue of $100,000.

If you take 4 weeks of vacation and work 4 billable days per week (using the 5th for admin), you have 48 weeks × 4 days = 192 billable days.

$100,000 / 192 days = $520.83 per day.

Don't Forget Taxes

The "Target Income" you enter should be your pre-tax desired salary. Remember that as a self-employed professional, you are responsible for both the employer and employee portions of social security or national insurance, depending on your jurisdiction.

function calculateDailyRate() { var targetIncome = parseFloat(document.getElementById('targetIncome').value); var overhead = parseFloat(document.getElementById('overheadCosts').value); var weeks = parseFloat(document.getElementById('billableWeeks').value); var days = parseFloat(document.getElementById('billableDays').value); var resultDiv = document.getElementById('rateResult'); var dailyOutput = document.getElementById('dailyOutput'); var hourlyOutput = document.getElementById('hourlyOutput'); var annualRevenueOutput = document.getElementById('annualRevenue'); var totalDaysOutput = document.getElementById('totalDays'); if (isNaN(targetIncome) || isNaN(overhead) || isNaN(weeks) || isNaN(days) || weeks <= 0 || days <= 0) { alert("Please enter valid positive numbers for all fields."); return; } var totalRevenueNeeded = targetIncome + overhead; var totalBillableDays = weeks * days; var dailyRate = totalRevenueNeeded / totalBillableDays; var hourlyEquivalent = dailyRate / 8; // Display formatting dailyOutput.innerHTML = "$" + dailyRate.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); hourlyOutput.innerHTML = "Hourly Equivalent: $" + hourlyEquivalent.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " (Based on 8hr day)"; annualRevenueOutput.innerHTML = "$" + totalRevenueNeeded.toLocaleString(); totalDaysOutput.innerHTML = totalBillableDays + " days per year"; resultDiv.style.display = 'block'; // Smooth scroll to result resultDiv.scrollIntoView({ behavior: 'smooth', block: 'nearest' }); }

Leave a Comment