Onfido logo home page
Get in touch
Try it now
Arrow back Back to guides

Facial Similarity reports

Start here

This guide presents a technical overview of Onfido's Facial Similarity report.

Introduction

Onfido's Facial Similarity reports compare the most recent live photo, live video or motion capture provided by an applicant during an identity verification flow to the face on their most recently captured identity document (such as passports or national ID cards). Where the document has two sides, Onfido will search both sides of the document for a face. Facial Similarity reports are designed to prove identity document ownership, so that only the owner of the identity document can use it to verify their identity and access services.

Onfido offers four types of Facial Similarity report: Photo, Photo Fully Auto, Video and Motion.

Photo and Photo Fully Auto

In Facial Similarity Photo and Photo Fully Auto reports, images and data are extracted from identity documents using machine learning, and then compared to a live photo taken and submitted by the applicant during their identity verification journey. The report assesses whether the holder of the identity document is the same person as the one on the identity document, while also ensuring the selfie image is a live capture taken by the applicant at the time of submission.

The Photo report uses a combination of algorithms and expert manual review by Onfido's super recognizer analysts to return a result.

The Photo Fully Auto report is intended to be paired with manual review by your own team, and does not include expert review by Onfido's super recognizer analysts. This guarantees faster results, but it also means more reports could potentially end with faces not being detected, or with users incorrectly rejected.

Photo and Photo Fully Auto API response breakdown tree

The result for both Photo and Photo Fully Auto reports can be clear or consider, returned in the output object of a Studio workflow run. The report result is determined by the results of individual breakdowns and sub-breakdowns.

The following diagram shows how these breakdowns and sub-breakdowns are mapped to particular results:

Face Photo breakdown tree

Breakdown descriptions


Breakdown Sub-breakdown(s) Description
Visual authenticity Asserts whether the person in the live photo is real and not a spoof.
Spoofing detection Contains a score value between 0 and 1 which expresses the likelihood that the live photo is real, where 0 represents a spoofed image and 1 represents a real image.
Face comparison Asserts whether the face in the document image matches the face in the live photo.
Face match Contains a score value between 0 and 1 which expresses how similar the document image face and live photo are, where 1 represents a perfect match.
Image integrity Asserts whether the quality and integrity of the uploaded files were sufficient to perform a face comparison.
Face detected Asserts that a single face of sufficient quality was found in both the document image and the live photo.
Source integrity Asserts whether the source of the live photo is trustworthy. For example, it has not been digitally tampered with or was not taken from a fake webcam. This sub-breakdown also asserts whether the applicant's document is issued by a country subject to comprehensive US sanctions.

Complete details regarding the structure of Facial Similarity Photo and Photo Fully Auto reports and example results can be found in our API reference documentation.

Motion

In addition to extracting images and data from identity documents, Facial Similarity Motion provides added security for high-risk users or transactions, in a fully automated fashion. In addition to confirming a user's face matches their document upload, Motion also assesses liveness by asking users to complete a simple head turn pattern in both directions.

Motion API response breakdown tree

The result for Motion reports can be clear or consider, returned in the output object of a Studio workflow run. The report result is determined by the results of individual breakdowns and sub-breakdowns.

The following diagram shows how these breakdowns and sub-breakdowns are mapped to particular results:

Face Motion breakdown tree

Breakdown descriptions


Breakdown Sub-breakdown(s) Description
Visual authenticity Asserts whether the person in the motion capture is real (not a spoof) and live.
Spoofing detection Contains a score value between 0 and 1 which expresses the likelihood that the motion capture is real, where 0 represents a spoofed capture and 1 represents a real motion capture.
Liveness detected Asserts whether the head turn completion pattern was executed correctly.
Face comparison Asserts whether the face in the document matches the face in the motion capture.
Face match Contains a score value between 0 and 1 which expresses how similar the face in the document image and motion capture are, where 1 represents a perfect match.
Image integrity Asserts whether the quality and integrity of the uploaded files and the content contained within them were sufficient to perform a face comparison.
Face detected Asserts that a single face of sufficient quality was found in both the document image and the motion capture.
Source integrity Asserts whether the source of the live photo is trustworthy. For example, it has not been digitally tampered with or was not taken from a fake webcam. This sub-breakdown also asserts whether the applicant's document is issued by a country subject to comprehensive US sanctions.

Complete details regarding the structure of Facial Similarity Motion reports and example results can be found in our API reference documentation.

Video

Facial Similarity Video also provides added security for high-risk users or transactions. In addition to confirming a user's face matches their document upload, the report also assesses liveness by asking the user to record themselves repeating out loud 3 randomized digits displayed on their device screen and performing a randomized head turn movement.

The Facial Similarity Video report uses a combination of algorithms and expert manual review by Onfido's super recognizer analysts to return a result.

SDK localization

We recommend that you localize the strings if you're using one of the Onfido SDKs, to ensure that users understand the liveness head turn and speaking instructions.

By default, the Onfido SDKs detect the language to use from the user's device or browser settings. We recommend, however, you pass the code for the expected language to the locale mechanism, in any of the Onfido SDKs:

  • iOS SDK - pass the onfido_locale parameter
  • Android SDK - pass the onfido_locale parameter
  • Web SDK - pass the locale parameter

The following languages are supported for string localization:

Language name Language code
English "en"
Spanish "es"
Indonesian "id"
Italian "it"
German "de"
French "fr"
Portuguese "pt"
Polish "pl"
Japanese "ja"
Dutch "nl"
Romanian "ro"
Basque "eu"
Catalan "ca"
Galician "gl"
Chinese "cn"
Turkish "tr"
Malay "ms"

Some string localizations are available out of the box, but this differs for each SDK.

You can also provide your own custom translations to your users.

Video API response breakdown tree

The result for Video reports can be clear or consider, returned in the output object of a Studio workflow run. The report result is determined by the results of individual breakdowns and sub-breakdowns.

The following diagram shows how these breakdowns and sub-breakdowns are mapped to particular results:

Face Video breakdown tree

Breakdown descriptions


Breakdown Sub-breakdown(s) Description
Visual authenticity Asserts whether the person in the live video is real and not a spoof.
Spoofing detection Contains a score value between 0 and 1 which expresses the likelihood that the live video is real, where 0 represents a spoofed video and 1 represents a real video.
Liveness detected Asserts whether the numbers and head movements were executed correctly during the live video task.
Face comparison Asserts whether the face in the document image matches the face in the live video.
Face match Contains a score value between 0 and 1 which expresses how similar the document image face and live video are, where 1 represents a perfect match.
Image integrity Asserts whether the quality and integrity of the uploaded files were sufficient to perform a face comparison.
Face detected Asserts that a single face of sufficient quality was found in both the document image and the live video.
Source integrity Asserts whether the source of the live photo is trustworthy. For example, it has not been digitally tampered with or was not taken from a fake webcam. This sub-breakdown also asserts whether the applicant's document is issued by a country subject to comprehensive US sanctions.

Complete details regarding the structure of Facial Similarity Video reports and example results can be found in our API reference documentation.

Facial Similarity Report task

Onfido Studio features workflow tasks for all four Facial Similarity report variants. When constructing a Studio workflow, a Facial Similarity Report task must always follow the path of a Document Capture task and a Face Capture task (which also has photo, video and motion variants) in order to extract the appropriate task input data to make the comparison.

It is also highly recommended that the workflow include a Document Report task.

Below you will find an illustrated example of a Studio workflow running a Facial Similarity report:

Facial Similiarity workflow

More information about report tasks can be found in our Studio Product Guide.

Facial Similarity Report task results

If you wish to obtain the specific outputs from the Facial Similarity Report Task via the Onfido API (for example, the overall report result or breakdown results), you can manage this by configuring the Workflow Output in the Studio Workflow Builder. You can also retrieve all associated output data from a Facial Similarity report.

You can refer to our Studio product guide for more information on Workflow Output configuration. Once set up, the output can be consumed by making a Retrieve Workflow Run call to the Onfido API. Report results are found in the output property.

Workflow Run results can also be accessed on the "Results" tab of your Studio Dashboard.

Onfido

Our solutions

Onfido uses 256-bit SSL encryption 100% of the time on every device.

BSI ISO/IEC27001

Onfido has been certified by BSI to ISO 27001 under certificate number IS 660122.

© Onfido™, 2022. All rights reserved.
Company Registration Number: 07479524.