Know what a customer did, not only how many times.
A live attribute is a computed property of whatever you key on, computed live on your events and served to your application in single-digit milliseconds.
What you see below is your own visit to this page, computed by Signals as you read.
Signals, about you
connectingSignals is computing your first attributes from the events this page just sent.
Every highlighted part is an attribute Signals computed from the behavioral data your browser sent during this visit. Open the Product menu above and watch the sentence change.
Event in to attribute updated
p95. Load-test benchmark
Streaming for now, batch for history
user · session · basket · listing · store
You know how many times. Not what.
Most customer data is counts computed overnight: propensity to purchase, next best action, product recommendations. By the time it reaches your product the moment has passed, and it says nothing about what this customer is doing right now.
An attribute group, published and serving.
Each attribute is a name, an aggregation, the events it reads and a window. Define them in the Console or in code, and every version is kept.

Define once. Computed on the stream. Served to your app.
01 · Event inA product_view event on a pair of trail shoes arrives from your app via our SDK.
Schema-validated on the way in. Bad data never reaches the attribute. So you can always trust your attributes.
02 · RecomputedAn attribute named categories_viewed gains trail, inside the 10-minute window.
<1s from the event arriving to the attribute being current. Windowing, late events and hot keys are handled in the engine, not in your code.
03 · Read backYour ranker reads the attribute and reorders the shoe recommendations, in the same session.
Or a trigger fires the moment the condition is met and delivers it to you.
- Snowflake
- BigQuery
- Databricks
- Vertex AI
- Amazon Bedrock
Attributes that describe the moment, kept current for you.






How often, how recently, in what sequence. Or your own function, versioned like the rest.

Ten minutes, this session, since last purchase. Late events, TTLs and hot keys handled in the engine.

user · session · account · basket · listing · store. A profile is whatever you say it is.

Streaming for now; backfill from Snowflake, BigQuery or Databricks on publish, so a new attribute has history on day one. The same definition builds the ML training set, so serving matches training.

An event updates its attributes in <1s. Reads come back in 6ms p50, 10ms p95 in-region, one call for every attribute in a service, mid-render.

Every attribute is versioned, and manageable in code and CI/CD. Old versions keep serving until you retire them.

Full reference: Defining attributes →
Collect. Define. Serve.
Add the SDK, define one attribute, and watch it change while you click around your own product. The free tier runs on the real engine: no card, no sales call.