Find what's sensitive without sending it anywhere to check.
Three layers run inside the gateway: validated rules, a local NER model for names and addresses, and your own dictionaries. No LLM is involved.
Three layers
Each layer catches what it is good at.
Hover a layer to see what it catches.
Daniel Reed wants to move €2,400 from GB82 WEST 1234 5698 7654 32 to project Atlas. Call him on +44 7700 900123 or daniel.reed@example.com.
Consistency
One person, one token.
Spelling variants of the same name share a token; a partial name does not. Try your own.
| Mention | Compared as | Token |
|---|
Accuracy
Measured per type, not promised.
| Type | Method | Default | Precision | Recall |
|---|---|---|---|---|
| PERSON | Local NER (int8 BERTurk) | On | 94.4% | 99.5% |
| TCKN | Checksum | On | 100% | 100% |
| VKN | Checksum | On | 100% | 100% |
| IBAN | Country format, mod-97 | On | 100% | 100% |
| CARD | Luhn | On | 100% | 100% |
| PHONE | Parsed to E.164 | On | 100% | 100% |
| Pattern | On | 100% | 100% | |
| SECRET | Key and token patterns | On | 100% | 100% |
| ADDRESS | Rules | On | 100% | 63.3% |
| Your rules and dictionary | Regex, exact terms | On | — | — |
| DOB | Planned | — | — | — |
| City, country, amounts, dates | Recognised, passed through | Off | — | — |
Synthetic Turkish and English corpus v1: 6,470 labelled values, strict span match, October 2026. Your data will differ; the local harness scores a labelled sample on your premises.
- Up to 32,000 characters per message by default; above that the send fails closed.
- Every type can be switched on or off per deployment.
Added time at p95, by prompt sizeBar: measured on the benchmark (rules + int8 NER, CPU). Line: our target.
2K chars
177 ms
8K chars
752 ms