Convert between Daily Rate and Annual Salary based on UK working days.
Annual Salary from Daily Rate
Required Daily Rate from Target Salary
1 Day
2 Days
3 Days
4 Days
5 Days (Standard)
6 Days
7 Days
UK standard is 8
Calculation Results
Total Working Days / Year:0
Equivalent Annual Gross:£0.00
Estimated Monthly Gross:£0.00
Estimated Weekly Gross:£0.00
Understanding Daily Rates in the UK Market
For contractors, freelancers, and temporary workers in the United Kingdom, understanding the relationship between a "daily rate" and an equivalent permanent annual salary is crucial for financial planning. Unlike permanent employees, contractors generally do not receive paid sick leave, holiday pay, or pension contributions from clients. Therefore, the daily rate must be higher than a standard salary pro-rata to cover these gaps.
How to Calculate Your Required Daily Rate
To determine what daily rate you should charge to match a permanent salary (or vice versa), you must calculate the actual "billable days" in a year. A standard year has 52 weeks, but you cannot bill for every single weekday.
The standard formula used in our calculator is:
Total Weekdays: 52 weeks × 5 days = 260 days.
Bank Holidays: typically 8 days in England and Wales.
Personal Leave: Contractors typically plan for 4 to 6 weeks of holiday and potential sick leave (20-30 days).
Example: If you take 4 weeks off and observe 8 bank holidays, your billable days are: 260 – 20 – 8 = 232 days.
Factors Influencing Your Rate
When setting your UK daily rate, consider these factors:
IR35 Status: If your contract is "Inside IR35", you will be taxed as an employee (PAYE) but without employee benefits. You generally need a higher rate to offset the increased tax burden compared to operating via a Limited Company outside IR35.
Agent Fees: Recruitment agencies often take a margin of 10-20%. Ensure the rate you agree to is your "rate to contractor," not the rate the client pays the agency.
Risk Premium: Contracting involves periods of unemployment between contracts (the "bench"). Your daily rate should include a buffer to cover these unpaid periods.
Using the Calculator
This tool allows you to toggle between two modes:
Annual Salary from Daily Rate: Input your agreed daily rate to see what your gross annual income would look like based on your working schedule.
Required Daily Rate from Target Salary: Input the annual salary you want to achieve (e.g., £60,000) to find out exactly what daily rate you need to charge to hit that target, factoring in your planned holidays.
function toggleDRCMode() {
var mode = document.getElementById('drc-mode').value;
var rateContainer = document.getElementById('input-rate-container');
var salaryContainer = document.getElementById('input-salary-container');
if (mode === 'to_salary') {
rateContainer.style.display = 'block';
salaryContainer.style.display = 'none';
} else {
rateContainer.style.display = 'none';
salaryContainer.style.display = 'block';
}
// Hide results when switching modes to encourage recalculation
document.getElementById('drc-result').style.display = 'none';
}
function formatCurrency(num) {
return '£' + num.toLocaleString('en-GB', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
}
function calculateUKRate() {
// Inputs
var mode = document.getElementById('drc-mode').value;
var daysPerWeek = parseFloat(document.getElementById('drc-days-week').value);
var weeksOff = parseFloat(document.getElementById('drc-holiday').value);
var bankHolidays = parseFloat(document.getElementById('drc-bank-holiday').value);
// Validation
if (isNaN(daysPerWeek) || isNaN(weeksOff) || isNaN(bankHolidays)) {
alert("Please enter valid numbers for working days and holidays.");
return;
}
// Calculation of Billable Days
// Total weeks in a year = 52
var totalWeeks = 52;
var workingWeeks = totalWeeks – weeksOff;
// Total potential working days before bank holidays
var rawWorkingDays = workingWeeks * daysPerWeek;
// Subtract Bank Holidays
// Note: Logic assumes bank holidays fall on working days.
// For a general calculator, subtracting the input amount is standard.
var totalBillableDays = rawWorkingDays – bankHolidays;
if (totalBillableDays <= 0) {
alert("The number of holidays exceeds the working days available in a year.");
return;
}
var annualGross = 0;
var dailyRate = 0;
if (mode === 'to_salary') {
dailyRate = parseFloat(document.getElementById('drc-rate').value);
if (isNaN(dailyRate) || dailyRate < 0) {
alert("Please enter a valid daily rate.");
return;
}
annualGross = dailyRate * totalBillableDays;
// Set output label
document.getElementById('label-primary').innerText = "Equivalent Annual Gross:";
} else {
annualGross = parseFloat(document.getElementById('drc-salary').value);
if (isNaN(annualGross) || annualGross < 0) {
alert("Please enter a valid target salary.");
return;
}
dailyRate = annualGross / totalBillableDays;
// Set output label
document.getElementById('label-primary').innerText = "Required Daily Rate:";
}
// Calculate breakdown
// Weekly average (Annual / 52) – standard accounting view
var weeklyGross = annualGross / 52;
// Monthly average (Annual / 12)
var monthlyGross = annualGross / 12;
// Output Update
document.getElementById('res-days').innerText = totalBillableDays.toFixed(1) + " days";
if (mode === 'to_salary') {
document.getElementById('res-primary').innerText = formatCurrency(annualGross);
} else {
document.getElementById('res-primary').innerText = formatCurrency(dailyRate);
}
document.getElementById('res-monthly').innerText = formatCurrency(monthlyGross);
document.getElementById('res-weekly').innerText = formatCurrency(weeklyGross);
// Show result div
document.getElementById('drc-result').style.display = 'block';
}