The STP rate measures how many items match automatically, without anyone touching them. But it depends on how generous the tolerance is, so it measures throughput, not accuracy. Set tolerances on amounts only, cap what they absorb in total, and watch warning indicators such as aged breaks and forced matches. And remember that CLS is payment-versus-payment settlement, not a central counterparty.
Why it matters: A high match rate can mean the process is good, or that it is too forgiving.
Summary: The STP rate measures how many items match automatically, but it depends on the tolerance policy, so it is a throughput measure, not proof of accuracy. Set tolerances on amounts only, cap what they absorb in total, watch KRIs such as aged breaks and forced matches, and remember that CLS is payment-versus-payment settlement, not a central counterparty.
- Identifiers and quantities match exactly; tolerances apply only to amount fields.
- In the worked example, a $5 tolerance beats a $50 one while a break costs less than $10 to investigate.
- A $1 per-item tolerance with no aggregate cap can hide $2,475,000 a year of systematic leakage.
- Maker-checker approval should apply to every manual or forced match.
- CLS removes FX principal (Herstatt) risk through payment-versus-payment; about 36% of FX settlement value settled through PvP in April 2025.

The single most-watched reconciliation KPI is the Straight-Through Processing (STP) rate: the percentage of items that match automatically between the two data sources without any manual intervention. A tolerance is a pre-set acceptable variance (for instance, $1 per item, or 0.01% of the transaction value) below which a difference is accepted automatically instead of being raised as a break, so that people do not spend their day on rounding. Tolerances belong on amount fields only. Identifiers (the security, the account, the counterparty, the settlement date) and quantities match exactly or not at all, because a share that is “nearly” there is not there.
Two-way matching compares exactly two data sources (an internal record against a custodian‘s, for instance). Three-way matching adds a third, independent source, such as a counterparty confirmation or an affirmed trade from a central matching service. The gain is attribution: when two sources agree and the third differs, the odd one out is usually wrong.
Foreign exchange adds a settlement-level control through CLS, often mislabeled a clearing house. It is not a central counterparty: it does not step between buyer and seller, and the trade stays between the two banks. It is a payment-versus-payment (PvP) settlement system, in which both currency legs settle together or neither does. That removes Herstatt risk, the risk of paying away one currency and never receiving the other, named after the German bank closed on June 26, 1974, after it had received Deutsche marks from counterparties but before it paid the dollars it owed them in New York. PvP does not guarantee that a trade settles: if one fails, the cost of replacing it at a worse rate falls on the counterparties, not on CLS. According to the BIS, in April 2025 about 36% of FX settlement value ($5.2 trillion a day) settled through PvP, while about 10% ($1.4 trillion) still settled gross and bilaterally with no protection against settlement risk.
A reconciliation function processes 50,000 items in a day, of which 48,500 match automatically without any manual intervention. STP Rate = 48,500 ÷ 50,000 = 97%. The remaining 1,500 items — the breaks — require manual investigation. A mature operations function tracks this rate as a trend over time (a KPI, per Volume II’s Part 9 terminology) and separately tracks how many of those unresolved breaks age past a defined threshold (a KRI, since a rising trend of aged breaks is an early warning that risk is building, often before it degrades the STP rate itself).
Reconciliation platforms (Volume I names SmartStream’s TLM, for Transaction Lifecycle Management, Broadridge, Gresham and Trintech) load both feeds, normalize formats and match in passes, strictest first: exact keys (security, account, quantity, dates), then tolerances on amounts, then shape mismatches such as one-to-many (one custodian cash movement settling 40 client trades in bulk). Whatever no rule pairs becomes a break in an exception queue. People may then match items manually or force-match them, which is where control weakens, so mature functions apply maker-checker to every manual or forced match: one person proposes, a second independent person approves, and the system records both. Machine-learning tools now propose fuzzy matches and predict which breaks matter, which raises the STP rate but makes the approval of their suggestions a control in its own right. Shorter settlement cycles (US T+1 since May 28, 2024) shrink the window in which any of this can catch an error before money moves.
Because the STP rate measures throughput, it can look healthy while risk builds. The early warnings are key risk indicators (KRIs), metrics chosen because they move before losses do. The Basel Committee’s operational risk principles call for monitoring metrics and their trends “against agreed thresholds or limits” (Principle 6) and list “regular verification and reconciliation of transactions and accounts” among core controls (Principle 9). A typical set, with illustrative triggers:
| KRI | How it is measured | Illustrative trigger |
|---|---|---|
| Aged breaks | Count and value of breaks open past the aging threshold (Part 8.5: Aged Breaks — The Audit and Risk Flag), where errors compound and fraud hides | Amber: count up 20% month on month; red: any break over $100,000 open 10 business days |
| Manual and forced match share | Manual or forced matches ÷ all matches | Amber above 5% |
| Value accepted within tolerance | Sum of auto-accepted differences per account per day | Red when above the account’s aggregate cap |
| Reconciliations not performed | Accounts or feeds not reconciled on schedule; a reconciliation that never ran shows no breaks and looks perfect | Red for any client money or custody account |
Where the client-asset rules of Part 8.1: Reconciliation as a Regulatory Control, Not Just Operational Hygiene and the matching rules of this chapter bend:
| Situation | What changes | Why |
|---|---|---|
| A client owes the firm | That client counts as zero in the client money requirement; the debt is never netted | CASS 7.16.16R; the trust bars using client money to advance credit (CASS 7.17.5G) |
| A bank has not countersigned the acknowledgment letter | No client money may be held in that account | CASS 7.18.2R; without it the bank may treat the money as the firm’s |
| A custodian refuses to supply monthly statements | A less frequent external custody reconciliation may be allowed, narrowly, with the reason recorded | CASS 6.6.40AR, clarified by the 2026 amendments (Handbook Notice 142) |
| Under £1 million of client money and £10 million of custody assets | CASS small: no monthly CMAR, but one director or senior manager still owns CASS oversight | SUP 16.14.1R; CASS 1A.3.1R |
| An FX counterparty fails to pay into CLS | No principal is lost, but the cost of replacing the unsettled trade stays with the counterparties | Payment-versus-payment is not a guarantee |
| A one-share quantity difference | Always a break, whatever the amount tolerance | Tolerances apply to amounts, never to quantities or identifiers |
Take the 50,000 items above: at zero tolerance 48,500 match and 1,500 differ, the 97% STP rate. Illustrative assumptions: 800 differ by under $1 (rounding); 400 by $1 to $5, of which 300 are self-clearing timing items and 100 come from a misconfigured fee that undercharges clients $3.20 each; 200 by $5 to $50, half noise and half one-off errors averaging $20, recoverable if found; 100 by more than $50, worked under every policy. Each break routed to a person costs c = $8 (10 minutes at a $48 loaded hourly cost).
| A: $1 tolerance | B: $5 tolerance | C: $50 tolerance | |
|---|---|---|---|
| Breaks routed to people per day | 400 + 200 + 100 = 700 | 200 + 100 = 300 | 100 |
| Reported STP rate | (50,000 − 700) ÷ 50,000 = 98.6% | 99.4% | 99.8% |
| Investigation cost per day (breaks × $8) | $5,600 | $2,400 | $800 |
| Real errors accepted unseen per day | $0 | 100 × $3.20 = $320 | $320 + 100 × $20 = $2,320 |
| Total daily cost | $5,600 | $2,720 | $3,120 |
Flip points. B beats C while the extra investigation costs less than the errors it catches: 200 × c < $2,000, so c < 2,000 ÷ 200 = $10 per break. Above $10, C is cheaper on these numbers. A beats B only if 400 × c < $320, so c < $0.80, reachable only with near-total automated triage. Two lessons: the STP rate rose from 98.6% to 99.8% without one more item being correct, so STP rates compare only at the same tolerance; and B and C both miss the fee error, 320 × 250 business days = $80,000 a year, which only the “value accepted within tolerance” KRI will catch.
Put a band of differences inside tolerance only if investigating it costs more per break than the real errors it contains per break. In the worked example the $5-to-$50 band holds $2,000 of real errors across 200 breaks, $10 a break, so it is worth working while a break costs less than $10. Use zero tolerance on identifiers, quantities and client asset reconciliations, pair every per-item tolerance with an aggregate daily cap per account, recalibrate when costs or the error mix change, and never quote an STP rate without its tolerance policy.
A per-item tolerance with no aggregate cap. A feed error shaves $0.99 off 10,000 items a day under a $1 tolerance: every item matches, the STP rate looks perfect and no break is raised. Leakage = 10,000 × $0.99 = $9,900 a day; over 250 business days, 9,900 × 250 = $2,475,000 a year, visible only to the “value accepted within tolerance” KRI. Avoid it by capping what a tolerance may absorb per account per day and raising a break, with maker-checker on any override, when the cap is hit.
What is a good STP rate in reconciliation?
There is no universal benchmark: the rate depends on asset class, feed quality and above all the tolerance policy, and loosening a tolerance raises it without making anything more correct. Track it as a trend at a fixed tolerance, by feed and counterparty, beside aged breaks and manual matches.
Is CLS a central counterparty?
No. CLS is a payment-versus-payment settlement system for foreign exchange: both currency legs settle together or not at all. It does not become buyer to every seller or guarantee trades, so the cost of replacing a failed trade stays with the two counterparties.
What is the difference between a KPI and a KRI in reconciliation?
A KPI measures how the process performs now, such as the STP rate. A KRI is chosen to warn that risk is building before a loss, such as rising aged breaks, more forced matches or reconciliations that did not run. A function can hit its KPIs while its KRIs deteriorate.
The STP rate measures automatic matching and rises whenever tolerances loosen, so it must be read alongside the tolerance policy and KRIs such as aged breaks, forced matches, value accepted within tolerance and reconciliations not performed. Tolerances belong on amounts only, with an aggregate cap, and should sit where investigation cost per break equals the real error it finds. CLS is payment-versus-payment FX settlement, not a central counterparty.
Six questions on this chapter. Decide on your answer first, then click “Reveal Answer.”
1. A reconciliation processes 40,000 items; after tolerances, 320 are routed to people as breaks. What is the reported STP rate?
- 99.2%
- 98.4%
- 99.6%
- 99.8%
Reveal Answer
Answer: A. STP rate = (40,000 − 320) ÷ 40,000 = 99.2%. The figure depends on the tolerance policy, so it compares only across equal tolerances.
2. A band of differences contains 250 breaks a day holding $1,500 of real, recoverable errors. Below what investigation cost per break is the band worth working rather than tolerating?
- $4.00 per break
- $10.00 per break
- $6.00 per break
- $15.00 per break
Reveal Answer
Answer: C. Working the band pays while 250 × c stays below $1,500, so c must be below 1,500 ÷ 250 = $6.00 per break; above that cost, tolerating the band is cheaper on these numbers.
3. What is CLS in foreign exchange settlement?
- A trade repository for FX derivatives
- A payment-versus-payment settlement system
- A correspondent bank for FX payments
- A central counterparty that guarantees FX trades
Reveal Answer
Answer: B. CLS settles both currency legs together or not at all, removing Herstatt risk, but the trade stays between the two banks and is not guaranteed.
4. A feed error shaves $0.99 off thousands of items a day under a $1 per-item tolerance. Which indicator will reveal it?
- The daily STP rate for the account
- The count of aged breaks
- Breaks closed within service level
- Value accepted within tolerance
Reveal Answer
Answer: D. Every item matches, so STP looks perfect and no breaks age; only the total accepted within tolerance, checked against an aggregate cap, shows the leakage.
5. Worked problem: 50,000 items arrive and 97% match automatically. How many breaks need investigation?
Reveal Answer
Answer: 3% × 50,000 = 1,500 breaks.
6. Worked problem: A $5 tolerance would auto-clear 600 of them, and each break costs $8 to investigate. What does that save?
Reveal Answer
Answer: 600 × $8 = $4,800, while the STP rate rises to 98.2%.
- Drehmann, McGuire, Shirakami, Conway and Lovell, Uncovering FX settlement risk, BIS Quarterly Review (June 2026) — PvP 36% ($5.2 trillion a day) and gross bilateral 10% ($1.4 trillion) of FX settlement in April 2025
- BIS, How CLS works: a simplified example (September 2008); BIS Quarterly Review, FX settlement risk remains significant (December 2019) — CLS is PvP, not a central counterparty; Herstatt closure on June 26, 1974
- Basel Committee, Revisions to the principles for the sound management of operational risk (March 2021) — Principle 6 metrics against thresholds; Principle 9 reconciliation as a core control
- SEC press release 2023-29, T+1 and Rule 15c6-2 — Same-day allocation, confirmation and affirmation; T+1 compliance May 28, 2024
- BIS Quarterly Review, “FX settlement risk remains significant” (Dec 2019)
