MemorySync
Billing / Counting rules

How Usage is Calculated

Usage is counted per request, before your call runs, whatever the call stores or returns, and only for traffic authenticated with an API key or OAuth token.

Checker

Check whether a call counts

COUNTS

Counted. This is external, billable traffic: the counter is incremented before your call is processed.

Rules

The counting rules

Adds: one unit per write request
Every add request costs one unit, however many memories it stores: none, one or several. That covers POST /memory/add, /v1/memory/add, /v1/memory/add_turn, a history append (however many turns it carries), a state put, a file upload, a summarize and the MCP add_memory tool. What you send does not change the count either: an assistant, system or tool turn, filler such as “ok”, or text with nothing worth keeping costs the same one unit.
Batches: one unit per record
A bulk add, an import or a crawler import counts one unit per record it carries, the same as sending each record on its own, whatever each record stores. Records it refuses, records a resumed import already stored and pages that fail to import are not counted. A connector sync or activity capture counts one unit per item it sends to extraction.
Retrievals: one unit per request
A query, recall, compose, search or list is one unit however many memories it returns, none included.
Refused requests and retries are not counted
A request that is refused (a malformed body, a key without access to the tenant, too few memories to summarize) or that fails costs nothing. Neither does a retry of a write already stored: a repeated client_ref, idempotency key or conversation turn, or the value a state key already holds.
Checked before the work
The check and the increment happen together, before your request runs, so two concurrent requests cannot both take the last unit.
External traffic only
Requests authenticated with an API key or OAuth token are billable. Dashboard sessions are exempt.
Over-limit requests
Do not increment the counter, so usage never exceeds the plan limit.
Cycle

When counters reset

Both counters reset to zero when your billing cycle rolls over. The next cycle is anchored to the end of the previous one, so the reset date does not drift month to month. The dashboard shows the current period and the days remaining until the reset.

Was this page helpful?