Product/Real-time triggers

A rule that fires the moment it happens.

Real-time triggers watch live attributes continuously. The instant a condition is met, Signals delivers to your app or to the tools you already use to act.

14 days · no card · no sales call
Your app → Signalssubscribe
// your app, when the page loads
const stream = signals.interventions.subscribe({
  key: { user_id: "u_48213" },
  service: "storefront"
});
stream.on("intervention", apply);
Illustrative. Your app holds one live connection. Or skip the app and deliver to Braze, Kafka, a webhook or Pub/Sub.
Signals → your app● the moment it fires
{
  "trigger": "high_value_basket_idle",
  "key": { "user_id": "u_48213" },
  "attributes": {
    "basket_value": 184.20,
    "basket_idle_seconds": 612
  },
  "fired_at": "2026-09-14T09:51:19.004Z"
}
Delivered over server-sent eventsthe page changes while the customer is still on it
The problem

The moment passes before anything downstream knows.

A batch job finds the high-value basket that went idle ten minutes ago tomorrow morning. The third failed search shows up in a dashboard next week. Nothing in the stack pushes the moment it happens, so nothing acts on it.

How it works

Write the condition once. Signals watches. Something happens the instant it is true.

01 · Condition

A rule over live attributes, in the console or in code.

A basket over a threshold idle for ten minutes. A third failed search in a session. Something that did not happen inside a window.

02 · Evaluated

Every incoming event updates the attributes the rule depends on.

The rule is checked as they change, in the same engine that computes the attributes. No second system to keep in sync.

03 · Delivered

Into your app over a live connection, or to a tool you already run.

Braze, Kafka, a webhook or Pub/Sub. Signals supplies the moment. You decide what happens next.

Capabilities

Rules that fire the moment they are true, delivered where you act.

01

Conditions over live attributes

Reuse the attributes you already defined. A rule is a threshold, a window and a key, nothing more to keep in sync.

02

Evaluated on every event

Each incoming event updates the attributes the rule depends on, and the rule is checked as they change.

03

Fires on absence too

A trigger can fire when something does not happen inside a window, not only when it does.

04

Delivery into your app

Over server-sent events, so the page can change while the customer is still on it.

05

Destinations you already own

Braze, Kafka, webhooks and Pub/Sub. Signals supplies the moment. Your existing tools do the acting.

06

Versioned and testable against history

Replay a rule over warehouse history before you publish it. Old versions keep firing until you retire them.

Collect. Define. Serve.

Add the SDK, define one attribute, and watch it change while you click around your own product. 14 days, no card, no sales call.