Face Recognition Software

Top-rated, American-made.

State-of-the-art facial recognition software featuring NIST-certified algorithms, lightning-fast template generation, and the smallest mobile footprint, all powered by ROC SDK (Software Development Kit).

Unlike other Face Recognition software that requires massive servers and active connectivity, ROC SDK stands alone:

Face Template Size

261 bytes, 7-15x smaller than our closest competitors

Memory Footprint

83 Mb, 10-20x smaller than our closest competitors

Template Generation

193 ms, 2-5x smaller than our closest competitors

Mitigate poison AI risks from foreign-developed technology

ROC SDK is 100% developed in the USA by US citizens and is trusted by Fortune 500 companies and throughout the Department of Defense.

Support ethical AI

We are advocates for the safe and morally sensible use of facial recognition to help solve challenging problems. Check out our Code of Ethics.

Lightweight and built for speed, ROC SDK powers both enterprise and edge-based applications when failure is not an option

ID Proofing to secure online transactions and prevent fraud

Know Your Customer (KYC) to deliver customized experienced and prevent fraud or corruption

Visitor Access and Management for sensitive facilities including schools, hospitals, and government facilities

Forensic Investigations to solve crimes and identify potential threats

Authenticated Government Services when trusted identity is critical

Sensitive Military Operations when identifying friend from foe matters most

Ready to learn more?

To schedule a demo or speak to an expert, please complete this quick survey.

Which capabilities are you interested in?

The ROC Difference

Faster and More Accurate

  • More than 99.5% accurate (NIST FRVT)
  • Ranked #1 in algorithm speed and efficiency
  • Process videos in real-time on mobile devices


Real-world Performance

  • Host millions of identities on a mobile device
  • Identify faces and objects without ideal camera angles or lighting
  • Proven Face Recognition accuracy with masks and sunglasses
  • Hundreds of successful integrations

Easy Integration

  • Free access to development SDK
  • OS and platform agnostic
  • Extensive documentation and sample code
  • Deploy in the cloud, on-prem, or on a mobile device
  • Works with existing camera and VMS systems
  • Be up and running in minutes


How does Face Recognition work?


This is a loaded question! Although it’s hard to answer this easily, our Chief Scientist and Co-Founder, Brendan Klare, elaborates on how Face Recognition software works and some of its use cases in this blog post.

The long story short is that an algorithm injests a photo or video, identifies face(s), and generates a face template, which is a numerical encoding of a face. From there, the template can be compared to another template to determine if they are the same identity (1:1), or it can be compared against a large set of templates to determine if the same identity appears in the set (1:N).

Each Face Recognition algorithm vendor has a different and proprietary approach; this is why each vendor has different levels of performance across various factors. To get a better understanding of the differences in performance between Face Recognition algorithms, the National Institute of Science and Technology (NIST) conducts ongoing 1:1 and 1:N Facial Recognition Vendor Tests (FRVT), which have become the go-to sources for Face Recognition benchmarking across a wide range of conditions and datasets. Here, you can find the most recent NIST FRVT 1:1 and NIST FRVT 1:N reports.

NIST also produces individual “report cards” for all Face Recognition vendors. ROC.ai’s 1:1 and 1:N report cards can be found here.

What sets ROC.ai apart?


ROC is the only Western-Friendly Face Recognition provider (developed entirely in the USA) that NIST FRVT ranks in the top 10 for accuracy and efficiency across all use cases.

Don’t just take our word for it! See the latest NIST FRVT 1:1 and 1:N reports, as well as ROC.ai’s individual 1:1 and 1:N report cards for more details about our performance.

ROC is hardware agnostic which makes us very cost effective, whereas a lot of providers have costly hardware requirements.

ROC's lightweight software package and tiny template size allow for deployment on-edge or in the cloud using minimal computing resources, hence saving the customer from excessive and exorbitant hardware costs.

What is a face template?


A face template is the numerical encoding of a face image that contains uniquely identifying characteristics and allows computers to differentiate between people. They can be generated from a static image or series of video frames. Uniquely identifying characteristics associated with the face image are extracted and represented by a numerical encoding which cannot be reverse engineered to mitigate identity spoofing. Each Face Recognition software vendor has a unique approach for this encoding process. File size and matching speed are critical differentiators in addition to accuracy.

What OS requirements do your products have? What architectures are supported?


The ROC SDK is available for Windows, Mac OS, iOS, Android, and Linux. The ROC SDK supports both x86-64 and ARM processors. For older processors we provide a legacy build for CPUs that do not have the FMA instruction set.

Do you process on the edge or on the cloud?


Both! The ROC SDK performs accurate face matching on-edge and on large-scale cloud applications, given our small file size. And we do it without compromising performance, so we can work equally as well on large enterprise applications.

What types of use cases do you support?


ROC.ai currently supports a broad range of use cases across both the public and private sectors. We work heavily in the commercial space, especially FinTech, and power ~50% of the ID-proofing community, including various online banking, eKYC, and anti-fraud solutions. Within the public sector, we power over a dozen law enforcement agencies and several large federal customers. We are also proud to work with several organizations addressing social issues like human trafficking, child exploitation, counterterrorism, and election participation.

What is the largest gallery of face images that ROC.ai can support?


The sky is the limit! We understand that each of our partners have different requirements, and we have developed our Face Recognition capabilities with this in mind. Our products support galleries in the order of millions. Currently, our largest deployment supports a federal government organization with a 500M template gallery.

Do you work with masks?


Yes. In response to COVID, ROC.ai applied its extensive data collection and research capabilities on the challenge of uniquely recognizing people wearing face masks using only the eye/eyebrow region of the face.

Does your face recognition algorithm work on children?


Yes, ROC.ai is very accurate when used on children. However, there are important nuances to this answer.

  1. Rapid physiological development – Early adolescence is a time in physiological development when the face and cranium experience major changes.
  2. Availability of data – Face Recognition algorithms exhibit high performance on population segments on which they have been trained. Training data for minors is not as readily available as data for adults.
  3. The time span between enrollment and subsequent matching is especially important to consider when Face Recognition systems are used with younger populations. Overall, we estimate that Face Recognition works well on people over the age of 11.

How good are ROC.ai’s Face Recognition capabilities?


Thanks for asking! We are extremely proud of our Face Recognition performance, which is at the core of who we are as an AI/ML company. The ROC.ai Face Recognition algorithm consistently ranks in the top tier of accuracy, template size, and enrollment speed of algorithms in the world according to the NIST FRVT. We also conduct regular internal benchmarking, which affirms our ability to turn around new and improved algorithms fast.

We recommend consulting the NIST FRVT 1:1 and 1:N reports, which presents a full-picture of each Face Recognition algorithm vendor’s performance, as well as how they stack up against each other.

What is your approach to bias?


ROC.ai believes that bias in facial recognition is not a topic that should be ignored. We have made it a priority to limit bias within our algorithm as much as possible, and it shows. Our technology continues to exhibit minimal differences in error rate between racial and gender cohorts. This blog post has more information (section on “Algorithmic Bias”). We are constantly working to improve the accuracy of our algorithms, including reducing gender and racial bias.

What is your approach to privacy?


ROC.ai believes that preserving privacy should be a primary consideration of facial recognition vendors. We have led the industry in adopting a comprehensive code of ethics and advocating for ethical use of AI across the board. ROC.ai strictly complies with any and all laws and regulations relating to privacy, data security, data protection, and processing, transfer, disclosure, sharing, storing, security and use of personal information, as applicable in any jurisdiction where it is used. In addition, ROC.ai has developed features like “face blurring” which protect the identity of all except persons of interest.

Fraud is a big issue in facial recognition. How does ROC.ai tackle spoofing?


We use a single image/single frame and have several models looking for spoofs on laptops, glossy photos, printer paper and phones. ROC has a US patent for its proprietary passive biometric liveness detection. The method uses micro-texture analysis to confirm the authenticity of a biometric image during the matching process. ROC's liveness detection does not require the use of any specialized hardware, and is able to perform the liveness check using only the standard RGB cameras found in smartphones, security cameras, and other devices. It also does so using only a single image or video frame, which minimizes the amount of processing bandwidth needed to carry out the check.