All articles

Cost

Self-hosted vs hosted face recognition: the real total cost

The API-vs-compute price is the easy part. Here's the total cost of ownership.

By SightRadar EngineeringUpdated 8 min read Markdown

TL;DR

Open-source face models can be cheap to license (check each project's actual license and model weights — terms vary) but they are not free to run: you pay for GPUs or CPU inference, redundancy, a vector database, monitoring, model updates, and the engineering time to operate all of it. A hosted API like SightRadar has a clean per-photo price (batch index $0.00062/photo) and shifts the infra ops to the vendor — you still own integration, monitoring, and governance. Self-hosting tends to win at very high, steady volume with in-house ML ops or a hard data-residency requirement; a hosted API tends to win for early, spiky, or small-team products.

"The model is open source, so it's free" is the most expensive sentence in a face-recognition roadmap. The model weights are free; running them reliably is not. Let's price the whole thing honestly.

What self-hosting actually costs

Cost lineSelf-hostedHosted API
Model licenseVaries — check each project's licenseIn the per-photo price
Inference computeGPU/CPU instances, 24/7, sized for peakIn the per-photo price
Redundancy / failoverYou run multi-AZVendor-managed
Vector databaseYou operate + scale itVendor-managed
Model updatesYou re-benchmark and re-indexVendor-managed
Infra monitoring & on-callYour teamVendor's (you still monitor your integration)
Specialist staffingML/infra engineersNot required for the engine
Scaling to a burstProvision ahead or throttleElastic, pay per photo
Hosted still needs integration, monitoring, and governance — the vendor covers the inference infra, not your whole stack.

Note: The trap is sizing compute for peak but paying for it at idle. Event and gallery workloads are bursty — a wedding weekend then nothing — so a 24/7 GPU fleet sits mostly idle while still billing.

When self-hosting genuinely wins

  • Very high, steady volume where per-photo API cost would dwarf a well-utilized fleet.
  • Hard data-residency / air-gap requirements that forbid sending images to any third party.
  • In-house ML ops already exists — you have the team and the vector-DB expertise.
  • Deep model customization — you need to fine-tune on your own domain.

When a hosted API wins

  • Early or uncertain volume — you don't want to provision a fleet for demand you can't predict.
  • Small teams — no one to carry a GPU on-call rotation.
  • Bursty workloads — pay per photo during the burst, nothing at idle.
  • Time to market — a working index/search in an afternoon vs weeks of infra.
  • Rekognition compatibility — if you're already on AWS's API, a compatible hosted API is a smaller move than standing up your own stack.
The honest test: multiply your realistic monthly photo volume by the per-photo API rate, then compare it to a fully-loaded self-hosted cost including idle compute, redundancy, and a fraction of an engineer's salary. Self-hosting rarely wins until volume is both high and steady.

Compare a per-photo API price against your fleet estimate.

See SightRadar pricing

Frequently asked questions

Is self-hosted face recognition cheaper than a hosted API?

Only at very high, steady volume with in-house ML ops. Open-source models are free to license but you pay for GPUs or CPU inference running 24/7, redundancy, a vector database, monitoring, model updates, and engineering time. For early, spiky, or small-team products, a hosted API with a per-photo price and no ops burden is usually cheaper in total cost of ownership.

What are the hidden costs of running open-source face recognition?

Compute sized for peak but idle most of the time, multi-AZ redundancy, operating and scaling a vector database, re-benchmarking and re-indexing on model updates, monitoring and on-call, and the ML/infra staffing to run it all. These dwarf the (zero) model-license cost.

When should I self-host instead of using an API?

Choose self-hosting when volume is very high and steady, when a hard data-residency or air-gap rule forbids sending images to a third party, when you already have in-house ML ops, or when you need deep model customization. Otherwise a hosted API is faster and cheaper overall.

Keep reading