Console charts are estimates. Invoice / customer-portal line items are authoritative.
Mental model
- You hold a USD credit balance (
usd_credits). - Product activity increments meters (tokens, queries, operations).
- Each meter unit multiplies by a USD-per-unit rate and debits the balance.
- Re-ingesting a document under the same
idcan reuse unchanged content — token charges follow added or changed text, not simply growth in the document’s total length.
Meters (what we count)
List rates (USD)
These match the console meter table (USD per unit; ×1000 ≈ price per 1K units):
Rates can change; treat pricing + your invoice as source of truth.
Memory vs SuperRAG tokens
Ingestion is attributed by task type:- Memory (
taskType: "memory") →sm_tokens_text/sm_tokens_rich - SuperRAG (
taskType: "superrag") →sm_superrag_text/sm_superrag_rich
What is an operation?
sm_operations is the meter for discrete platform work that is not “how many tokens did we embed.” Examples include:
dreaming: "instant"extracts a document’s memories immediately instead of waiting for the next dynamic batch. It costs one extra operation per document on top of normal token metering. See processing modes.- Search add-ons: query rewriting (
rewriteQuery), reranking and aggregation (v5rerank: "order"/"aggregate", v3/v4rerank, v4aggregate) each add one operation when they run successfully. Failed or skipped add-ons do not necessarily charge an operation. - Query-based
POST /v4/memories/forget-matchingadds one operation per search round, up to five, includingdryRunpreviews. Applying an explicitidslist bypasses that query-operation charge.
sm_search_queries (one unit per gated search/profile request). Prefer thinking of operations as extra platform work, not as a synonym for “API call.”
Search and profile
Blocking metered cloud calls can return 402 (payment required) when the applicable balance or quota is exhausted. Billing exclusions, unlimited contracts, disabled billing, and gate configuration can differ. The current v5 profile route does not install a search-query billing gate; this is not a guarantee of future pricing.
Reusing unchanged content (diff billing)
This is the most important cost control in production agents.How it works
When you re-add content under the sameid (same org / document identity), the pipeline:
- Loads the document’s active chunks and plans the updated content.
- Reuses unchanged chunks where possible.
- Meters newly appended text on an append path, or added replacement chunks on a replace path.
Requirements
Practical patterns
s3://bucket/key), so re-syncs can reuse unchanged content. Changed replacement chunks can still incur token charges.
What is not free
- First ingest of content still bills full token count
- Gated searches still bill the query meter every call; legacy v4 profile does so only with a non-blank
q. The current v5 profile implementation does not charge this meter. - Instant dreaming still bills the operation surcharge when used
- Brand-new
id= brand-new document = full tokens
Credits and balance behavior
Plan credit inclusion (approximate)
Legacy product IDs (
memory_free, memory_starter, memory_growth, memory_enterprise) still resolve for existing customers.
Plans and feature access
Usage meters are shared; feature gates differ by tier.Plan summary
Feature availability
Coding plugins are available on every plan, including Free. Their API usage still consumes your plan’s credits at the applicable rates.
PDF uploads use the extraction tier available to your organization automatically; no extra API parameter is required. On plans without advanced extraction, uploads still use standard extraction rather than returning a feature-gate error. Advanced extraction can also fall back to standard extraction if needed. This tier distinction applies to PDFs, not all supported file types.
Overrides can be applied per org in metadata (
featureOverrides) for enterprise deals.
HTTP behavior when gated
- 403 — plan too low for a feature (e.g. connector not on Free)
- 402 — quota / credits exhausted for a metered call (search, tokens, etc.)
Programmatic access
Scoped API keys cannot read billing (403).GET /v3/auth/billing and POST /v3/auth/billing/auto-topups also require an org admin or owner.
Base: https://api.supermemory.aiAuth:
Authorization: Bearer YOUR_API_KEY
Summary — plan + high-level usage
GET /v3/auth/billing
Feature breakdown (Autumn features)
GET /v3/auth/billing/usage
Returns per-feature used / limit / unit for the org’s Autumn customer features (including usd_credits, token meters, search, operations), plus period bounds when available.
Meter events (day × feature)
GET /v3/auth/billing/usage-events
Optional query: ?start=<ISO>&end=<ISO> to override the billing period.
byFeature, byDay, memoryTotal, superragTotal, period start/end.
Auto top-up config
Invoices
GET /v3/auth/billing/invoices
Product / request analytics (not the same as USD meters)
For request volume, errors, and per-key traffic (ops monitoring, not USD ledger):GET /v3/analytics/usage?period=24h|7d|30d
See Analytics.
TypeScript sketch
Cost control checklist (production)
- Always set a stable
idon conversations and docs so re-sync is free on old tokens. - Prefer session-level conversation documents over one-line micro-adds (better memory and less wasted processing).
- Use
dreaming: "instant"only when you need immediate memory (extra operation); default"dynamic"batches extraction. - Cache profiles short-TTL in your app if you call them every turn.
- Scope with a
namespaceso you can delete/export a tenant without scanning the org. - Configure auto top-up purchase limits on paid plans and monitor usage separately. These limits do not cap the entire invoice.
- Pull
/v3/auth/billing/usage-eventsinto your own FinOps dashboard for per-day Memory vs SuperRAG spend.
Related
- Pricing page — live plan marketing rates
- Console billing — plan, invoices, top-ups
- Add context —
id,dreaming - Analytics — request-level observability
- Security & compliance — trust posture for enterprise review