MemorySyncMemorySync
Billing

Metrics Explained

MemorySync tracks exactly two billable metrics: add requests and retrieval requests. This page explains what each metric measures, how usage is counted, and how cost allocation works for organizations with multiple tenants.

Two Billable Metrics

The system recognizes exactly two metrics. Nothing else is metered:

MetricWhat it countsExamples
Add requestsEvery successful memory write via the APIPOST /memory/add, POST /memory/batch — each call counts as 1, regardless of how many memories are in the batch.
Retrieval requestsEvery successful memory query via the APIPOST /memory/query, POST /memory/search — each call counts as 1, regardless of how many results are returned.
Not metered
Internal background work (summarization, tier transitions, retention, SIEM forwarding, scheduled syncs, session cleanup, intelligence re-evaluation) is never metered. Only direct API calls from your application count.

How Metrics Are Counted

Each billable request is counted using an atomic check-and-increment. The plan limit and the counter are evaluated together, so two requests arriving at the same instant can never both push you past the limit:

  • Atomic guarantee. Concurrent requests at the limit boundary are serialized. Exactly one will be admitted and the other will be silently degraded — never both, never neither.
  • One unit per call. Each API call counts as exactly 1. A batch add with 50 memories still counts as 1 add request.
  • Failed calls don’t count. If a request fails (authentication error, validation error, server error), it is not counted toward your usage.
  • Silently degraded calls don’t count. When you are over quota, the request short-circuits and the counter is not incremented.

Usage Aggregation

The billing dashboard shows aggregated usage for the current billing period. For each metric you can see:

  • Used. Total number of requests for this metric in the current cycle.
  • Limit. Your plan’s monthly limit for this metric.
  • Within plan. Whether you are still under your plan’s included limit.
  • Trend. Percentage change compared to the previous billing cycle, useful for spotting growth before you hit the cap.

Metrics with zero usage in the current cycle are still displayed (with zero values), so the dashboard shows a consistent view of every metric your account tracks.

Tenant-Level Cost Allocation

If your organization runs multiple tenants under one account, the billing dashboard breaks usage down per tenant:

  • Per-tenant totals. Usage and cost are aggregated per tenant within each billing cycle.
  • Share percentage. Each tenant’s share is expressed as a percentage of the organization’s total. A tenant responsible for 60% of add requests will show roughly 60% of the cost share.
  • Unallocated bucket. Any usage that cannot be attributed to a specific tenant is grouped into an “Unallocated” entry so the totals always add up to 100%.
  • Allocation tags. You can attach custom tags (for example, an environment or team label) to tenants and group reporting by tag for chargeback or showback.

Pricing Stability

Plan prices are stable for the duration of your billing cycle. If pricing changes in the future, those changes only apply to billing cycles that begin after the change becomes effective — the cycle you are currently in is always billed at the price that was active when the cycle started.

Price changes are announced in advance and visible on the public pricing page before they take effect.