Freelancer or Agency - Who Should Build Your Online Store
Let me start by admitting I'm a party in this dispute. I make my living building websites and online stores as a freelancer, so you have every right to read this text with suspicion. Almost every "freelancer vs agency" article on the internet was written by an agency, and almost every one ends with the conclusion that an agency is the safer bet. This one ends differently - but not the way you probably expect. I won't be arguing that a freelancer is better. I'll show you where the money and the risk sit in both models, and tell you plainly in which situations I refer clients to agencies myself.

The short answer (for the impatient)
The legal form of your contractor is a weak selection criterion. An agency can be one person with subcontractors, and a freelancer can be a team. Three things actually matter: who specifically will write your code, what happens when that person stops being available, and whether you get the code together with the rights to it once the project ends. The answers to those three questions settle more than the choice of model ever will.
If you need it in one sentence: a small or medium project with no need for marketing services bundled in is usually freelancer territory; a project that needs several competencies at once, formal procedures and continuity independent of any single person is agency territory.
Why the question itself is wrong
"Agency or freelancer" sounds like a choice between two different products. In reality it's a choice between two legal forms of running a business, and each hides radically different working models.
Behind an agency sign there may be a dozen people under one roof, with in-house developers and a design department. But there may just as well be two salespeople and a network of subcontractors you'll never meet. I'm not judging that model - it's normal in this industry. You just need to know that when you buy "an agency", you sometimes buy exactly that variant. Behind a freelancer sign there may be one person doing everything from code to invoices, but also someone with a network of regular collaborators who simply never registered a company.
I know how this looks from the inside. I've worked as a subcontractor for four agencies - I built websites and graphics for them, and roughly 20 percent of what the client paid the agency reached me. The client never heard my name. The remaining 80 percent doesn't vanish into anyone's pocket: it goes to sales, client service, project management, coordination, the warranty and risk the agency carries, and its fixed costs. That's not theft, that's a cost structure. The point is you should know it exists before you compare two quotes: you're paying for coordination, and that can be a fair price - but only if you actually need it. One caveat: this is my experience with four agencies, not a market average. The proportions vary.
That's why "freelancer or agency" has about as much to do with the quality of your future store as "limited company or sole trader". The right question is: how many layers sit between you and the person writing the code, what do those layers do for you, and can you talk to that person.
What you pay for in each model
The differences between an agency and a freelancer show up most clearly in the price structure, not in a pros-and-cons list. Two symmetrical descriptions, no scoring.
Agency
The price includes a team with divided roles, a project manager as your single point of contact, procedures, replaceability of people, an invoice from a company with a track record, and often services beyond the code itself: SEO, campaigns, content, design, product photography. What pushes the price up is that more people work on the project than the ones writing the code, plus fixed costs: office, salaries, sales, marketing.
In Polish industry roundups, agency hourly rates usually sit in the €60-160 range and freelancer rates in the €32-100 range, depending on experience - see for example this pricing overview for 2026. An honest caveat: these are price lists and roundups compiled by contractors themselves, not market research, so treat them strictly as an order of magnitude.
And one sentence that has to be said here: the agency's higher rate is not in itself margin to be trimmed away. It pays for continuity and for someone running the project instead of you. The only question is whether you need that.
Freelancer
You get a direct conversation with the person writing the code, a shorter decision path, usually a lower rate at the same level of experience, and more flexibility when things change mid-project. You don't get automatic replaceability, a project manager, or competencies outside that one person's specialization - a code freelancer won't run your ad campaigns and shouldn't pretend they will.
For scale, my published pricing: a custom WordPress website from €2,400, a custom store from €3,500, a technical audit from €320. I break down the full market ranges in how much a WooCommerce store costs.
My billing comes in three modes. Ongoing technical care - updates and security checks - is €320-600 per month, depending on whether it's a website or a store and how many plugins it runs. Work within a time-based contract is billed hourly. Additional work outside the contract is always quoted upfront - never "we'll count it afterwards". Whoever you choose, ask for exactly this kind of breakdown, because unspoken billing rules ruin more collaborations than bad code does.
The risk nobody talks about honestly: what if the contractor disappears

The standard argument in comparison articles goes: the freelancer gets sick or disappears and you're left with nothing. That's a real risk and I'm not going to argue it away.
There is, however, a second half these articles never add: in an agency the risk doesn't disappear, it just stops being visible. The person who wrote your code leaves the company, and you never find out. Your project gets picked up by someone seeing it for the first time. A subcontractor ends their arrangement with the agency and takes the knowledge of your store with them. The invoice has continuity; the knowledge doesn't necessarily.
So the right criterion isn't "can the contractor disappear" - they can, in both models. It's: what will they leave behind. Documentation, clean code, credentials in your hands and standard technology mean the next contractor can pick up the work without drama. Closed, quirky code with no documentation means nobody will - regardless of whether an agency or a freelancer wrote it. I described what taking over someone else's code looks like in practice in rebuilding a WooCommerce store without losing SEO.
For clarity, here's my own setup: I develop my base theme together with a second developer, and in case of longer illness or holiday I have a trusted studio that takes over correspondence and ongoing work. This is an answer to a real risk, not a claim that the risk doesn't exist - with a one-person contractor the risk is smaller when they have backup, but it never drops to zero. And that backup is exactly what's worth asking every contractor about, agencies included.
When to choose an agency
This is the section that decides whether you'll believe the rest of this post, so it will be specific and free of hooks. Situations in which I refer people to agencies myself:
- You need several competencies at once and want them in one place: code, content, SEO, campaigns, design, product photography. Stitching that together from individual specialists takes time you may not have.
- Your company requires formal procedures: tenders, a procurement department, a contract with an entity of a certain size, business liability insurance, an SLA with penalties.
- The project is big enough to require several people working in parallel and real project management, not one person sequencing tasks.
- You need a guarantee of continuity independent of a single person and you're ready to pay for it, because the site is critical to how your business runs.
- Nobody in your company can lead the project from the business side, and you need someone to do it for you.
- You need competencies your contractor doesn't have. Twice I turned down a project because the client needed a large SEO audit, and I don't have the tools to do one reliably. An agency does - and that is exactly the moment when an agency is the better choice.
That last situation is a good test for any contractor you're collecting quotes from. A contractor who answers "we can do everything" is describing their price list, not their competencies.
Seven questions worth asking both sides

If you're wondering how to choose a contractor for your website or store, ask both sides the same set of questions. Each has a clear purpose - and an answer that should set off a warning light.
- Who exactly will write the code, and can I talk to that person before signing? An evasive answer usually means a subcontractor nobody wants to talk about.
- Do I get the code and full rights to it when the project ends? Details in the contract section below - this is the only item on this list you can't fix later.
- What will it be built on: a ready-made template, a page builder, or custom code? The answer determines your costs for the next two years - I break down the differences in website template vs custom build.
- What happens when I need a change in a year? What's the process and the rate? No concrete answer here means you'll be negotiating from a hostage position later.
- Who holds the credentials to hosting, domain and the repository, and whose account are paid plugins bought on? If not yours, it's not your website - you're renting it. Ask for a list of every paid element in the project.
- Can I see a project you delivered two years ago that still runs today? A portfolio shows launch day; this answer shows what remains afterwards.
- What happens to my project if the person running it leaves or gets sick? This question goes to both sides. A concrete answer matters more than a reassuring one.
These questions don't have a good "agency" answer or a good "freelancer" answer. They have a good or a bad answer - and that's precisely the test.
The contract and the code: the only part you can't fix later
A principle from Polish copyright law worth knowing before you sign anything (and most EU jurisdictions work the same way): the economic rights to code and graphics belong to the contractor until a contract explicitly transfers them. Paying the invoice transfers nothing by itself - see for example this overview by Poradnik Przedsiębiorcy.
The second thing is the difference between a license and a transfer of rights. Under a license the contractor remains the owner and you only get the right to use the work on terms someone set for you - so you need to check duration, revocability, fields of use and the right to modify. With a badly drafted contract you may not even have the right to commission changes from anyone else. Good breakdowns of the differences are published by law firms, for example Creativa Legal and KGM Legal IT.
In every contract, regardless of the contractor's model, check three things: transfer of economic rights with the fields of use listed, the right to modify and develop the code, and handover of the source code and credentials at the end of the collaboration. I'm not a lawyer - this is a checklist, not legal advice.
The fourth thing nobody mentions: whose account the licenses are on
The contract can be exemplary and you can still end up locked out if the paid elements of the project are bought on the contractor's account. A plugin license on someone else's account means that the day you part ways, you lose updates - and often the very feature you paid for. The same goes for hosting and the domain: if they're on the contractor's account, they're not yours.
Here's how it works with me: I build on open source, so by default there's nothing to license. If a project genuinely requires a paid plugin, the client buys it on their own account, with their own card, and gets a list of such modules from me. The code always lives in a repository, and the client gets access to it on request. And an honest admission from practice: most clients don't know what a repository is and never ask for it. That doesn't change the principle that they're entitled to it - and it's worth asking about even without understanding the technical details.
A question for you, to ask both sides: request a list of every paid element in the project and check whose account each one is bought on.
How it works with me
Four facts, without elaboration. You talk to the person who writes the code - quotes, decisions and revisions go through one pair of hands, as with the visual order builder I ran directly with the business owner. I build on open source, and any paid plugins are bought on your account, with a list handed to you. The code lives in a repository you get access to on request. During a longer absence, a trusted studio takes over correspondence and ongoing work. After launch you can, but don't have to, stay on ongoing technical care (€320-600 per month).
The whole collaboration, from first call to launch, is described on the process page. And if after this post you can see your project is an agency project - that's a good outcome of this read too.
FAQ
Usually yes, at the same level of experience, because you're not paying a team's fixed costs: office, salaries, sales. But cheaper doesn't mean cheap, and the gap is often smaller than it looks - an experienced freelancer can cost more than a small agency working with subcontractors.
It's a real risk and shouldn't be downplayed. There are three safeguards: staged payments instead of everything upfront, hosting and domain credentials on your side from day one, and code in a repository you have access to. With that setup, another contractor can pick up the work where it stopped.
An agency offers replaceability of people, which is not the same as a guarantee of quality. The guarantee comes from the contract: scope, deadlines, revision rules and penalties work the same regardless of the contractor's legal form.
Usually whoever has the shorter decision path, which more often means a freelancer - decisions happen in a single conversation, without internal alignment. On a large project the team wins back the advantage, because several people can work in parallel.
Yes, and it's normal industry practice. Subcontracting itself isn't the problem - finding out about it after the fact is. That's why it's worth asking directly who will write the code and whether you can talk to that person.
Only if the contract says so - in both models. Economic rights stay with the contractor until a contract explicitly transfers them, and the invoice alone changes nothing. With me the code always lives in a repository, and the client gets access to it on request.
Market ranges are wide, because they depend on scope and the contractor's experience. For scale: with me a custom store starts at €3,500 and a custom WordPress website at €2,400. A store on a ready-made template can be cheaper upfront, but you often pay the difference later in maintenance and rebuilding.
Yours. A license bought on the contractor's account means that the day you part ways, you lose updates and often the paid feature itself. With me there are no paid licenses by default, because I build on open source - and when a paid plugin is necessary, the client buys it on their own account and gets a list of such modules.
With me, ongoing technical care - updates and security checks - costs €320-600 per month, depending on whether it's a website or a store and how many plugins it runs. Anything outside that scope is always quoted upfront, before the work starts.
Summary
Asking about the contractor's legal form is convenient, but it settles nothing - what settles the choice are the answers to the seven questions above and the text of the contract. If you now know how to choose a contractor and those answers point to an agency, that's a good decision - call it that. And if they point to working with one person, book a free consultation - thirty minutes, after which you'll know whether your project fits that model of work at all.