Skip to main content

Knowledge Units (KU)

What is a Knowledge Unit?​

A Knowledge Unit (KU) is the fundamental economic unit of RushDB. It represents a unit of structured knowledge created and maintained by RushDB from your raw data — during ingestion, modeling, or reasoning.

Raw data → RushDB → Structured Knowledge → KU

The more data you push and the richer its structure, the more knowledge RushDB creates, and the more KU are consumed.

Developer Mental Model​

You never need to think about nodes, edges, CPU, RAM, or storage. You simply think:

More data → more knowledge → more KU

RushDB handles all the underlying storage and graph mechanics automatically. You pay only for the knowledge created and maintained on your behalf.

What Generates KU?​

KU is generated by operations that create or maintain structured knowledge in RushDB:

ActivityExample
Ingesting recordsdb.records.create(), records.importJson()
Building relationshipsdb.records.attach()
Storing embeddings (number arrays)Passing number[] arrays during ingestion
Compute-intensive operationsVector similarity search, raw Cypher execution, multi-hop traversals
Maintaining stored knowledgeOngoing footprint of stored records

Standard reads and queries (find, filter, paginate) never consume KU. Compute-intensive operations do because their cost scales with dataset size rather than the data written — running a semantic search across 10M records costs significantly more server compute than fetching a record by ID.

Note: The internal weights assigned to each operation type are not exposed. You interact only with your total KU consumption.

KU and Plan Limits​

Each plan includes a monthly KU allowance:

PlanIncluded KU / month
Free100,000 KU
Start250,000 KU
Pro1,000,000 KU
ScaleUsage-based
EnterpriseCustom / platform license

When your workspace reaches its KU limit, write operations will be blocked until the next billing period or until you upgrade your plan.

How Nested JSON is Billed​

When you ingest nested JSON, RushDB automatically decomposes it into separate linked records:

// Input: one nested object
{ "user": { "profile": { "name": "Alice", "age": 30 } } }

// RushDB creates:
// → Record: user (0 own properties)
// → Record: profile (2 properties: name, age) → ~2 KU
// → Relationship: user → profile → ~0.5 KU


// Total: ~2.5 KU

This means nesting does not multiply properties — it creates additional records and relationships, each billed independently.

ComponentCost
Each record createdweight per record
Each property stored on a recordweight per property
Each relationship formed between recordsfractional weight (< 1×)

Note: Exact per-operation weights are not publicly exposed. You interact only with your total KU consumption.

KU Calculator​

You can estimate your monthly KU consumption with this approximation:

estimated monthly KU
≈ records_per_day × 30 × (avg_properties + avg_child_records × relationship_weight)

Where:

  • records_per_day — average number of top-level records ingested per day
  • avg_properties — average number of scalar properties per record
  • avg_child_records — average number of nested objects per record (each becomes a separate linked child record)
  • relationship_weight — the fractional KU cost per relationship (less than 1×)

For a quick estimate, nesting depth maps approximately to a combined multiplier of 1.0 (flat) → 3.0 (deeply nested) on the base property count. This is an approximation — actual KU depends on the internal weighting of each operation type.

Storage Footprint​

RushDB charges a small daily storage footprint KU for every record currently stored in your project. This covers the ongoing infrastructure cost of keeping your data queryable.

  • Storage KU is calculated once per day, prorated against your monthly plan allowance.
  • The charge is proportional to your current record count — fewer records, lower footprint.
  • Deleting records reduces your ongoing footprint from the next daily cycle onward.
  • KU consumed at creation time is never reversed by a later deletion.

Self-Hosted​

When running RushDB in self-hosted mode (RUSHDB_SELF_HOSTED=true), RushDB Cloud KU tracking is disabled and no cloud usage limits apply.