How it works

Every field is validated
before it's ever masked.

Synonym doesn't guess at what looks sensitive. Each detector applies the same check-digit rules a bank or registry would use — a value is masked because it actually is a birth number or an IBAN, not because a pattern loosely matched.

Validation

Two gates, not one.

Masked only if it looks right and computes right. Worked example: a Slovak company ID.

try:
3×8
5×7
7×6
6×5
3×4
4×3
6×2
|
9check
The same rule the Slovak business register applies.
Passes both gates
pattern ✓ · checksum ✓
masked → <COMPANY_ID_1>
Passes gate 1, fails gate 2
pattern ✓ · checksum ✗
left alone
Fails gate 1
pattern ✗
left alone
Valid company ID — masked as <COMPANY_ID_1>
Detectors

Four levels of proof.

From strongest proof to opt-in. Names, organisations and places are read in English, Slovak and Czech. Hover a detector for its rule.

Detectors, ordered from strongest proof to opt-in. Language-model detection is rolling out to paid plans.
Checksum-verifiedevery plan
Birth numberIBANCompany IDTax ID / VAT (Tax ID / VAT ID)Bank account (CZ)Credit cardPassport
Format-verifiedevery plan
EmailPhoneBIC / SWIFTIP addressCrypto wallet
Language modelpaid plans · rolling out
Person namesOrganizationsLocations
Opt-inoff by default
Diagnosis codesInsurance IDBlood typeBlood pressure
Languages ENEnglishJane Miller · Acme Ltd · London SKSlovakJán Novák · Alfa s.r.o. · Košice CZCzechPetr Dvořák · Beta a.s. · Brno Checksum and format detectors are language-independent.
Sessions

A key, a map, a wipe.

The map lives in memory on your side, for one session, and then nowhere.

Key issued to youT+0 · once, never stored by us
Mapping lives in memoryevery reply restored from it
WipedT = TTL · 4 h on Free, 24 h on paid
Session key
Token ↔ value map
Original text
You
held by you
in memory, encrypted
never leaves
Synonym
never
never
never
Model
never
never
tokens only
Held in memory only, never written to disk. A restart reveals nothing.

Questions about a specific detector?

Tell us what kind of data you're working with and we'll walk through exactly what gets masked and what doesn't.