Pillar 01
The Science Predates Us By Decades
Paul Ekman and Wallace Friesen spent two decades building the Facial Action Coding System. It maps a measurable movement of the face to a numbered Action Unit. Clinics, security teams, and sport psychologists have used it since the 1990s. We did not invent it. We implemented it at scale, in a browser, on any video you hand us.
Ekman and Friesen published FACS in 1978. It is peer-reviewed and replicated.
Pillar 02
The Pipeline Is Open to Inspection
We run Google's MediaPipe FaceMesh, an open-source model that maps 468 points on a face up to 30 times a second. The model in your browser is the one in Google's published research. From those points we work out eye openness, head pose, and Action Unit proxies. A proxy is a stand-in measure built from published rules about the geometry. Each formula carries a citation.
Face mesh: Kartynnik et al. (2019). Blink measure: Soukupova and Cech (2016).
Pillar 03
We Do Not Keep Your Video
This is a build decision, not a policy line. On the in-browser path the whole vision pipeline runs on your device and the file stays in browser memory. Four things route it to a GPU server instead: room mode, a second camera, a probe that finds 20 or more faces, or a browser that cannot decode the file. On that path the video is deleted once the run finishes, and within 60 minutes if the run is abandoned or fails. We keep the derived numbers. The app tells you which path your clip took.
Open your network inspector during an in-browser run. You will see no upload of your video file. On the server path you will see the upload, which is the honest tell.
Pillar 04
Confidence Is Shown, Not Hidden
Each finding carries a level: High, Medium, Low, or Abstain. The level tracks the data behind the finding, meaning how many frames we read, how often we found the face, and how steady the signal held. Abstain means the engine did not have enough reliable data, so it says nothing. A read from 12 shaky frames is not a read from 400 stable ones, and the report tells you which you have.
A quality gate runs first. The floors are 10 seconds of footage, a face in half the frames, and a quality score of 0.3. Below any floor, the run abstains.
Pillar 05
Raw to Insight, in Three Layers
Paid reports carry a three-layer signal view. Layer one is the raw measurement. Layer two is how that measurement moved over time. Layer three is the read we draw from it. If a finding looks strange, trace it back to the number underneath and discard it. That decision stays yours.
Layer 1: Action Unit strengths, eye-opening values, frame counts. Layer 2: rolling means, spikes, trend direction. Layer 3: a read stated as a likelihood, with its evidence chain.
Pillar 06
Probabilistic Language Is Not Weakness
AU4 is the brow furrow. When it fires more often, that is linked with mental effort and stress. A swing in blink rate is a stand-in for mental load. These are links, so we write findings as likelihoods and put a confidence level on each one. A tool that speaks in absolutes about people is not more powerful. It is less honest.
A likelihood finding carries a mark, and a plain note on what the signal tracks.
Pillar 07
Each Analysis Sharpens the Next
Analyses feed a pooled set of anonymised numbers, designed to hold benchmark spreads, signal shapes over time, and how close past projections came. The pool holds numbers, not footage. It is not populated yet, so no benchmark position is offered today.
Cohort tracking is opt in and stores a one-way SHA-256 hash, which cannot be turned back into a person. You can opt out at any time, and your read is the same either way.
Compliance
The questions counsel asks first.
Is my video uploaded or stored?
A standard read runs on your device, and nothing is uploaded. Room mode, a second camera, a probe that finds 20 or more faces, or a file your browser cannot decode will route it to a GPU server instead, where it is deleted once the run finishes. Either way we keep the derived numbers, not the video.
Is GRW Project GDPR compliant?
Under GDPR Article 9, biometric data used to identify a person is special category data. GRW does not identify anyone. A standard read runs on your device, and we keep derived numbers rather than footage. The build is designed to support compliance.
Is GRW Project BIPA compliant?
BIPA is short for the Illinois Biometric Information Privacy Act. Its main trigger is one-to-one identification. That means matching a face to a named person. GRW reads behaviour, not identity. We ask for consent before any biometric analysis runs, and we honour deletion requests.
Is GRW Project PIPEDA compliant?
Canada's federal privacy law asks for consent and for collecting as little as you can. Taking part is opt in, analysis runs on your device where it can, and we keep derived numbers rather than footage. You stay responsible for the rules in your own jurisdiction.
If you made it this far,
you're the right kind of user.
Run a free analysis. Trace a finding back to its raw number. Then decide.