Skip to main content
Supermemory billing is usage-based USD credits. Plans include a monthly credit balance; metered product usage draws that balance down. You manage plan, invoices, top-ups, and auto top-up in the Developer Console. List prices and the public rate card also live on supermemory.ai/pricing. This page is the contract-level model: what we meter, when tokens are free (already seen), what an operation is, plan feature gates, and how to read usage programmatically.
Console charts are estimates. Invoice / customer-portal line items are authoritative.

Mental model

  1. You hold a USD credit balance (usd_credits).
  2. Product activity increments meters (tokens, queries, operations).
  3. Each meter unit multiplies by a USD-per-unit rate and debits the balance.
  4. Re-ingesting the same document under the same customId only bills the net-new token delta — already-seen content is effectively fully discounted.

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
Text-like document types bill on the text meters; everything else bills as rich (OCR, video/audio, heavy extractors).

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" — processes a document’s memory extraction immediately (does not wait for dynamic batch dreaming). Documented as one extra operation per document on top of normal token metering. See Processing modes.
  • Other non-token platform actions the product attributes to the operations meter (console: “counted platform operations not attributed to token or search meters”).
Search is primarily metered as 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

If the org is out of balance, search/profile can return 402 (payment required) depending on gate configuration.

Full discount on already-seen tokens (diff billing)

This is the most important cost control in production agents.

How it works

When you re-add content under the same customId (same org / document identity), the pipeline:
  1. Loads the previous extracted content for that document
  2. Computes full token count of the merged/updated document
  3. Bills only:
So tokens Supermemory has already processed are not billed again. Unchanged content is a full discount on the token meters. Only the net-new delta (and any new rich extraction on that delta) draws credits. This is why long-lived agent loops stay cheap: re-sync the same conversation customId, re-upload the same policy doc, or connector re-sync with stable IDs — you pay for new material, not the whole history every time.

Requirements

Practical patterns

Connectors already use stable IDs (e.g. Drive file id, Gmail thread id, s3://bucket/key) so re-syncs diff-bill automatically.

What is not free

  • First ingest of content still bills full token count
  • Search / profile still bill query meters every call
  • Instant dreaming still bills the operation surcharge when used
  • Brand-new customId = 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 matrix (code gates)

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)
  • 402quota / credits exhausted for a metered call (search, tokens, etc.)

Programmatic access

All of the following require an org-admin capable credential. Scoped API keys cannot read billing (403). Base: https://api.supermemory.ai
Auth: Authorization: Bearer YOUR_API_KEY

Summary — plan + high-level usage

GET /v3/auth/billing
Typical fields:
CLI:

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.
Response includes 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)

  1. Always set stable customId on conversations and docs so re-sync is free on old tokens.
  2. Prefer session-level conversation documents over one-line micro-adds (better memory and less wasted processing).
  3. Use dreaming: "instant" only when you need immediate memory (extra operation); default "dynamic" batches extraction.
  4. Cache profiles short-TTL in your app if you call them every turn.
  5. Scope with containerTag so you can delete/export a tenant without scanning the org.
  6. Enable spend caps / auto top-up on Scale for predictable production.
  7. Pull /v3/auth/billing/usage-events into your own FinOps dashboard for per-day Memory vs SuperRAG spend.