Canon

Product · Decisioning

Every player. Every event. A real-time decision.

Canon's decisioning engine evaluates each player event against your goal and budget — and chooses what to do, in under 50 ms, for every player you have.

Player event
loss streak ×4
Signalsloss-chasing
Policyscore 0.81
GuardrailsRG flag
Shipped action
Hold (RG)14ms
Decision engine · live
<50ms
Decision latency

p95 end-to-end

millions
Decisions per day

across all operators

+14.3%
Retention lift

vs. rules-based control, median

The unit of work

Decide on every event, not every campaign.

Cohort-based CRM groups players into segments and ships campaigns once a week. Canon listens to every event a player produces — a login, a deposit, a session start, a loss streak — and makes a fresh decision against your goal. The unit of work is the event, not the campaign.

  • Streams events from your PAM / CDP in real time
  • Picks one of: bonus, mission, cashback, cooldown, hold, no action
  • Sized per player from elasticity, lifecycle, and risk
  • Logs every signal that produced the decision
91
Player #P-91823
Slots · Tier 2 · UK · Day 14
Active
Signals consumed
  • Lifecycle: D14, retainedw 0.30
  • Last loss streak: 3w 0.40
  • Avg session: 22mw 0.20
  • Elasticity prior: 0.71w 0.50
Candidate actions
  • Mission · streak 30.81
  • Bonus · £2.500.62
  • Cooldown0.18
  • No action0.09
Decision shipped: Mission · streak 314ms · logged

Capabilities

What the engine actually does.

Signal ingestion

Reads from your PAM, CDP, payments, and KYC systems. New signals plug in without engineering work.

Per-player models

A policy network evaluates every event against your objective, with a per-player elasticity prior trained on the cohort.

Hard guardrails

Spend caps, frequency limits, cool-down windows, and exclusion lists are enforced before the model is consulted.

Soft guardrails (RG)

Loss-chasing, stake escalation, session duration, and deposit-decline checks can downgrade or block decisions.

Replay & debug

Every decision is replayable from its inputs. Operators can re-run what-if scenarios on yesterday's traffic.

Holdout-based attribution

10% rules-based holdout by default. Lift is measured monthly, exportable to your warehouse.

The thing that surprised us was the speed of decisions. Our old setup ran reactivation campaigns weekly. Canon was running them per session — and we could see the lift inside a fortnight.
Head of CRM, Tier-1 European sportsbook · Anonymised pilot operator

FAQ

Decisioning, in detail.

p50 around 18 ms, p95 under 50 ms, end-to-end including RG checks. Decisions that exceed the latency budget fall back to a deterministic safe default.

See decisioning on a slice of your players.

A 60-day pilot with a 10% holdout will tell you what Canon's lift looks like on your data — not somebody else's case study.