Estimator inputs
Example data table
Sample scenarios to sanity-check your assumptions. Replace values with your telemetry reality.
| Scenario | Logs (GB/day) | Metrics (series) | Traces (spans/sec, sampling) | Retention (logs/metrics/traces) | Typical use |
|---|---|---|---|---|---|
| Startup | 2 | 80,000 | 120 @ 10% | 7 / 30 / 3 | Lean platform, focused debugging |
| Mid-size SaaS | 15 | 350,000 | 600 @ 20% | 14 / 60 / 7 | Balanced observability with incident readiness |
| Enterprise | 80 | 2,500,000 | 3,500 @ 30% | 30 / 90 / 14 | Large fleet, compliance retention, heavy analytics |
Formula used
This estimator models common usage-based pricing patterns. Adjust unit prices to match your vendor or self-hosted costs.
Logs
IngestGB_month = IngestGB_day × DaysIngestCost = IngestGB_month × PriceGB × IndexFactorAvgStoredGB = (IngestGB_day ÷ Compression) × RetentionDaysStorageCost = AvgStoredGB × StoragePriceGB_monthQueryCost = ScanGB_day × Days × QueryPriceGB
Metrics
Samples_month = Series × (SecondsMonth ÷ IntervalSec)IngestCost = (Samples_month ÷ 1,000,000) × PricePerMRetainedSamples = Series × (RetentionDays×86400 ÷ IntervalSec)StoredGB = RetainedSamples × BytesPerSample ÷ 1024³StorageCost = StoredGB × StoragePriceGB_month
Traces
Spans_month = SpansSec × SecondsMonth × (Sampling% ÷ 100)IngestCost = (Spans_month ÷ 1,000,000) × PricePerMStoredGB = SpansDay × RetentionDays × SpanBytes ÷ 1024³StorageCost = StoredGB × StoragePriceGB_monthTotal = Subtotal + Buffer − Discount
Tip: For self-hosted stacks, set ingest prices near zero and model storage + compute via “extras” (hosts/users) and your own per-GB storage rate.
How to use this calculator
- Estimate daily telemetry: logs GB/day, active metric series, and spans/sec.
- Choose retention per signal. Start with realistic “hot” retention.
- Set unit prices from your provider quote or internal cost model.
- Adjust sampling and query scans to reflect real investigation habits.
- Add “extras” for hosts, seats, synthetics, and alerting add-ons.
- Click Estimate Monthly Cost to see totals and breakdown.
- Use Download CSV or Download PDF for sharing.
Signal Volume Benchmarks by Team Size
Small platforms often start near 1–3 GB/day of logs, 50k–150k active metric series, and 50–150 spans/sec. Mid-size SaaS commonly lands around 10–25 GB/day, 200k–600k series, and 300–900 spans/sec at 10–25% sampling. Enterprise fleets can exceed 50–150 GB/day, 1M–5M series, and 2k–6k spans/sec when tracing critical paths. Use these ranges to populate the example table and validate that your inputs are not off by an order of magnitude.
Retention Strategy: Hot vs Archive Days
Retention drives storage more than ingestion. A practical baseline is 7–14 hot log days for debugging, 30–60 metric days for trend review, and 3–7 trace days for incident replay. Compliance needs may push logs to 30–365 days; consider splitting tiers so only security/audit streams stay long. If you triple retention, storage roughly triples. Compression helps: improving log compression from 2× to 4× halves average stored GB for the same retention.
Cardinality Controls and Metric Sampling
Metric spend scales with series × samples. Dropping scrape frequency from 15s to 30s halves samples, reducing ingest costs directly. Cardinality is the bigger lever: eliminating high‑churn labels can cut series by 30–70%. Track top label sets and cap per‑tenant series budgets to prevent runaway costs during onboarding or misconfigured exporters. For planning, add 10–15% headroom for seasonal launches and new services.
Trace Sampling and Span Payload Hygiene
Tracing cost depends on spans/sec, sampling, and span size. Moving sampling from 20% to 10% halves ingest and stored volume. Keep average span payload under 600 bytes by trimming large attributes, limiting stack traces, and using exemplars selectively. For bursty traffic, add 10–20% buffer to cover incident-driven sampling increases. If you retain traces longer than a week, storage becomes the dominant line item.
Cost Governance: Budgets, Alerts, and Reviews
Treat observability like a product with quotas. Set budgets per environment and per team, then review unit prices quarterly. Alert when query scan volume is >10× ingestion for more than a week, since investigative queries can quietly dominate. Don’t forget fixed extras: agents at $8–$15 per host-month, seats at $5–$12 per user-month, and synthetics at $1–$3 per check-month are common. Export CSV/PDF monthly to support chargeback and vendor negotiations.
FAQs
How do I estimate daily log ingestion?
Start from average log size per request and requests per day, then add batch jobs. Many teams validate by sampling one hour of logs and scaling to 24 hours. Recheck after adding new services or verbose debug levels.
What should I enter for query scan volume?
Use recent platform usage if available. If not, a reasonable starting point is 2×–8× your log ingestion, higher during incidents. Dashboards with broad filters and ad‑hoc searches can push scans beyond 10×.
How do I approximate active metric series?
Count unique time series produced by exporters: metric name plus label combinations. Inventory your top dashboards and exporters, then estimate series per service. High-cardinality labels like userId or requestId can multiply series dramatically.
Does trace sampling affect both ingest and storage?
Yes. Sampling reduces the spans kept, so ingest cost and stored GB typically drop proportionally. If you use tail-based sampling, incidents can temporarily raise sampling, so keep a buffer for surge months.
Can this model self-hosted observability costs?
Yes. Set ingest unit prices close to zero, and use storage prices plus “extras” to represent compute, agents, and staffing. If you know your cloud storage rate, map it directly to the per‑GB‑month fields.
Why is my effective cost per GB ingested high?
Fixed extras and query scanning can dominate when telemetry volume is low. Check host/user fees, synthetics, and alerting add-ons, then compare query scans to ingestion. Reducing retention or sampling often improves the ratio quickly.