Compliance monitoring · Production
Monzo builds a reactive fraud prevention platform with ML controls and DAG feature computation
The problem
Fraud is a fast-moving, sophisticated, and highly imbalanced problem: UK losses reached £1.17 billion in 2024, and only 1 in 10,000 Monzo transactions is fraudulent, requiring Monzo to balance intervention accuracy against unnecessary customer friction as fraudsters continually pivot tactics.
Workflow diagram · grounded in source
1
Payment triggers platform
trigger
“when a transaction is made on the Monzo app, our platform takes the following four steps”
2
Control selection
routing
“Chooses which controls to run - We have lots of controls and they all run under different circumstances. For this example, we might only want to run our machine learning model if the payment is a bank transfer, as opposed to a card trans…”
3
Feature loading via DAG
integration
“The Feature Loader is a microservice designed to compute features for fraud controls, using a Directed Acyclical Graph (DAG). The DAG supports interacting with 3 types of features:
Just in Time - A feature that requires the current conte…”
4
Fraud prediction by detectors
ai_action
“Detectors - These are typically machine learning models, responsible for predicting if fraud is occurring. They output the type of fraud and their confidence.”
5
Action aggregation
ai_action
“Action Selection Control - The control responsible for aggregating all the requested actions into a final decision. It gives us our final answer of whether we should intervene, and how!”
6
Intervention applied
output
“Applies actions - If the controls want to intervene by raising an action, we raise it. Perhaps this involves stopping the payment and notifying the user that they're being scammed.”
7
Emit to BigQuery for monitoring
feedback_loop
“Each time a control is executed, we emit the inputs, outputs and any metadata on it to BigQuery. This lets us track the decisions our controls are making and monitor their performance.”
Reported outcome
(not stated)
Reported metrics
UK annual fraud losses (2024)£1.17 billion
fraud rate per transactions at Monzo1 in 10,000 transactions
Reported stack
GoStarlarkmachine learning modelsBigQuery
Frequently asked questions
What did this team achieve with this AI workflow?
(not stated)
What tools did this team use?
Go, Starlark, machine learning models, BigQuery.
What results were reported?
UK annual fraud losses (2024): £1.17 billion; fraud rate per transactions at Monzo: 1 in 10,000 transactions (source-reported, not independently verified).
How is this compliance monitoring AI workflow structured?
Payment triggers platform → Control selection → Feature loading via DAG → Fraud prediction by detectors → Action aggregation → Intervention applied → Emit to BigQuery for monitoring.