Work · Working in tech in Canada

Freelancing as a developer in Canada: sole proprietor or corporation, HST, and finding clients

How independent developers work in Canada: sole proprietor or corporation, the HST threshold, contracting through agencies, and winning your first clients.

Freelancing as a developer in Canada is straightforward once you understand three things: the difference between a sole proprietorship and a corporation, when the HST rules kick in, and how contracting through agencies actually works here. I run a small software practice alongside my day job, so this is the version with the paperwork included.

First: are you allowed to?

If you are a permanent resident or citizen, yes, without restriction. If you hold an open work permit, yes. If you hold an employer-specific work permit, no: your permit names one employer, and self-employment on the side breaches it. International students may do limited work under their study permit conditions, and self-employment counts toward those limits. Check your document before you sign a client. The work permit guide explains the difference between the permit types.

Sole proprietor or corporation?

Sole proprietorshipCorporation
SetupImmediate. Optionally register a business name provincially.Federal or provincial incorporation, a few hundred dollars plus annual filings.
TaxBusiness income is your personal income, taxed at your marginal rate.Corporate rate on retained earnings; you pay personal tax on what you take out as salary or dividends.
LiabilityYou personally.The corporation, in most cases.
AdminOne tax return with a business schedule.Separate corporate return, bookkeeping, payroll if you pay yourself a salary.
Client perceptionFine for small businesses.Expected by many large clients and agencies.

The rule most accountants give: incorporate when you are consistently earning well above what you need to live on, so that leaving money in the corporation at the lower rate actually saves tax, or when a client or agency requires it. Below that, a sole proprietorship is simpler and the tax difference is small or negative once you count the admin.

GST/HST: the CAD 30,000 rule

Canada's federal sales tax is GST; in Ontario it is harmonised with the provincial tax into HST at 13 percent. As a freelancer you must register and start charging it once your taxable revenue exceeds CAD 30,000 in any four consecutive calendar quarters. You can register voluntarily before that, and many developers do, because a registrant can claim back the HST paid on business expenses. Clients who are themselves registered do not care whether you charge HST; they recover it. Your invoices must show your registration number once you have one.

Services to clients outside Canada are generally zero-rated, meaning no HST is charged but you still report them. This is one of several places where an accountant earns their fee quickly.

Income tax and instalments

Nobody withholds tax from a freelancer's invoices. You owe it at filing time, and once your tax bill passes a threshold the CRA expects quarterly instalments the following year. The habit that saves people: move a fixed percentage of every payment into a separate account the day it arrives and do not touch it. Business expenses, including a home office, equipment, software, part of your phone and internet, and professional fees, are deductible against business income.

My take

Developers try to do their own books because we are comfortable with systems. Do the bookkeeping yourself if you like, with proper software, but have an accountant review it and file. The first time they tell you about a deduction or a rule you did not know existed, they have paid for themselves for the year.

How IT contracting works in Canada

Beyond freelancing for small clients, there is a large market of contract roles at banks, insurers, government and large companies, mostly filled through staffing agencies. You work full-time on one client's team for six to eighteen months at a day or hourly rate, either as an incorporated contractor invoicing the agency, or as a T4 employee of the agency placed at the client. Rates for experienced developers are typically well above the salary equivalent to offset the missing benefits, vacation and security. Most agencies require incorporation for the higher-rate arrangement, which is the most common reason developers incorporate.

Watch for the CRA's personal services business rules: a corporation with a single client that looks like employment can lose the small business tax rate. Multiple clients, your own equipment and control over how you work all help. Your accountant will know the current tests.

Finding clients as a newcomer

Freelance marketplaces are a race to the bottom and mostly not where Canadian businesses look. What works here:

  • Your first employer. Former colleagues and managers are the best source of first contracts. Leave well.
  • Local small businesses with a real problem: a clinic drowning in re-keyed bookings, a contractor quoting from spreadsheets. They do not know they need a developer; they know they have a problem. Speak to the problem.
  • Business networking, chambers of commerce, BNI-style groups and industry associations. Slow, then compounding.
  • A clear website that explains what you fix, in plain English, with real work you can show. Mine is here; every client I have found through it arrived because the page described their situation, not my stack.
  • One niche. "Developer" competes with everyone. "I automate intake for healthcare clinics" competes with almost nobody.

Contracts, deposits and ownership

Get a short written agreement for every job: scope, price, payment schedule, timeline, what the client provides, and who owns the result. Take a deposit for fixed-price work and invoice on milestones. Write down that the client owns the deliverables on final payment and that you retain the right to reuse generic components. Professional clients expect this; unprofessional ones reveal themselves by resisting it.

Uechi Labs is exactly this: a developer's practice in Toronto, built on the rules above. If you are setting up your own and want to compare notes, or you are a business that needs one, get in touch.

Questions people ask

Do I need to incorporate to freelance as a developer in Canada?

No. You can start as a sole proprietor and invoice under your own name immediately. Incorporation makes sense once your income is well above what you need to live on, when clients require it, or when you want liability separation. Many developers start as sole proprietors and incorporate later.

When do I have to charge HST as a freelancer?

Once your worldwide taxable revenue passes CAD 30,000 in any four consecutive calendar quarters you must register for GST/HST and start charging it. You can register voluntarily earlier, which lets you claim back the tax you pay on business expenses.

Can I freelance in Canada on a work permit?

It depends on the permit. Employer-specific permits tie you to one employer, so freelancing is not allowed. Open work permits and permanent residence let you work for yourself. Check your permit conditions before invoicing anyone.

How do IT contractors work in Canada?

Most contract through a staffing agency or directly with the client, either as an incorporated contractor billing a day rate or as a T4 employee of the agency. Day rates for experienced developers are typically higher than the equivalent salary, to offset the lack of benefits and vacation.

How do I find freelance clients in Canada as a newcomer?

Local small businesses, referrals from your first employer, meetups and business networking groups outpace freelance marketplaces for most Canadian developers. A clear website that explains what problem you solve, in plain English, does more work than a portfolio of code.

What I do here

I moved to Toronto and build software for a living. If you are on the same path, say hello.

Get in touch All guides