Private beta · limited access

Recommendations that explain themselves.

Works on a brand-new visitor, runs on one API call, and tells you why it picked every item. No ML team, no black box.

no model to trainone endpointworks on visitor #1every result carries a reason
ONE REQUESTGET /v1/recommendations/recommendall four asked at once
anon_8f2 · one call · all four asked at once
What they keep choosing
affinityrecency-weighted
What pairs with what
similarity1,240 bought both
What follows what
transitions3 of 4 baskets
What is in demand
popularitycovers a new visitor
YOUR RULES
boost · exclude · pin · cap
THE ANSWER
sku-71a3
because it follows sku-4c19 — every answer names its signals
BUILT FOR
quick commercegrocerymarketplacesfood deliveryfashion retailpharmacymediaticketingquick commercegrocerymarketplacesfood deliveryfashion retailpharmacymediaticketing
THE THREE HARD PARTS

Everyone can rank items. The hard parts are the first visitor, the weight, and the why.

01

Never returns an empty shelf

A brand-new visitor has no history to rank, so norai serves popularity for their entity type instead of nothing — then switches to their own affinity as soon as their first events land. Catalog attributes sharpen that very first request even further.

visitor #1 todaypopularity fallback
02

Lightweight enough to ship this week

One endpoint to send events, one to ask for recommendations. No feature store to run, no pipeline to babysit, no GPUs, no model to train — the engines are heuristics over your own event stream.

to integratetwo HTTP calls
03

Every result comes with its reason

Each item ships with the signal that produced it and a readable detail — affinity, similarity or transitions — so you can settle an argument about why something ranked. Nothing here is a black box you have to take on faith.

every item carriessource + detail
THE DASHBOARD

Watch it decide, in real time.

Pick an environment once and everything scopes to it. The home screen answers three questions at a glance — is it healthy, is it working, what is it recommending — and the math is always one click down.

Get a walkthrough
app.norai.dev / prod / overview
SAMPLE DATA
RECS SERVED
2.41M
▲ 12.4%
CLICK-THROUGH
7.9%
▲ 1.1pt
P95 LATENCY
38ms
budget 80ms
COVERAGE
94%
personal rec
Live recommendationsevery result carries a why
1
Mixed Grill Platter
restaurant · ent_71a3
Purchased twice this week
0.87
2
Falafel Sandwich Combo
dish · ent_4c19
Frequently purchased next
0.79
3
Ayran 250ml
grocery_item · ent_9910
Cold start — popular nearby, 18:00–21:00
0.63
NEXT BEST ACTION
Import your catalog to upgrade cold start from popularity to attribute matching.
Import catalog
FOR THE ENGINEER EVALUATING THIS

Two calls. That is the whole integration.

WHAT COMES BACK200 OK
{ "data": {
  "entity_type": "product",
  "items": [{
    "entity_id": "ent_71a3",
    "score": 0.87,
    "confidence": 0.72,
    "reasons": [{ "source": "transitions",
      "detail": "follows sku-4c19" }]
  }]
}}
CLIENT SDKSfour platforms
Swift
iOS
Kotlin
Android
React Native
iOS + Android
React
Web

Thin clients over the same HTTP API — identity, session batching and retries handled for you. Anything not on this list talks to it directly.

Plain HTTP
Two endpoints, any language. Nothing to install.
Environments
Staging and prod are fully isolated data.
Privacy
Erase a visitor on request, across every store.
Playground
Run a request as any visitor, read its trace.
QUESTIONS

The things people ask on the first call.

Anything else, ask us directly — you will get an engineer, not a form.

01
How is this different from the recommender we could build ourselves?
You could build ranking. What takes teams a year is the identity stitching across anonymous and logged-in sessions, a fallback that keeps a first-time visitor from seeing an empty shelf, and an explanation trace you can actually read. norai is those three plus ranking, behind one endpoint.
02
What do you need from us to start?
An event stream. That is genuinely it — one call to send events, one to ask for recommendations. A catalog export is the second input: it upgrades cold start from popularity to attribute matching.
03
Does it work for anonymous visitors?
Yes, and this is the point. A brand-new anonymous visitor is served popularity for the entity type rather than nothing, their own affinity starts building on their first event, and when they log in that anonymous history stitches onto the account rather than being thrown away.
04
How do you prove the lift is real?
A holdout group. A slice of traffic never sees a norai recommendation, and incremental order value is measured against that baseline rather than a self-reported click number. Every recommendation also carries its own trace, so you can read which signal produced each item and why.
05
Can non-engineers change what gets recommended?
Surfaces are configured in plain sentences — boost in-stock items under 25 minutes, never repeat what someone already bought, at most three items per brand. Every rule shows its blast radius before you save it, and rule effects show up inside the explanation.
06
Where does our data live, and can we get it out?
Environments are hard data-isolation boundaries. Deletion is one click and covers every store we keep. Nothing about the integration locks you in — it is two HTTP calls.
PRIVATE BETA

Let us prove it on your catalog.

We are starting with a small number of teams. Send us a week of events and we will stand up your environment, wire up the engines, and walk you through the reason behind every recommendation it serves.

Talk to us
no cardno minimum volumeyour data stays yours
norai
Recommendations that explain themselves.
© 2026 norai · figures in the product preview are illustrative