Freelancer, contractor, or consultant?

“So what do I call myself when I go self-employed? I see people refer to independent developers as freelancers, contractors, and consultants, and it’s unclear what the difference is…”

They are not mutually exclusive words. Let’s first attempt to define the different terms.



A contractor builds things for others. For software developers, this means you show up to write software as specified by the client.


In this case, you’re paid not just for producing but also—or mainly—for advising the client. 

As a software developer, this may mean that you help them make tradeoffs between different solutions, that you translate business requirements into technical solutions, and so on. 

Consultants are further up the value chain than a pure contractor, so their rates can be higher—but there’s a gradual sliding scale between a pure contractor role and the pure consultant role.


The umbrella term for “self-employed software engineer who sells their services to others.” 

Contractors and consultants can be freelancers, but only if they are self-employed— many contractors and consultants are salaried employees working for consulting agencies.

Term confusion!

When I write about related topics, I often word myself like this: “[…] as a freelancer, contractor or consultant […]” 

I do this because the terms are used interchangeably and often imprecisely. 

Sometimes, people do this by choice. Contractor (and freelancer) is sometimes considered a “cheap-sounding” title. Consulting is the more “high-end” moniker, so every agency calls themselves a consulting agencyeven though their business model often boils down to renting out mostly junior contractors!

Different places have different naming standards, too. For instance, in Norway, most software developers building anything for others is always called a consultant by default. You may see different naming standards in your region or sector.

Finally, the three words are usually not legal terms. But this, too, may differ in your region. For instance, the United States has the term 1099 Contractor to differentiate independent contractors from salaried employees (for legal and tax purposes).

Words are important!

Keep the sender in mind when you take advice.

Remember: a fully remote junior part-time freelancer will give you different tips and opinions than a senior full-time consultant working in client offices. Their tools, tactics, and daily life are different.

I’m a freelancer contracting and consulting for local and regional customers hourly, and I serve one client at a time—often on-site a few times a week. Thus, I’m probably not the first guy you ask for advice for doing fully remote, fixed-scope projects on Upwork and Toptal! 🙂