MarkerLayer implements the nine behavioural markers of harm defined by the European standard EN 18144:2025 — verified clause by clause against the published text. Send the events you already have; get back explainable, auditable risk signals per player. Self-host the open-source engine, or point your events at the managed cloud.
npm i markerlayer · Docker image · OpenAPI 3.1 · zero runtime dependencies
Integration is one endpoint. MarkerLayer reduces the standard to a contract your platform already speaks: behavioural events in, standardized markers out.
Batched, idempotent, pseudonymous. No PII ever enters the schema.
Each player is compared against their own 90-day baseline (robust median/MAD statistics) and against the population — exactly the dual comparison §4.1 requires. Sessions follow the §3.6 five-minute rule; gambling time follows both §5.6.2 methods.
Every marker returns a state and the exact rule that produced it. A point-based composite considers markers together per §4.2. The standard prescribes no trigger points; thresholds remain your documented policy.
MarkerLayer mirrors clauses §5.1–§5.9 of EN 18144:2025 in name, order, measurement, and required time spans — verified against the full published text.
Cumulative bet amount and number of stakes, with trajectory and variability characterisation.
Mean inter-bet interval within sessions, exactly as §5.2.2 measures it — plus in-session top-up detection.
Successful and declined deposits, amounts, methods, net deposits — and chase-deposit dynamics per §4.3.
Cancellation counts and the cancel-and-replay pattern: money on its way out, gambled instead.
Contact frequency categorized positive / neutral / negative. A responsible-gambling contact is never “normal”.
Both mandatory methods: session minutes split across day boundaries, and hour-slots with activity per 24h.
Distinct products per session and per span; breadth of engagement and new-vertical adoption.
All limit changes counted; self-exclusion tracked separately across the whole account history.
Loss Calculation Method 2 — stakes minus winnings minus bonuses — with escalation and trajectory analysis.
Player-protection signals end up in front of regulators, auditors, and — sometimes — courts. MarkerLayer is engineered for that room.
No machine learning in the scoring path. Every computation is reproducible from the event log — re-run any historical assessment and get the identical result, byte for byte.
A non-normal state always carries evidence like declinedDepositCountWeek=4 ≥ 3 — the feature, the value, the threshold. Your compliance team can defend every alert without reverse-engineering a model.
Pseudonymous player IDs, amounts in minor units, categorical fields only. Nothing MarkerLayer ingests can identify a person. GDPR posture by construction.
All nine markers always appear in the output. If an event stream isn’t supplied — or a marker is legally unavailable in a jurisdiction, as §1 permits — it reports insufficient_data with the missing inputs named.
The engine is open source under MIT — github.com/markerlayer/markerlayer. The cloud is for teams who want the layer without the operations.
TypeScript library and API server with zero runtime dependencies. Your events never leave your infrastructure.
EU-hosted ingestion and scoring with retention controls, monitoring, and support — send events, read markers.
“The proposal for a standard on markers of harm cannot serve as a clinical assessment of gambling disorder.”
MarkerLayer is an identification aid. It tells your team which players warrant a human look and why — intervention decisions remain your regulated responsibility, and flag thresholds remain your documented policy. We think honesty about that line is what makes a compliance tool credible.
We work with online gambling operators and platform providers across the EU. A walkthrough takes thirty minutes: your event data, the nine markers, and what your regulator will ask.
Duomind — compliance software, Romania / EU.
duomind.eu