Skip to content

Savings

When leadership asks "what is Log10x saving us?" or you're building a quarterly ROI summary. Returns dollar attribution split across Receiver filtering, Compact mode, and Retriever archive, plus an annual projection.

Example

You

savings this month?

Log10x

$215K saved this month, on track for $1.1M/year:

  • Receiver (filter): $79K (drops 38% of WARN/INFO at the edge)
  • Compact mode: $106K (3.4× reduction in shipped bytes)
  • Retriever (archive): $30K (62% of debug events stay in S3, fetched on demand)

More to ask

  • "ROI for the quarter"
  • "stack savings YTD"
  • "projected savings if we add Compact mode"

Prerequisites

This tool requires the Reporter deployed. Savings attribution needs per-app continuous metric emission.

Schema and samples

Input example

Real call against the demo env (captured by scripts/capture-tool-envelopes.mjs).

{
  "timeRange": "7d",
  "view": "summary"
}
Input schema

Agent-facing JSON Schema (the canonical shape the MCP server publishes via tools/list):

{
  "type": "object",
  "properties": {
    "timeRange": {
      "type": "string",
      "enum": [
        "15m",
        "1h",
        "6h",
        "24h",
        "1d",
        "7d",
        "30d"
      ],
      "default": "7d",
      "description": "Time range. '24h' and '1d' are equivalent."
    },
    "analyzerCost": {
      "type": "number",
      "description": "DEPRECATED alias for effective_ingest_per_gb. SIEM ingestion cost in $/GB."
    },
    "effective_ingest_per_gb": {
      "type": "number",
      "description": "Customer-supplied SIEM ingestion cost in $/GB. When provided, rate_source=customer_supplied and dollars are populated. When omitted and no profile rate is available, rate_source=unset and the headline reports percent + bytes only (no dollars)."
    },
    "storageCost": {
      "type": "number",
      "description": "S3 storage cost in $/GB/month. Defaults to $0.023 (S3 Standard)."
    },
    "environment": {
      "type": "string",
      "description": "Environment nickname"
    },
    "view": {
      "type": "string",
      "const": "summary",
      "default": "summary",
      "description": "Output format. Always \"summary\" — the typed envelope (data.totals, data.edge, data.retriever, data.run_rate). Field retained for backward-compat."
    }
  },
  "additionalProperties": false
}

Source: src/tools/savings.ts.

Output example

Real envelope from the demo env. view: "summary" returns the full StructuredOutput with typed data. Long arrays + base64 PNG bodies trimmed for readability; the real call returns them in full.

Headline (the 1-line agent-facing answer):

Pipeline savings (this week): $0.64/wk realized, $33/yr projected.

{
  "schema_version": "1.0",
  "schema_epoch": "2026-05-25",
  "tool": "log10x_savings",
  "generated_at": "2026-05-26T15:37:15.000Z",
  "view": "summary",
  "summary": {
    "headline": "Pipeline savings (this week): $0.64/wk realized, $33/yr projected."
  },
  "data": {
    "time_range": "this week",
    "cost_per_gb": 1.5,
    "storage_per_gb": 0.023,
    "period": "/wk",
    "edge": {
      "input_bytes": 49585873423.42818,
      "emitted_bytes": 49130222413.30134,
      "reduced_bytes": 455651010.1268387,
      "savings_dollars": 0.6365371078162063,
      "emission_missing": false
    },
    "retriever": {
      "indexed_bytes": 0,
      "streamed_bytes": 0,
      "savings_dollars": 0,
      "chunks_ok_ratio": 1,
      "chunks_ok": 14,
      "chunks_total": 14
    },
    "totals": {
      "realized_dollars": 0.6365371078162063,
      "annual_projection_dollars": 33.1908634789879,
      "has_data": true
    },
    "pipeline_instances": 1,
    "services_monitored": 28
  },
  "actions": [
    {
      "tool": "log10x_top_patterns",
      "args": {
        "timeRange": "this week",
        "limit": 10
      },
      "reason": "see which patterns currently drive cost (where the savings come from)"
    },
    {
      "tool": "log10x_top_patterns",
      "args": {
        "timeRange": "this week",
        "limit": 10,
        "comparison_window": "this week"
      },
      "reason": "delta-versus-baseline view to check whether costs are growing"
    }
  ],
  "truncated": false,
  "warnings": []
}
Output schema

The data block inside the StructuredOutput envelope:

interface ToolData {
  time_range: string;
  cost_per_gb: number;
  storage_per_gb: number;
  period: string;
  edge: { input_bytes: number; emitted_bytes: number; reduced_bytes: number; savings_dollars: number; emission_missing: boolean };
  retriever: { indexed_bytes: number; streamed_bytes: number; savings_dollars: number; chunks_ok_ratio: number; chunks_ok: number; chunks_total: number };
  totals: { realized_dollars: number; annual_projection_dollars: number; has_data: boolean };
  pipeline_instances: number;
  services_monitored: number;
}

Envelope-level fields the agent should also read: summary.headline (1-line answer), actions[] (next-call chain hints as {tool, args, reason}), truncated: boolean, images[] (PNG attachments where applicable), schema_epoch (engine-ID stability boundary).