# Should we hire a Sanity agency, a freelancer or build an in-house team?

Reviewed by Martin Dejnicki · facts verified 25 October 2026 · canonical: https://deploi.ca/sanity/faq/agency-freelancer-or-in-house-for-sanity

## Short answer

A bounded Sanity build or migration belongs with an agency, a small, well-specified job with a freelancer, and a continuous roadmap with an in-house developer, in Deploi's view. A salary buys every working hour, so hire in-house when Sanity work fills them. Canada's median web developer wage, updated November 2025, is $38.46 an hour before benefits ([Job Bank](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca), October 2026).

- **Median web developer wage, Canada:** $38.46 an hour (NOC 21234). Job Bank, wages updated 19 November 2025; low $21.48, high $57.16; Ontario $40.00 and Toronto Region $39.42. Hourly, in CAD, before benefits. ([Job Bank, Web Developer in Canada: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca); [Job Bank, Web Developer in Canada: Facts and Figures](https://www.jobbank.gc.ca/marketreport/summary-occupation/17892/ca); [Job Bank, Web Developer in Ontario: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ON))
- **Median web developer wage, US:** $92,650 a year, May 2025. US Bureau of Labor Statistics, web developers only, national median annual wage in USD. A close occupation to Job Bank's, not an identical one. ([US Bureau of Labor Statistics, Occupational Outlook Handbook: Web Developers and Digital Designers](https://www.bls.gov/ooh/computer-and-information-technology/web-developers.htm); [US Bureau of Labor Statistics, Public Data API: web developers annual median wage](https://api.bls.gov/publicAPI/v2/timeseries/data/OEUN000000000000015125413))
- **Benefits on top of the wage:** 88.3% in this occupation get at least one. Job Bank counts pensions, insurance, leave and employer payroll taxes, such as Employment Insurance and CPP contributions, as benefits paid in addition to wages. ([Job Bank, Web Developer in Canada: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca); [Job Bank, Web Developer in Ontario: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ON))
- **Deploi's rate:** $100 CAD an hour, prepaid. Before applicable taxes. Every job is estimated in hours and approved in writing first, and billed hours never exceed the approved estimate. ([Deploi, Pricing](https://deploi.ca/pricing))

## Deploi's call

Deploi is a web development agency, so weigh our view with that in mind: a bounded Sanity build or migration belongs with an agency, and a continuous roadmap that keeps a developer busy every month belongs in-house. The deciding variable is how many hours of Sanity work you have each month, not whose hourly price is lower.

**PICK: Hire a Sanity agency when**

- The work is a bounded build or migration with a launch date, so you need several skills for months, not a permanent seat.
- Nobody in-house will own the Sanity content model after launch yet, because an agency can build in your Sanity organization and train your team.
- You want a written estimate that caps the hours billed, so you know the cost before work starts.

**ALTERNATIVE: Hire in-house, or a freelancer, for Sanity when**

- You have a continuous Sanity roadmap that would keep a developer busy every month, because a salary buys every working hour.
- Your team already writes JavaScript and React, because Sanity Studio is customized in both.
- The job is small and well specified and someone in-house can review it, so one freelancer's availability is the only risk.

## What does an in-house Sanity developer cost?

An in-house Sanity developer costs a web developer's wage plus benefits. Job Bank puts the median wage for web developers and programmers in Canada, National Occupational Classification (NOC) 21234, at $38.46 an hour ([Job Bank wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca), October 2026). Job Bank and the US Bureau of Labor Statistics (BLS) report wages by occupation, not by Sanity skill, so web developers are the closest occupation. Job Bank updated these wages on 19 November 2025 and does not state the survey year on the page.

**Job Bank's hourly wages for web developers and programmers in Canada, updated 19 November 2025**

| Area | Low (CAD an hour) | Median (CAD an hour) | High (CAD an hour) |
| --- | --- | --- | --- |
| Canada | 21.48 | 38.46 | 57.16 |
| Ontario | 21.63 | 40.00 | 56.41 |
| Toronto Region | 21.63 | 39.42 | 52.31 |

Sources: [Job Bank, Web Developer in Canada: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca); [Job Bank, Web Developer in Ontario: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ON). As of 19 November 2025.

In the US, the median annual wage for web developers was $92,650 in May 2025, nationwide ([BLS](https://www.bls.gov/ooh/computer-and-information-technology/web-developers.htm), October 2026). The two occupations are close, not identical, so keep each figure in its own currency and unit.

A wage isn't the whole cost. In Canada, 88.3% of workers in this occupation get at least one non-wage benefit, and Job Bank counts employer payroll taxes, such as Employment Insurance and Canada Pension Plan (CPP) contributions, as benefits ([Job Bank wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca), October 2026).

## What does a Sanity agency like Deploi charge?

Deploi, a Toronto-based web development agency, charges $100 CAD an hour for Sanity work, before applicable taxes, because "Deploi bills every service at one rate" ([Deploi pricing](https://deploi.ca/pricing), October 2026). A build or migration gets an hours estimate and a total you agree in writing; small jobs and upkeep draw on a prepaid bank of hours. The terms that matter when you compare [Deploi's Sanity development service](https://deploi.ca/sanity/agency) with a hire:

- Every job is estimated in hours, and you approve the estimate in writing before work starts.
- Billed hours never exceed the approved estimate. The exception is a cause outside Deploi's control, such as a third-party integration issue; Deploi then reassesses the task with you.
- No minimum purchase and no contract term, and hours never expire.

Deploi's estimates for whole Sanity builds, by size, are on [what a Sanity build costs](https://deploi.ca/sanity/cost). These are Deploi's estimates as of 25 October 2026: the hours each part of the work takes (the content model, templates and components, integrations, content migration, testing and launch), priced at the published $100 CAD rate. Your project gets its own written estimate, and you agree the total before work begins; it changes only if the scope changes or a cause outside Deploi's control arises.

## Why can't you compare a salary with an agency rate hour for hour?

A salary and an agency rate buy different things, so comparing them hour for hour misleads. Each way of paying covers different hours:

- An employee's wage pays for every working hour, whether or not there's Sanity work that week.
- An agency or a freelancer billing by the hour charges only for the work.
- A monthly retainer bills a fixed fee, busy or quiet.
- Deploi, a web development agency, draws on a prepaid bank of hours only when approved work is done: "A quiet month therefore uses no hours" ([Deploi pricing](https://deploi.ca/pricing), October 2026).

The deciding number is how many hours of Sanity work you have, not whose hour is cheaper. For upkeep, Deploi estimates, as of 25 October 2026, about 10 to 20 hours a month for a site that keeps Sanity Studio, its plugins and the frontend framework current and ships small changes. Deploi states that estimate in hours, not as a monthly fee, because a bank bills only the work.

In Deploi's judgment, a Sanity site at that level of upkeep doesn't fill a full-time role, and a roadmap that ships new templates, integrations and content model changes every month can. So Deploi computes no break-even here: the answer turns on your own hours, plus the benefits, recruiting and management time a wage leaves out.

## When is a Sanity agency the right choice?

A Sanity agency is the right choice for a bounded build or migration with a launch date, because you need several skills at once for months, not a permanent seat. In Deploi's judgment, an agency fits when:

- The job is a new Sanity build, or a migration to Sanity, with a fixed launch date.
- The job needs content modeling, frontend development, migration scripts and design at the same time, which one person rarely covers.
- Nobody on your side will have enough Sanity work after launch to stay busy.
- You want a written estimate that caps the hours billed, as Deploi's terms provide ([Deploi pricing](https://deploi.ca/pricing), October 2026).

Vetting one agency against another is its own question: [how to choose a Sanity development agency](https://deploi.ca/sanity/agency/how-to-choose) gives the questions to ask, and Sanity partner status is one signal among several.

> **When not to hire a Sanity agency**
>
> - Your roadmap would keep a developer busy every month, because a salary then buys hours you'd use anyway.
> - Nobody on your side can approve the content model, because the agency then makes product decisions that belong to you.

## When does a freelance Sanity developer make sense?

A freelance Sanity developer makes sense for a small, well-specified job that someone on your team can review: a new field, a custom input component, or a Sanity Studio upgrade. Deploi found no primary source that publishes freelance rates for Sanity work as of October 2026, so it gives no figure. In Deploi's judgment, four things drive a freelancer's rate:

1. Seniority, and how deep their Sanity experience runs.
1. How certain the scope is.
1. Availability, including how soon they can start.
1. Who carries the overrun risk: on open hourly billing with no cap, you do.

The risk is concentration. One freelancer holds the knowledge of your content model and, often, the access: the Administrator role, application programming interface (API) tokens and the code repository. Sanity's guide for agencies tells agencies to "Determine if the agency needs ongoing admin access or if it will be fully transferred" ([Sanity's guide for agencies](https://www.sanity.io/docs/developer-guides/agencies-navigating-the-spring-2025-organization-changes), October 2026), and the same question applies to one contractor. So a freelancer works best beside a team that reviews the work and keeps its own Administrator, and less well as the only person who understands the build.

## When should you build an in-house Sanity team?

Build an in-house Sanity team when you have a continuous roadmap: the content model changes every month, new templates and integrations ship every sprint, and the work would keep at least one developer busy all year. That developer needs JavaScript and React, because developers define content models using JavaScript objects and Sanity Studio is customized through "a React-based framework" ([Sanity Docs, Studio](https://www.sanity.io/docs/studio), October 2026). Studio itself is "a React application distributed as a single dependency on npm" ([Sanity Docs, Embedding Sanity Studio](https://www.sanity.io/docs/studio/embedding-sanity-studio), October 2026).

Sanity is hard to run without a developer, as [Deploi's review of Sanity](https://deploi.ca/sanity/review) explains, and the work doesn't stop at launch. Someone has to keep Sanity Studio, its plugins and the frontend framework current between features and ship the small changes editors ask for, which is what maintaining a Sanity project involves.

> **When not to hire in-house for Sanity**
>
> - The site changes a few times a quarter, because a salary pays for every working hour and most would have no Sanity work in them.
> - You need several skills for a one-off build, so a single hire can't cover content modeling, frontend, migration and design at once.

## Can an agency build the Sanity project and your team run it?

Yes: an agency can build inside your Sanity organization, train your team and hand over, and then your developer or a bank of hours runs the site. Sanity's guide for agencies tells them to "create client-specific organizations from the start" and to "Determine if the agency needs ongoing admin access or if it will be fully transferred" ([Sanity's guide for agencies](https://www.sanity.io/docs/developer-guides/agencies-navigating-the-spring-2025-organization-changes), October 2026). The organization that owns the project holds its bill, so settle [who should own the Sanity project and organization](https://deploi.ca/sanity/faq/should-clients-own-their-sanity-project) before anyone writes code.

**Build with an agency, then run Sanity yourself**

1. **Create your Sanity organization.** You own it and the bill; the agency joins your project as a member.
1. **Build and document.** The agency builds the content model, Sanity Studio, the frontend and the migration, and writes down how each part works.
1. **Train your team.** Editors learn Studio; the developer who'll own the code learns the schema and the deployment.
1. **Hand over.** The repository, hosting and documentation move to your people, you replace the application programming interface (API) tokens the agency created, and the agency's access is reduced to what you agree.
1. **Run it.** Your developer takes the roadmap, or a bank of hours covers upkeep and small changes, drawn down only when work is done.

## Deploi's point of view

**Where we disagree.** The common comparison sets a salary beside an agency's hourly rate and calls the cheaper hour the winner. A salary buys every working hour, busy or quiet, plus benefits and payroll taxes; an agency or a freelancer billing by the hour charges only for the work. The second wrong claim is that a freelancer is simply a smaller agency. A freelancer is one person, so your content model, tokens and repository access depend on one person's availability unless your own team holds them too.

**Where we would push back.** If you plan to hire a full-time developer for a Sanity site that changes a few times a quarter, we'd push back, because most of that salary would buy hours with no Sanity work in them. Hire when the roadmap is continuous; until then, an agency or a bank of hours covers the upkeep.

**What we'd tell you to do first.** List the Sanity work you expect in the next 12 months: new templates, integrations, content model changes and upgrades. If it fills a developer's months, hire. If it comes in bursts around launches, buy the build and keep the upkeep on a bank of hours. Either way, create your own Sanity organization before anyone writes code.

## When this answer changes

- Job Bank publishes new wages for web developers and programmers (NOC 21234)
- The US Bureau of Labor Statistics publishes May 2026 wage data for web developers
- A primary source starts publishing freelance rates for Sanity work
- Deploi changes its published rate or its bank of hours terms
- Sanity changes how organizations own projects or how agencies hand them over

## Follow-up questions

- [Who should own the Sanity project?](https://deploi.ca/sanity/faq/should-clients-own-their-sanity-project)

## Ready to decide who builds and runs your Sanity site?

Contact us today to size your Sanity roadmap in hours and see whether an agency, a freelancer or a hire fits it. [Contact us](https://deploi.ca/contact)

## Sources

1. [Job Bank, Web Developer in Canada: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ca), checked 25 October 2026
2. [Job Bank, Web Developer in Ontario: Wages](https://www.jobbank.gc.ca/marketreport/wages-occupation/17892/ON), checked 25 October 2026
3. [US Bureau of Labor Statistics, Occupational Outlook Handbook: Web Developers and Digital Designers](https://www.bls.gov/ooh/computer-and-information-technology/web-developers.htm), checked 25 October 2026
4. [US Bureau of Labor Statistics, Public Data API: web developers annual median wage](https://api.bls.gov/publicAPI/v2/timeseries/data/OEUN000000000000015125413), checked 25 October 2026
5. [Deploi, Pricing](https://deploi.ca/pricing), checked 25 October 2026
6. [Sanity Docs, Studio](https://www.sanity.io/docs/studio), checked 24 October 2026
7. [Sanity Docs, Embedding Sanity Studio](https://www.sanity.io/docs/studio/embedding-sanity-studio), checked 24 October 2026
8. [Sanity Docs, Agencies: Navigating the Spring 2025 organization changes](https://www.sanity.io/docs/developer-guides/agencies-navigating-the-spring-2025-organization-changes), checked 24 October 2026
9. [Job Bank, Web Developer in Canada: Facts and Figures](https://www.jobbank.gc.ca/marketreport/summary-occupation/17892/ca), checked 25 October 2026
