Browser-Based Anti-Spoof Engine

Face Liveness That Runs Entirely in the Browser

Passive, Client-Side, Zero Backend Required

Pixl Face Liveness Check is a client-side face liveness & anti-spoof engine — the web counterpart to Pixl's native Android detector. Every check runs on-device, in the page, with no camera frame ever leaving the browser.

At a glance
9 Gated Pipeline Stages
468 3D Facial Landmarks
16 Frames per Verdict (~2s)
0 Frames Sent Off-Device
Works Fully Offline
On-Device Analyzer
Capturing 16 Frames
Stage: Landmark Mapping
Hold Still…
On-Device Verdict
"frames_evaluated": 16,
"real_vote_share": "93.7%",
"spoof_detected": false,
"frames_sent_off_device": 0
Privacy-First

No camera frame ever leaves the browser — every check, model and score is computed on the visitor's own device.

No App Required

Runs in any modern browser tab that already asks a user to face a camera — no native install and no live backend to stand up.

One Family, Two Platforms

Shares its detection logic and model assets with Pixl's native Android FaceSpoofDetector — this is the web port of that same pipeline.

Browser-Based Detection Engine

What is Face Liveness Check?

Pixl Face Liveness Check is a browser-based face liveness & anti-spoof engine. A capture only reaches a verdict after passing nine sequential gated checks — each one able to reject the frame before liveness scoring even runs. Everything happens client-side, inside the page.

Because every check runs on-device, teams get a privacy guarantee that a server-side check simply can't offer:
  • 468 3D facial landmarks tracked per frame for consistent measurement.
  • A dual-model anti-spoof ensemble scored at two independent crop scales.
  • 16 frames captured over roughly two seconds, majority-voted before a verdict.
  • Every dependency bundled with the page — no CDN calls at runtime, works fully offline.
Get Started
Capabilities

Key Benefits

What "liveness detection" actually means for this engine — a real, gated feature list, not a single score.

On-Device Privacy

No camera frame or captured image is ever transmitted off the device — the whole engine runs inside the browser tab.

468-Point Facial Mapping

3D landmarks plotted across the face form the coordinate basis for distance, pose, brightness and glare checks.

Dual-Model Anti-Spoof Ensemble

The face is cropped at two independent scales and scored by two dedicated anti-spoof models, combined into one signal.

Multi-Frame Temporal Voting

A single passing frame is never a verdict — 16 frames are captured over ~2 seconds and majority-voted first.

Anti-Injection Camera Screening

Screens the device label against known virtual/software cameras before a face is ever evaluated.

Works Fully Offline

Every dependency ships bundled with the page — no CDN calls at runtime, so it keeps working once loaded.

Process Flow

The Verification Pipeline

A capture only reaches a verdict after passing nine sequential gated checks — this sequence is the actual feature list.

01 Anti-Injection

Camera Acquisition

Requests the camera with progressively looser constraints and screens the device label against known virtual/software cameras.

02 MediaPipe · BlazeFace

Face Detection

Locates a single face in frame. Frames with zero faces or more than one face are rejected outright.

03 MediaPipe FaceLandmarker

Landmark Mapping

468 3D landmarks are plotted across the face — the coordinate basis every later measurement reads from.

04 Geometry Check

Distance Gate

Estimates camera-to-face distance from interocular spacing, holding the user inside a fixed working range.

05 Pose Check

Frontal-Pose Gate

Confirms eyes are level and the nose is centered within a tight tolerance, ported from Pixl's Android detector.

06 Luma Check

Lighting Gate

Samples brightness across forehead, cheeks and chin, rejecting underlit or one-sided lighting.

07 Glare Check

Eyeglass-Glare Gate

Flags specular highlights and colored-lens reflections that would otherwise blind the texture signal.

08 Dual-Model Ensemble

Liveness Ensemble

Cropped at 2.7× and 4.0× the face box and scored by two dedicated anti-spoof models, combined into one signal.

09 Temporal Voting

Multi-Frame Capture & Verdict

16 frames are captured over roughly two seconds and majority-voted before the user sees a result.

Verdict Logic

How the Accuracy Model Works

There's no single "accuracy score" — a pass is a temporal vote across a whole capture window, gated by two thresholds at once.

Capture window: 16 frames, ~130ms apart (≈2.0s total)
Per-frame signal: combined output of 2 models, 2 crop scales
Majority requirement: ≥ 60% of frames vote "real"
Confidence requirement: ≥ 85% averaged real-class confidence

PASS only when both conditions hold at once — otherwise the check returns to "Hold still…"

Concrete Proof Point

In testing, holding a printed/screen photo up to the camera scored 54.9% average real-confidence — well under the 85% bar, and correctly rejected. A spoof attempt that would slip past a naive "which class is highest" check gets caught by the confidence bar.

Note

The 85% / 60% thresholds are engineering-set operating points tuned against known failure cases — not a certified accuracy, FAR or FRR figure from a labeled benchmark dataset. This is how the check works, not a percentage we publish as a benchmark claim.

Under the Hood

SDK Profile: What Ships Today

Useful for scoping what claims are accurate about the product's current form factor.

Type Browser-based engine, vanilla HTML/CSS/JS
Where It Runs 100% client-side, inside the page
Model Runtime MediaPipe Tasks Vision + TensorFlow.js
Footprint Bundled with the page, no runtime CDN calls
Platform Family Shares logic with Android FaceSpoofDetector

Browser Support

Desktop Chrome, Edge, Firefox, Safari
Android Chrome, Samsung Internet, Firefox, WebViews
iOS Safari
Requirement Secure context (HTTPS or localhost)
Applications

Where It Fits

Confirmed fit today, plus how digital teams are framing it for specific industries.

Confirmed by the Product Itself
Any web property that already asks a user to face a camera in-browser — no native app install required
Contexts that need an on-device privacy guarantee ("nothing leaves the browser")
Deployments that need to keep working with no live backend / offline
Products already on Pixl's native Android SDK, wanting a matching web step
Well-Suited Use Cases
Digital onboarding / KYC for fintech and neobanks
Remote proctoring & exam identity checks
Access control for web portals (HR, healthcare, member sites)
Browser-based attendance / check-in kiosks
Age-gated content and age-verification flows
FAQs

Frequently Asked Questions

Answers to common queries about Pixl Face Liveness Check.

Passive liveness detection verifies a real person is in front of the camera without asking them to blink, turn their head or follow any on-screen prompt. Pixl Face Liveness Check runs a nine-stage gated pipeline and a dual-model anti-spoof ensemble across a short capture window to reach a verdict passively.

No. Pixl Face Liveness Check runs entirely client-side in the browser tab. No camera frame or captured image is ever transmitted off the device, and every model dependency is bundled with the page so it keeps working fully offline once loaded.

Chrome, Edge, Firefox and Safari on desktop; Chrome, Samsung Internet, Firefox and embedded WebViews on Android; and Safari on iOS. A secure context (HTTPS or localhost) is required for camera access.

Camera acquisition screens device labels against known virtual/software cameras before a face is ever evaluated, and the dual-model anti-spoof ensemble is tuned to catch printed-photo and screen-replay attacks, alongside known virtual-camera spoofing.

Yes. Pixl Face Liveness Check shares its detection logic and model assets with Pixl's native Android FaceSpoofDetector — this is the web port of that same pipeline, for any web property that needs a matching in-browser step.

See It On Your Own Site

Try Pixl Face Liveness Check

Add a browser-based, privacy-first liveness step to your onboarding, proctoring or access-control flow — no live backend required.

Nothing Leaves the Browser

No camera frame or captured image is ever transmitted off-device.

Works Fully Offline

Every dependency is bundled with the page — no runtime CDN calls.

~2 Second Verdict

16 frames captured and majority-voted before the user sees a result.

One Family, Two Platforms

Same detection pipeline as Pixl's native Android SDK.

Contact Form