Swiss Freelancer vs. Employee Compensation Calculator
This script calculates the hourly rate a freelancer should charge to maintain the same living standard as a comparably compensated employee in Switzerland. The analysis accounts for differences in:
Social security contributions (AHV/IV/EO, BVG, ALV)
Insurance costs
Non-billable time
Fixed operational expenses
Risk compensation for inconsistent work
Tax implications (VAT)
Key Assumptions:
Base annual salary: CHF 110,000
Working days: 227 days per year (after vacation)
Freelancer occupancy rate: 80% (accounting for gaps between contracts)
Three productivity scenarios (low/mid/high) with different non-billable time estimates
Freelancer works primarily from home (low coworking expense)
Exact Computation
# Define base scenarioFullTimeSalary <-110000# Annual salaryWeeklyHours <-42# Define constantsWorkingDaysPerYear <-252-25# Work days minus vacation (https://www.arbeitstage.ch/EN/arbeitstage_2024.html)OccupancyRate <-0.75# Expected billable rate for freelancer# Social security rates (https://www.bsv.admin.ch/bsv/en/home/social-insurance/ahv/contributions.html)AHV_IV_EO_Rate_Employee <-0.1050# 10.5% for employeesAHV_IV_EO_Rate_SelfEmployed <-0.095# 9.5% for self-employedALV_Rate <-0.0225# 2.25% for employeesBVG_Rate_Employee <-0.09# 9% for employeesBVG_Rate_SelfEmployed <-0.13# 13% for self-employed# Insurance ratesAccidentInsurance_Employee <-130.80# Annual cost (10.90 * 12)AccidentInsurance_SelfEmployed <-130.80# Annual costSicknessInsurance_Rate <-0.015# 1.5% of salaryLiabilityInsurance_SelfEmployed <-700# Professional liability# Fixed costsCoworkingSpace <-200*12# Working primarily from homeHardwareAmortization <-2000# Computing server, notebook, monitor, printer amortizationSoftwareSubscriptions <-1200# 100 CHF per monthInternetPhone <-1800# Internet + phone + mobile internetMiscOfficeExpenses <-200*12# Office supplies, utilitiesAccountingServices <-1000# Basic accounting/tax filing assistance# Total fixed costsFixedCosts <- CoworkingSpace + HardwareAmortization + SoftwareSubscriptions + InternetPhone + MiscOfficeExpenses + AccountingServices# Additional freelancer costs - c(low, mid, high)MarketingCosts <-c(2000, 3000, 4000) # Website, networking, client acquisitionEducationCosts <-c(1500, 2000, 3000) # Courses, conferences, books# VAT rate in SwitzerlandVAT_Rate <-0.081# 8.1%# Calculate daily and annual billable hours - c(low, mid, high) productivity scenariosHoursPerDay <- WeeklyHours/5-c(1.9, 2, 2.2) # Non-billable time: breaks, admin, learningBillableHoursPerYear <- WorkingDaysPerYear * HoursPerDay# EMPLOYEE CALCULATIONS# Employee's contribution to social securityEmployeeSocialSecurity <- (AHV_IV_EO_Rate_Employee /2) * FullTimeSalary + (ALV_Rate /2) * FullTimeSalary + (BVG_Rate_Employee /2) * FullTimeSalary# Employer's contribution (social security + insurances)EmployerContribution <- (AHV_IV_EO_Rate_Employee /2) * FullTimeSalary + (ALV_Rate /2) * FullTimeSalary + (BVG_Rate_Employee /2) * FullTimeSalary + AccidentInsurance_Employee + FullTimeSalary * SicknessInsurance_Rate# Total employer costTotalEmployerCost <- FullTimeSalary + EmployerContribution# Real hourly cost to employerRealHourlyEmployeeCost <- TotalEmployerCost / BillableHoursPerYear# FREELANCER CALCULATIONS# Additional social security costs for self-employed compared to employeeFreelancerSocialSecurityDifference <- AHV_IV_EO_Rate_SelfEmployed * FullTimeSalary + BVG_Rate_SelfEmployed * FullTimeSalary - EmployeeSocialSecurity# Insurance costsFreelancerInsurance <- AccidentInsurance_SelfEmployed + FullTimeSalary * SicknessInsurance_Rate + LiabilityInsurance_SelfEmployed# Risk compensation (need higher base income to account for downtime)RiskCompensation <- (FullTimeSalary / OccupancyRate) - FullTimeSalary# Total needed income before VATTotalNeededIncome <- FullTimeSalary + FixedCosts + FreelancerSocialSecurityDifference + FreelancerInsurance + RiskCompensation + MarketingCosts + EducationCosts# Freelancer billable hours (affected by occupancy rate)FreelancerBillableHours <- BillableHoursPerYear * OccupancyRate# Required hourly rate without and with VATFreelancerHourlyRate <- TotalNeededIncome / FreelancerBillableHoursFreelancerHourlyRateWithVAT <- FreelancerHourlyRate * (1+ VAT_Rate)