Typing biometrics authentication API based on keystroke dynamics


Our typing biometrics authentication API (also known as keystroke
dynamics) is suitable for securing login, enforcing reset passwords, and
online biometric authentication. Any developer can start using it.

3 Easy steps to get you started


Sign up

Get your developer account.


Download SDK

Available SDK with code samples.


Quick integration

RESTful API solution for quick integration.

Get started - it's free

Typing biometrics authentication

Catch fraudster instantly

Recognize the user’s true identity on the spot. Our typing biometrics authentication API provides a real-time matching score (numeric 0-100%).

Seamless authentication

Your end-users don’t have to suffer for added protection. Typing biometrics enables frictionless keystroke authentication in the background of any typed text. Moreover, there is no need for additional browser permissions. In short: No impact on the UX!

Text characteristics

TypingDNA supports repetitive text (e.g. login authentication credentials) and any text (e.g. writing an email) recognition, so that you can use it in any typing scenario.



Quick integration

The simple RESTful API and documentation we provide allow developers to deploy in a few days.

Developers dashboard

Manage API credentials and see advanced stats about the API usage that is performed from your account.

Scalable and reliable

TypingDNA services run on Microsoft Azure Cloud Computing and are built to be easily scalable.



Device and language

Keystroke authentication provided by TypingDNA works on desktops and smartphones, and supports most languages. Actually, keyboard layouts are mostly the same across different languages.

One enrollment

TypingDNA’s unique approach allows you to authenticate a user starting with only one previous enrollment.

Automated identity verification

There is no more need for manual identity checks. Verify the identity of millions of users with our automated keystroke dynamics API approach.


Frequently asked questions

What is recorded in a typing pattern?

Our main “typing pattern” is an array of numbers, keystroke dynamics statistics about 44 keys that are used most of the time.

Every time we collect a typing pattern (regardless of a number of pressed keys), we get a 320 feature vector. We released a JavaScript class that is able to record the keystroke dynamics typing patterns in any web page/app.

How unique are the typing patterns?

Any two typing patterns are different, even those from the same individual. In order to perform typing biometrics authentication you need to rely heavily on artificial intelligence/machine learning.

Matching a pattern against others preserving high accuracy, high speed, and low cost is not an easy job.

What about pricing?

You have the possibility to try our API for free for a limited time.
Visit our pricing page, for more info.

How does the API work?

Any app that wants to authenticate a user needs to have at least one previous keystroke dynamics based typing pattern from that user, that is usually recorded when the user creates a new account.

To perform an authentication the app will record a new pattern (with 2 lines of code, using our JS class) will pass it to their server and will call our REST JSON API with 2 or more patterns.

The API logs the call, verifies the API key and returns the matching result from a worker server that does only matching between 2 or more patterns (a redundant solution with stateless servers).

Once the app gets the result it can decide what to do with it (usually, this is a part of a two-factor authentication system that may also be based on location, cookies, passwords, tokens or other biometrics). More about how it works, see our API documentation.

Ready to secure your project?
Get API access, or reach us.

Free API sign up Contact sales