Should you bring observability in-house? Calculate the full cost first

Compare self-hosted and managed observability costs, including infrastructure, engineering time and migration, with a USD example and editable worksheet.

A wallet labelled Cash spending beside a clock labelled Engineering time, representing separate observability cost inputs.
Cash spending and allocated engineering time are separate inputs to an observability cost comparison. Conceptual illustration, not a supplier quote or measured saving.

A lower software bill does not automatically mean a lower total cost. Before bringing observability in-house, compare infrastructure, engineering time, migration and ongoing operations against a managed service meeting the same requirements. Calculate cash spending separately from allocated staff time.

Replacing a subscription with an open-source stack changes who performs the work and how you pay for it. Your team takes responsibility for keeping telemetry available, serving investigations and delivering alerts.

How can self-hosting use less cash but cost more overall?

This example uses hypothetical US dollar amounts (USD), excluding tax, for a constant workload with equivalent requirements assumed. Existing staff perform all work without additional payroll, and neither option requires a dedicated equipment purchase. The inputs are not market rates, supplier quotes, salary benchmarks, customer results or an exchange-rate conversion.

Hypothetical USD assumptions, excluding tax. Prepared and calculations checked 28 October 2026. No supplier quote or customer benchmark is represented.
AssumptionIn-houseManaged
Monthly non-labour spendingUS$2,500US$6,500
Monthly engineering hours8015
Loaded hourly rateUS$100US$100
One-off transition spending, excluding labourUS$2,000US$1,000
One-off transition engineering hours16050

The next table applies these inputs over twelve months. Engineering hours and their allocated cost describe the same work, so hours are not another monetary line to add to the total.

Calculated from the assumptions above over twelve months. Existing payroll is unchanged, so attributable cash excludes it. Labour is allocated at US$100/hour.
First-year resultIn-houseManaged
Attributable cash spending, including transitionUS$32,000US$79,000
Engineering hours, including transition1,120230
Allocated cost of those engineering hoursUS$112,000US$23,000
Total economic cost: cash + allocated labourUS$144,000US$102,000

In-house hours are 80 × 12 + 160 = 1,120. Managed hours are 15 × 12 + 50 = 230. The 890-hour difference comprises 780 recurring hours and 110 transition hours.

Self-hosting uses US$47,000 less cash, allocates US$89,000 more labour and has US$42,000 higher total economic cost in this example.

The cash saving matters to a business preserving cash. The engineering commitment matters to a team with other work to deliver. Allocated staff time is not an additional invoice, but the capacity still needs to be available.

What service and workload are you comparing?

Hosting Grafana, operating a telemetry backend and running the full observability service are different responsibilities. Use the data flow to identify ownership.

Assign each responsibility under both options, including any hybrid boundary. This is a scope checklist, not a supplier commitment.
StageResponsibilities to allocate
CollectInstrumentation, collector deployment, filtering, buffering and delivery checks
StoreIngestion, persistence, retention, deletion, replication and recovery
ExploreQuery performance, dashboards, correlation and user access
NotifyRule evaluation, routing, escalation and notification delivery
OperateCapacity, upgrades, security, incident response, documentation and support

For each responsibility, name the owner under both options. Mark work which remains with your team when you buy a service. Instrumentation, useful alert definitions and telemetry selection still need ownership unless the contract explicitly includes them.

Include a hybrid option where appropriate. Your team might retain collectors, dashboards and alert definitions while buying managed storage and query operations. Price the specific responsibility boundary you intend to adopt.

Complete a shared requirements checklist before requesting quotes or sizing infrastructure.

Record one shared requirement set before comparing estimates or quotes. Service equivalence in the worked example is assumed, not measured.
RequirementRecord in the comparison
MetricsActive series, sample rate, collection intervals and histogram types
LogsAccepted GB/day, peak throughput, indexed fields and query patterns
TracesReceived spans/second, retained volume, sampling and investigation needs
RetentionSearchable retention by signal and any separate archive requirement
Query serviceRepresentative queries, concurrency and acceptable response times
ResilienceFailure scenarios, recovery time and acceptable data loss
SecurityAccess restrictions, isolation, sensitive-data handling and audit needs
SupportCoverage hours, response expectations, escalation and leave cover
PortabilityExport requirements, configuration ownership and migration constraints

Reducing retention or dropping unnecessary telemetry might be a sensible cost decision. Apply the same change to the managed quote before attributing the saving to self-hosting. See why Datadog bills grow for bill drivers and scope optimisation.

Separate searchable data from archived data. A cheaper archive is an equivalent replacement only when its retrieval delay and investigation workflow meet the requirement. For example, S3 Glacier Flexible Retrieval and Deep Archive require restoration before object access. This does not apply to every S3 storage class. S3 archive restoration

What infrastructure does the full data path need?

Inventory the components you plan to run. For each one, record quantity, capacity, operating hours, unit price, pricing source and region. Include staging and recovery environments where required.

Collection and delivery

Budget for collectors, gateways, load balancing, buffering and resources used on application hosts. Set the data-loss tolerance before choosing queues and persistence.

OpenTelemetry's resiliency guidance documents loss scenarios including full queues, retry timeouts and collector crashes when data exists only in memory. Persistent storage and external message queues introduce additional components to price and operate. Persistence has limits, including persistent-storage failures, so test the loss scenarios the design must survive.

If sampling or filtering reduces stored volume, measure the effect on the whole deployment. Do not apply the same percentage reduction to every infrastructure cost.

Ingestion, storage and queries

Size ingestion, storage and queries separately. Mimir's capacity guidance identifies ingestion, in-memory series and query traffic as resource drivers, while warning that actual requirements depend on data and configuration. For the backend paths behind those estimates, see Mimir architecture.

For regularly scraped metrics, estimate samples/second by dividing active series by the collection interval in seconds.

One million active series collected every 15 seconds produces approximately 66,667 samples/second before considering duplicate collection, deduplication or replication behaviour. Variable intervals and other metric types need a more detailed model.

For logs, test representative queries alongside daily ingestion. Loki's sizing guidance notes that query resource needs vary with usage patterns and configuration. Include broad historical searches and simultaneous investigations in the benchmark. Loki cluster sizing

Storage charges and networking

Estimate bytes at the layer you will pay for. Incoming uncompressed data, encoded data and retained storage are different quantities. Include indexes, local working space and additional copies required by the design.

Object storage also has charges beyond capacity. Check applicable request, retrieval, replication and transfer costs, including storage-class conditions and exemptions. Amazon S3 pricing

Map the network paths between collectors, backends and storage. Obtain rates for the relevant cross-zone, cross-region and internet traffic, checking service-specific exemptions. Record region, discounts and quote date beside each rate. Amazon EC2 pricing

Recovery and spare capacity

Price the resources needed during failures, deployments and recovery. Identify replicas, spare capacity and recovery environments component by component. A blanket redundancy multiplier obscures what the system needs. Use the self-hosted observability recovery test for deeper capacity analysis.

If existing infrastructure has spare capacity, show both its incremental bill impact and the capacity allocated to observability. State when forecast growth would require more resources.

Also check shared dependencies. If observability uses the same cluster, identity service or deployment process as the systems being observed, establish how engineers will access telemetry and receive notifications during a failure. Price any separation required under both options.

How should you value engineering time?

Estimate effort by activity and role. Count the total hours across everyone involved, including support and continuity work.

Estimate total operating hours across all contributing roles. Use work records and scheduled tests rather than extrapolating from a quiet week.
ActivityEvidence for the estimate
Platform maintenanceWork records, deployment frequency and upgrade rehearsals
Capacity and performancePilot tuning, growth forecasts and query tests
Security and accessAccess reviews, patching, certificates and secrets
IncidentsPlatform incident records, handling time and follow-up work
Internal supportOnboarding, query help and dashboard requests
Data qualityMissing telemetry, duplicate collection and sampling changes
ContinuityRunbooks, training, handovers and leave cover

Include identity integration, sensitive-data handling and checks of component access boundaries. OpenTelemetry assigns implementers responsibility for reviewing telemetry and protecting sensitive information, and its Collector guidance covers authentication, encryption and secure configuration. Sensitive-data handling, Collector security configuration

Budget for commercial components or paid support required by the design. Allow time for upgrade testing, compatibility checks and rollback preparation.

Test the monitoring service itself. Google's SRE guidance includes configuration management and testing of monitoring and alert behaviour. Budget for checks that telemetry arrives and notifications reach their intended destination. Google SRE monitoring

Use a consistent loaded hourly rate: annual employment cost divided by annual capacity hours.

Include applicable employer costs and benefits. Define capacity hours consistently across roles and options, including the treatment of leave.

Allocated labour cost is the sum of each activity's hours multiplied by the relevant loaded hourly rate.

Track actual effort during a pilot. A quiet week will not establish the time needed for upgrades, recovery or leave cover. Schedule those activities explicitly.

An existing engineer spending a day maintaining observability might cause no immediate increase in payroll. The day still consumes capacity which would otherwise be available for other work.

Cash spending attributable to the decision includes infrastructure and external services, plus additional payroll or contractor payments caused by the choice. Economic cost includes infrastructure and external services plus the full labour allocation for the work.

For the same work and period, additional labour payments should be represented within the full labour estimate. Do not add them a second time to economic cost. If a new hire must be funded in full, include the full cash commitment and reconcile it with the labour allocation, explaining how capacity used elsewhere or left unused is treated.

Record the specific product or reliability work deferred alongside the model. A loaded hourly rate allocates employment cost. Opportunity cost depends on the alternative use of that capacity. If the team has spare capacity with no displaced work, do not treat the allocation as a proven business loss. Assess any opportunity cost separately and reconcile overlaps before combining it with allocated labour. ACCA relevant cash flows

What does the transition cost under each option?

Budget for architecture and implementation, collector changes, dashboard and alert migration, access setup, documentation, training and acceptance testing.

Include temporary parallel operation and any contract overlap or termination payments which differ between the options. Show existing commitments in the cash schedule, but exclude costs which remain identical under both choices from the incremental decision comparison. Exclude irrecoverable past spending. ACCA relevant cash flows

Define acceptance checks before migration: data coverage, representative query results and performance, alert delivery, recovery and rollback. Decide whether historical data must migrate or whether the previous service remains available until retention expires.

For the managed option, obtain a quote for the agreed workload. Check billable units, included volumes, retention, overage terms, support and optional capabilities. Grafana Cloud's published plans illustrate how usage limits, retention and support vary by plan. Grafana Cloud pricing

Add retained internal work, collection infrastructure, networking, integration and eventual exit costs.

A managed service transfers the responsibilities specified in its agreement. Estimate saved engineering time against that boundary, keeping retained managed-service hours explicit.

Where is the labour break-even point?

For a steady workload, monthly economic cost equals monthly non-labour spending plus monthly allocated labour.

Period economic cost equals one-off economic cost plus the number of months multiplied by monthly economic cost. This model excludes tax and discounting.

Calculate attributable cash spending separately, substituting additional labour payments for the full labour allocation.

Show the timing of equipment purchases and annual commitments separately from monthly allocations. A cash schedule records the purchase payment and excludes depreciation. A resource-cost comparison needs a stated treatment of equipment use over the comparison period and any remaining value. Do not count both the full purchase and depreciation as separate costs of the same asset in one total. The worked example assumes no dedicated equipment purchase.

With a common loaded hourly rate, in-house recurring break-even hours equal managed hours plus the difference between managed and in-house non-labour spending divided by that rate.

For the worked example: 15 + (6,500 − 2,500) ÷ 100 = 55 in-house hours/month.

Below 55 in-house hours per month, self-hosting has the lower recurring economic cost under these assumptions. At 55 hours, recurring costs match.

The monthly economic costs in the example are US$10,500 in-house and US$8,000 managed. One-off economic transition costs are US$18,000 and US$6,000 respectively. Including that US$12,000 transition difference across twelve months lowers the first-year break-even to 45 in-house hours per month.

The first-year calculation is 55 − 12,000 ÷ (12 × 100) = 45 in-house hours/month. Transition costs enter this first-year threshold only. Both thresholds hold the common rate, managed hours and every other input fixed.

If roles have different rates, compare the detailed labour totals. If workload changes over the year, calculate each month separately and add the results. Keep minimum commitments, pricing tiers and capacity increases explicit.

Which assumptions could reverse the result?

Use the USD cost worksheet (XLSX) to record scope, costs, hours and evidence. Replace the illustrative inputs with infrastructure estimates, supplier quotes and measured effort. Confirm genuine zero-cost entries deliberately. A blank required numeric input suppresses the affected totals as incomplete. Review the evidence and scope fields separately, since numeric completeness does not establish a supported estimate.

Enter one-off costs separately and check for duplication with recurring spending. When splitting the example's consolidated figures across detailed categories, replace the totals rather than adding the same costs again.

Test changes to the inputs which matter to your business:

  • Higher ingestion as services or telemetry coverage grow.
  • More simultaneous investigations and broader historical queries.
  • More maintenance, upgrade or support hours.
  • Longer searchable retention or tighter recovery requirements.
  • Additional cover when the main platform engineer is unavailable.

Update the underlying estimates for each scenario. If a small change reverses the result, collect better evidence for that assumption before committing.

The worksheet uses a flat monthly run rate. For growth scenarios, calculate a monthly schedule separately or use a documented period-average estimate. Record which workload the inputs represent.

Which operating model is your team equipped to run?

Self-hosting is a credible choice when the team has relevant operating experience, sufficient capacity and a measured workload which supports the economics. Specific control or deployment requirements might also justify the investment. Small, bounded requirements sometimes need only a straightforward deployment.

A managed service deserves stronger consideration when staffing is constrained or the team cannot meet the required service level within the apparent savings. A hybrid approach is useful when only part of the operating responsibility needs to move.

Approve the decision with a named service owner, a funded operating plan, tested requirements and a review date. Compare actual spending and engineering hours with the forecast after transition, and revisit the choice when workload, staffing or service requirements change.

Does existing engineering time count if payroll does not increase?
Include it in the labour allocation, while excluding unchanged payroll from attributable cash. Assess displaced work separately before assigning an opportunity cost.
Is archived telemetry equivalent to searchable retention?
Only when its retrieval delay and investigation workflow meet the requirement. Restoration rules differ by storage class.
Can spare infrastructure capacity make self-hosting cheaper?
It might reduce the incremental bill. Record the capacity consumed and when growth would require additional resources.

Primary sources checked 28 October 2026. These sources support general behaviour and cost definitions, not the hypothetical prices or measured service equivalence.