-
Notifications
You must be signed in to change notification settings - Fork 26
Comparison vs Alternatives
How FaceX stacks up against the usual suspects for face recognition, detection, and liveness in a web app.
| Need | Pick |
|---|---|
| 100% client-side, no per-call cost | FaceX |
| Cheapest "I just want a REST API" | AWS Rekognition / Azure Face |
| Best-in-class accuracy regardless of price | Paravision / Idemia / FaceTec ZoOm |
| Pure detection only, lightweight | MediaPipe / YuNet |
| Top open-source SOTA recognition | InsightFace (server-side) |
| Vendor | Accuracy (LFW) | Latency | Where it runs | Cost |
|---|---|---|---|---|
| FaceX xs | 99.07% | 3 ms native / 25 ms browser | client | $0 |
| FaceX standard | 98.25% | 2.6 ms | client | $0 |
| FaceX tiny | 96.85% | 2.1 ms | client | $0 |
| FaceX nano | 95.62% | 1.4 ms | client | $0 |
| AWS Rekognition | ~99% (undisclosed) | 250–500 ms | AWS region | $1.00 / 1k calls |
| Azure Face API | ~99% | 200–400 ms | Azure region | $1–1.50 / 1k |
| Google Vision | ~99% (no detail) | 200–400 ms | Google DC | $1.50 / 1k |
| InsightFace ArcFace-R100 | 99.83% | 17 ms (server GPU) | server | self-host |
| dlib face_recognition | 99.38% | 50+ ms | client/server | $0 |
| MediaPipe FaceMesh + embedding | n/a | 30 ms | client | $0 |
Note: cloud vendors' numbers are largely undisclosed and depend on their internal models. The "$0" for FaceX assumes you self-host (which is the whole point — no server is involved for the browser pipeline).
| Engine | Size | Latency | Architecture |
|---|---|---|---|
| FaceX detector | 401 KB | <1 ms (WASM) | FCOS-style, our training |
| YuNet (OpenCV) | 230 KB | 1–2 ms | YuNet, OpenCV bundled |
| MediaPipe Face Detection | 600 KB | 1–2 ms | BlazeFace |
| dlib HOG | 30 KB | 100+ ms | classical |
| MTCNN | 1.5 MB | 40 ms | 3-stage cascade |
| RetinaFace-mobile | 1.7 MB | 10 ms | RetinaFace |
For 320×320 input on a webcam-scale problem (one or two faces, ≥30 px), all of these work fine. FaceX detector is the smallest in its accuracy class and ships under Apache 2.0 with no extra dependencies.
| Solution | Type | Cost | Accuracy on real attacks |
|---|---|---|---|
| MiniFASNet (via FaceX nn2) | passive RGB | $0, Apache 2.0 | ~99% on Silent-Face test set |
| FaceTec ZoOm | active liveness | $$$/year licensed | iBeta Level 2 certified |
| iProov | active liveness | $$$/year licensed | iBeta Level 2 certified |
| AWS Rekognition Liveness | active | $0.0075/check | iBeta Level 1 |
| Innovatrics IDLive | passive + active | $$$ licensed | iBeta Level 2 |
For high-stakes KYC / banking you still want an active-liveness vendor. For consumer apps / kiosks / attendance / proctoring, passive MiniFASNet via FaceX is usually enough and is free.
| Provider | Monthly cost |
|---|---|
| FaceX (any size, runs in-browser) | $0 |
| AWS Rekognition CompareFaces | $3,000 |
| Azure Face API verify | $3,000–4,500 |
| Google Vision FACE_DETECTION | $4,500 |
| FaceTec ZoOm | $10K+/year flat |
| Paravision / Idemia / NEC | $50K+/year licensed |
The savings are nice. The compliance angle is the bigger win: photos never leave the device → automatic GDPR Art. 9 / HIPAA / Russia 152-ФЗ / KZ data-residency compliance with zero legal work.
-
Their margin requires a server call. You can't sell
$1/1kif the customer can run inference for free in their browser. -
Most cloud SDKs require Python + 28 MB of
onnxruntime. FaceX ships a 17 MB encrypted bundle, decrypts in 200 ms, inference in 25 ms, no Python. - Browser-first design. WASM, WebCrypto, onnxruntime-web — most vendors' web SDKs were retrofitted from mobile/server.
- You need iBeta-certified PAD Level 2 — go to FaceTec / Innovatrics
- You need face search across millions of identities at sub-100ms — go to Pinecone/Milvus with InsightFace embeddings server-side
- You need legally guaranteed accuracy SLA — that's enterprise vendors with insurance
- You need age/gender/emotion analytics on every frame at scale — AWS/Azure have those models pre-built
For everything else: FaceX gets you 90% of the way for 0% of the cost.