Freelancer tips: how much should I charge as an independent web development contractor?

I left a salaried senior web engineer position in March of 2016. I wanted some time off in order to travel, relax, and enjoy hobbies. A few months later, the former employer approached me asking if I would like to return, even on my own terms. It was a great development shop, so I figured: “Why not!? Let’s work out a situation that we both can benefit from.”

I would be returning as an independent contractor, instead of a salary employee. I would be returning for only 16-30 hours a week, instead of working 40+ hours a week. The big question was, what rate should I be charging for doing the same work I was before but under different circumstances?

After hours of research, I arrived at a somewhat disappointing answer: it depends. As a contractor you will be responsible for a slew of things that your employer once took care of. Employment tax, health insurance, 401k matching, and even coffee – which I consume a ton of. Your new hourly rate should account for all of these in order to not take a pay cut through this process.

A Rough Guide

The general consensus is to apply a 1.8 to 2.5 modifier to the hourly rate you were getting paid when on salary. If you were making a salary of $100,000/year, you would take your hourly rate of $48 (100,000 / (52 (weeks in a year) * 40 (hours a week)) and then multiply it by a value between 1.8 and 2.5 to get your freelancer rate.

In the spirit of wanting to write code, here is a little widget to help you figure this out:

The Code

This is a quick straightforward angular app that you can download here.

myApp.controller('ContractorCalculatorCtrl', function($scope) {		
	//defaults
	$scope.salaryAmount = 100000;
	$scope.hourlyModifier = 2.1;
	$scope.calculatedRate = function() {
		return ($scope.salaryAmount / (52 * 40)) * $scope.hourlyModifier;
	};
});

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.