Comparisons
A freelancer or An agency
What I would pick: A freelancer for a project with clear scope and one specific specialism: you talk to whoever writes the code and there is no layer in between. An agency when you need several disciplines at once (design, campaigns, content) or when your company cannot depend on one person for years.
The differences
| What we compare | A freelancer | An agency |
|---|---|---|
| Who you talk to | Whoever writes the code | A project manager |
| Specialisation | High and specific | Broad, with varying levels per profile |
| Continuity risk | One person; mitigate it with the repository | Lower, if they document and rotate well |
| Several disciplines at once | You coordinate several freelancers | Included |
| Speed on small changes | High: no layer in between | Depends on the process |
| Cost per development hour | Generally lower | Higher; it includes the structure |
The real risk of each, said plainly
The freelancer risk is obvious: it is one person. If they disappear, the project loses its memory. That is mitigated with three specific things, and all three are yours by contract: the code in a repository that is yours from day one, changes in files of their own rather than scattered through the theme, and the decisions written down somewhere.
The agency risk is less visible: distance. You talk to whoever manages, not whoever writes, and on technical projects that introduces a translation step in every iteration. It also happens that the profile shown in the proposal is not the one who ends up touching your store.
The hybrid case, which is the most common and nobody mentions
Plenty of brands work with an agency for design, content and campaigns, and with a specialist for the hard technical part. I work that way myself: since October 2024 I have been the sole front-end developer at a B2B-focused Shopify Plus agency whose client storefronts add up to over €36M in annual GMV, while also running direct projects.
It is the combination that works best when there is an agency that already knows the brand and a technical piece that needs specialisation: B2B, Functions, checkout or performance.
How to decide, in one sentence
If you can write the scope on one page and the problem is technical, a freelancer. If the problem is “we need to grow and we do not know where to start”, an agency. And if you already have an agency and what is missing is a specialism, do not change agency: add the specialist.
The six questions worth asking before hiring apply equally to both.