See Thumbmark in action
This page demonstrates ThumbmarkJS running live in your browser. Your fingerprint and visitor ID are generated in real time.
Identifying your browser...
Calculating thumbmark...
Try running this in your browser
import('https://cdn.jsdelivr.net/npm/@thumbmarkjs/thumbmarkjs/dist/thumbmark.umd.js')
.then(() => {
const tm = new ThumbmarkJS.Thumbmark(
// { api_key: 'your-api-key' } // optional, but changes the response
);
tm.get().then((res) => {
console.log(res)
})
})You should see something like this:
1// Loading ThumbmarkJS data...So what is this?
ThumbmarkJS is a browser fingerprinting library that calculates a unique identifier based on carefully selected browser, device and HTTP request characteristics. This digital fingerprint, called a thumbmark, is designed to be stable across sessions and resistant to simple anti-fingerprinting techniques.
Your visitorId is an even more stable identifier stored both in the browser and server side, glued together by the thumbmark and some logic. The visitorId is generated by the server side, and is therefore not available in the open source version.
In the open source version, the thumbmark is generated from browser characteristics only. When the API is used, the thumbmark becomes more unique due to the added server-side components.
A persistent digital fingerprint for the browser
Refreshing the page or opening it in a new tab or a private tab should not change the thumbmark. If it does change, please open an issue.