Fingerprint metrics
Samples109
Distinct fp_id5
Globally unique16.7%
Unidentifiable91
Invalid stored rows0
fp_id produced nothing — it is still stored and still scored.
Verdicts
Consistent: 9 · Suspicious: 83 · Spoofed: 17
Labelled evaluation
TPR: pending labelled data · FPR: pending labelled data · Stability: pending labelled data
0 legitimate labels · 0 spoof labels · 0 repeated profiles. Detection means risk ≥ 20. These values stay pending until labelled data exists.Collector coverage
| Collector | Completed | Coverage |
|---|---|---|
| audio | 93 | 85.3% |
| canvas | 109 | 100.0% |
| css_env | 96 | 88.1% |
| engine_version | 99 | 90.8% |
| entry_types | 93 | 85.3% |
| fonts | 103 | 94.5% |
| globals | 97 | 89.0% |
| hostcaps | 93 | 85.3% |
| js_errors | 101 | 92.7% |
| locale | 93 | 85.3% |
| math | 101 | 92.7% |
| media_caps | 90 | 82.6% |
| navigator | 109 | 100.0% |
| permissions | 91 | 83.5% |
| realm | 93 | 85.3% |
| screen | 94 | 86.2% |
| tamper | 101 | 92.7% |
| timezone | 102 | 93.6% |
| voices | 63 | 57.8% |
| webgl | 39 | 35.8% |
| webgl2 | 39 | 35.8% |
| webgpu | 1 | 0.9% |
| webrtc | 18 | 16.5% |
Signal and field distributions
Preliminary local observations; not calibrated population claims.
| Signal | Present | Distinct | Entropy bits | Unique values |
|---|---|---|---|---|
| audio | 93 | 9 | 1.764 | 4.3% |
| audio.failed_probes | 93 | 1 | -0.000 | 0.0% |
| audio.metadata.base_latency | 93 | 3 | 0.299 | 0.0% |
| audio.metadata.max_channel_count | 93 | 4 | 1.431 | 0.0% |
| audio.metadata.output_latency | 93 | 1 | -0.000 | 0.0% |
| audio.metadata.sample_rate | 93 | 2 | 0.459 | 0.0% |
| audio.metadata.state | 93 | 2 | 0.150 | 0.0% |
| audio.probes | 93 | 3 | 1.127 | 0.0% |
| canvas | 109 | 13 | 2.148 | 4.6% |
| canvas.combined_hash | 109 | 13 | 2.148 | 4.6% |
| canvas.errors | 109 | 1 | -0.000 | 0.0% |
| canvas.probes | 109 | 13 | 2.148 | 4.6% |
| canvas.readback | 109 | 1 | -0.000 | 0.0% |
| canvas.runtime.context_attributes | 109 | 2 | 0.378 | 0.0% |
| canvas.runtime.data_url_length | 109 | 2 | 0.378 | 0.0% |
| canvas.runtime.data_url_prefix | 109 | 1 | -0.000 | 0.0% |
| canvas.runtime.image_data_available | 109 | 1 | -0.000 | 0.0% |
| canvas.runtime.image_data_members.color_space | 109 | 2 | 0.378 | 0.0% |
| canvas.runtime.image_data_members.color_space_value | 8 | 1 | -0.000 | 0.0% |
| canvas.runtime.image_data_members.pixel_format | 109 | 2 | 0.378 | 0.0% |
| canvas.runtime.image_data_members.pixel_format_value | 8 | 1 | -0.000 | 0.0% |
| canvas.runtime.to_data_url_available | 109 | 1 | -0.000 | 0.0% |
| canvas.stability.first_hash | 109 | 10 | 1.816 | 2.8% |
| canvas.stability.identical | 109 | 1 | -0.000 | 0.0% |
| canvas.stability.second_hash | 109 | 10 | 1.816 | 2.8% |
| canvas.text_metrics | 109 | 10 | 1.791 | 2.8% |
| fonts | 103 | 8 | 1.557 | 2.9% |
| fonts.detected | 103 | 5 | 1.361 | 0.0% |
| fonts.detected_hash | 103 | 5 | 1.361 | 0.0% |
| fonts.generics | 103 | 8 | 1.557 | 2.9% |
| fonts.probes | 103 | 8 | 1.557 | 2.9% |
| fonts.resolution_targets | 103 | 8 | 1.557 | 2.9% |
| h2 | 109 | 2 | 0.378 | 0.0% |
| header_order | 109 | 8 | 0.692 | 3.7% |
| ja4 | 109 | 5 | 1.530 | 0.9% |
| ja4h | 109 | 9 | 1.526 | 3.7% |
| math | 101 | 2 | 0.240 | 0.0% |
| math.chains.hash | 101 | 1 | -0.000 | 0.0% |
| math.chains.probes | 101 | 1 | -0.000 | 0.0% |
| math.combined_hash | 101 | 2 | 0.240 | 0.0% |
| math.errors | 101 | 1 | -0.000 | 0.0% |
| math.fixed.hash | 101 | 1 | -0.000 | 0.0% |
| math.fixed.probes | 101 | 1 | -0.000 | 0.0% |
| math.ieee754.hash | 101 | 2 | 0.240 | 0.0% |
| math.ieee754.probes | 101 | 2 | 0.240 | 0.0% |
| math.js_wasm | 101 | 1 | -0.000 | 0.0% |
| math.js_wasm_hash | 101 | 1 | -0.000 | 0.0% |
| math.matrix.hash | 101 | 2 | 0.240 | 0.0% |
| math.matrix.probes | 101 | 2 | 0.240 | 0.0% |
| math.simd.bit_equal | 101 | 1 | -0.000 | 0.0% |
| math.simd.hash | 101 | 1 | -0.000 | 0.0% |
| math.simd.scalar | 101 | 1 | -0.000 | 0.0% |
| math.simd.simd | 101 | 1 | -0.000 | 0.0% |
| math.simd.supported | 101 | 1 | -0.000 | 0.0% |
| media_caps | 90 | 90 | 6.492 | 100.0% |
| media_caps.active_decode | 90 | 90 | 6.492 | 100.0% |
| media_caps.decoding | 90 | 8 | 1.633 | 3.3% |
| media_caps.encoding | 90 | 4 | 1.247 | 0.0% |
| media_caps.html_playback | 90 | 3 | 0.176 | 2.2% |
| media_caps.media_recorder | 90 | 2 | 0.154 | 0.0% |
| media_caps.media_source | 90 | 2 | 0.088 | 1.1% |
| media_caps.support_summary.active_decode_hash | 90 | 9 | 1.673 | 4.4% |
| media_caps.support_summary.combined_hash | 90 | 9 | 1.673 | 4.4% |
| media_caps.support_summary.decoding_hash | 90 | 3 | 1.036 | 0.0% |
| media_caps.support_summary.encoding_hash | 90 | 3 | 1.036 | 0.0% |
| media_caps.support_summary.errored_count | 90 | 3 | 1.036 | 0.0% |
| media_caps.support_summary.html_playback_hash | 90 | 2 | 0.154 | 0.0% |
| media_caps.support_summary.media_recorder_hash | 90 | 2 | 0.154 | 0.0% |
| media_caps.support_summary.media_source_hash | 90 | 1 | -0.000 | 0.0% |
| media_caps.support_summary.supported_count | 90 | 3 | 1.036 | 0.0% |
| media_caps.support_summary.unsupported_count | 90 | 3 | 1.036 | 0.0% |
| media_caps.support_summary.webcodecs_hash | 90 | 2 | 0.154 | 0.0% |
| media_caps.webcodecs | 90 | 3 | 0.176 | 2.2% |
| navigator | 109 | 12 | 1.938 | 6.4% |
| navigator.capabilities | 109 | 5 | 1.601 | 0.9% |
| navigator.device_memory | 8 | 4 | 1.906 | 12.5% |
| navigator.hardware_concurrency | 109 | 6 | 0.637 | 1.8% |
| navigator.languages | 109 | 2 | 0.968 | 0.0% |
| navigator.max_touch_points | 109 | 2 | 0.182 | 0.0% |
| navigator.mime_types | 109 | 1 | -0.000 | 0.0% |
| navigator.pdf_viewer_enabled | 109 | 1 | -0.000 | 0.0% |
| navigator.platform | 109 | 3 | 1.081 | 0.0% |
| navigator.plugin_graph.distinct_plugin_mime_objects | 109 | 2 | 0.378 | 0.0% |
| navigator.plugin_graph.enabled_plugin_always_first | 109 | 2 | 0.378 | 0.0% |
| navigator.plugin_graph.enabled_plugin_in_plugin_list | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.enabled_plugin_is_host | 109 | 2 | 0.378 | 0.0% |
| navigator.plugin_graph.errors | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.fresh_mime_wrapper | 109 | 2 | 0.378 | 0.0% |
| navigator.plugin_graph.item_method_threw | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.mime_array_identity_stable | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.mime_count | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.mime_item_stable | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.mime_shared_across_plugins | 109 | 2 | 0.378 | 0.0% |
| navigator.plugin_graph.navigator_mime_enabled_plugin_is_first | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.pairs_examined | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.plugin_array_identity_stable | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.plugin_count | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.plugin_item_stable | 109 | 1 | -0.000 | 0.0% |
| navigator.plugin_graph.plugin_mime_is_navigator_mime | 109 | 2 | 0.378 | 0.0% |
| navigator.plugin_graph.stable_mime_wrapper | 109 | 2 | 0.378 | 0.0% |
| navigator.plugins | 109 | 1 | -0.000 | 0.0% |
| navigator.ua | 109 | 10 | 1.648 | 4.6% |
| navigator.ua_data.architecture | 4 | 2 | 1.000 | 0.0% |
| navigator.ua_data.bitness | 4 | 1 | -0.000 | 0.0% |
| navigator.ua_data.brands | 8 | 4 | 2.000 | 0.0% |
| navigator.ua_data.form_factors | 8 | 2 | 1.000 | 0.0% |
| navigator.ua_data.full_version_list | 8 | 3 | 1.500 | 0.0% |
| navigator.ua_data.mobile | 8 | 2 | 0.811 | 0.0% |
| navigator.ua_data.model | 4 | 1 | -0.000 | 0.0% |
| navigator.ua_data.platform | 8 | 3 | 1.500 | 0.0% |
| navigator.ua_data.platform_version | 4 | 2 | 1.000 | 0.0% |
| navigator.ua_data.ua_full_version | 4 | 2 | 1.000 | 0.0% |
| navigator.ua_data.wow64 | 4 | 1 | -0.000 | 0.0% |
| navigator.webdriver | 109 | 2 | 0.553 | 0.0% |
| permissions | 91 | 4 | 1.361 | 0.0% |
| permissions.api_states | 91 | 1 | -0.000 | 0.0% |
| permissions.policy.api | 2 | 1 | -0.000 | 0.0% |
| permissions.policy.engine_features | 91 | 2 | 0.152 | 0.0% |
| permissions.policy.features | 91 | 2 | 0.152 | 0.0% |
| permissions.preflight | 91 | 4 | 1.361 | 0.0% |
| permissions.probe_list_hash | 91 | 1 | -0.000 | 0.0% |
| permissions.queries | 91 | 3 | 1.043 | 0.0% |
| permissions.query_api_available | 91 | 1 | -0.000 | 0.0% |
| screen | 94 | 11 | 1.741 | 6.4% |
| screen.avail_height | 94 | 7 | 1.439 | 3.2% |
| screen.avail_left | 94 | 1 | -0.000 | 0.0% |
| screen.avail_top | 94 | 2 | 0.085 | 1.1% |
| screen.avail_width | 94 | 6 | 0.698 | 3.2% |
| screen.color_depth | 94 | 1 | -0.000 | 0.0% |
| screen.device_pixel_ratio | 94 | 2 | 0.149 | 0.0% |
| screen.height | 94 | 6 | 0.698 | 3.2% |
| screen.is_extended | 4 | 2 | 0.811 | 25.0% |
| screen.outer_height | 94 | 10 | 1.681 | 5.3% |
| screen.outer_width | 94 | 10 | 1.712 | 5.3% |
| screen.pixel_depth | 94 | 1 | -0.000 | 0.0% |
| screen.width | 94 | 6 | 0.698 | 3.2% |
| timezone | 102 | 3 | 1.117 | 0.0% |
| timezone.canonical_iana | 102 | 2 | 0.191 | 0.0% |
| timezone.consistency | 102 | 2 | 0.191 | 0.0% |
| timezone.current_intl_offset_minutes | 102 | 2 | 0.191 | 0.0% |
| timezone.current_offset_minutes | 102 | 2 | 0.191 | 0.0% |
| timezone.errors | 102 | 1 | -0.000 | 0.0% |
| timezone.formats | 102 | 2 | 0.191 | 0.0% |
| timezone.iana | 102 | 2 | 0.191 | 0.0% |
| timezone.locale | 102 | 2 | 0.966 | 0.0% |
| timezone.seasonal_offsets | 102 | 2 | 0.191 | 0.0% |
| timezone.transitions | 102 | 2 | 0.191 | 0.0% |
| voices | 90 | 89 | 6.470 | 97.8% |
| voices.arm_to_read_ms | 90 | 89 | 6.470 | 97.8% |
| voices.entries | 90 | 4 | 1.105 | 1.1% |
| voices.entries_at_arm | 90 | 1 | -0.000 | 0.0% |
| voices.malformed_entries | 90 | 1 | -0.000 | 0.0% |
| voices.voiceschanged_fired | 90 | 2 | 0.852 | 0.0% |
| webgl | 39 | 7 | 1.449 | 7.7% |
| webgl.context_attributes | 39 | 2 | 0.619 | 0.0% |
| webgl.extension_order | 39 | 6 | 1.378 | 5.1% |
| webgl.extensions | 39 | 6 | 1.378 | 5.1% |
| webgl.hash | 39 | 3 | 0.719 | 2.6% |
| webgl.params | 39 | 6 | 1.378 | 5.1% |
| webgl.precision_formats | 39 | 3 | 1.070 | 0.0% |
| webgl.renderer | 39 | 4 | 1.153 | 2.6% |
| webgl.shading_language_version | 39 | 2 | 0.619 | 0.0% |
| webgl.unmasked_renderer | 39 | 7 | 1.449 | 7.7% |
| webgl.unmasked_vendor | 39 | 7 | 1.449 | 7.7% |
| webgl.vendor | 39 | 2 | 0.619 | 0.0% |
| webgl.version | 39 | 2 | 0.619 | 0.0% |
| webgl2 | 39 | 7 | 1.449 | 7.7% |
| webgl2.context_attributes | 39 | 2 | 0.619 | 0.0% |
| webgl2.extension_order | 39 | 6 | 1.378 | 5.1% |
| webgl2.extensions | 39 | 6 | 1.378 | 5.1% |
| webgl2.hash | 39 | 3 | 0.719 | 2.6% |
| webgl2.params | 39 | 6 | 1.378 | 5.1% |
| webgl2.precision_formats | 39 | 3 | 1.070 | 0.0% |
| webgl2.renderer | 39 | 4 | 1.153 | 2.6% |
| webgl2.shading_language_version | 39 | 2 | 0.619 | 0.0% |
| webgl2.unmasked_renderer | 39 | 7 | 1.449 | 7.7% |
| webgl2.unmasked_vendor | 39 | 7 | 1.449 | 7.7% |
| webgl2.vendor | 39 | 2 | 0.619 | 0.0% |
| webgl2.version | 39 | 2 | 0.619 | 0.0% |
| webgpu | 1 | 1 | -0.000 | 100.0% |
| webgpu.architecture | 1 | 1 | -0.000 | 100.0% |
| webgpu.description | 1 | 1 | -0.000 | 100.0% |
| webgpu.device | 1 | 1 | -0.000 | 100.0% |
| webgpu.features | 1 | 1 | -0.000 | 100.0% |
| webgpu.is_fallback_adapter | 1 | 1 | -0.000 | 100.0% |
| webgpu.limits | 1 | 1 | -0.000 | 100.0% |
| webgpu.preferred_canvas_format | 1 | 1 | -0.000 | 100.0% |
| webgpu.subgroup_max_size | 1 | 1 | -0.000 | 100.0% |
| webgpu.subgroup_min_size | 1 | 1 | -0.000 | 100.0% |
| webgpu.vendor | 1 | 1 | -0.000 | 100.0% |
| webgpu.wgsl_language_features | 1 | 1 | -0.000 | 100.0% |
| webrtc | 18 | 18 | 4.170 | 100.0% |
| webrtc.device_error | 1 | 1 | -0.000 | 100.0% |
| webrtc.devices.audio_inputs | 17 | 1 | -0.000 | 0.0% |
| webrtc.devices.audio_outputs | 17 | 2 | 0.523 | 0.0% |
| webrtc.devices.device_ids_exposed | 17 | 1 | -0.000 | 0.0% |
| webrtc.devices.group_ids_exposed | 17 | 1 | -0.000 | 0.0% |
| webrtc.devices.labels_exposed | 17 | 1 | -0.000 | 0.0% |
| webrtc.devices.malformed_entries | 17 | 1 | -0.000 | 0.0% |
| webrtc.devices.unknown_kinds | 17 | 1 | -0.000 | 0.0% |
| webrtc.devices.video_inputs | 17 | 2 | 0.523 | 0.0% |
| webrtc.ice | 18 | 18 | 4.170 | 100.0% |
| webrtc.mdns.local.host_candidates | 18 | 3 | 0.986 | 0.0% |
| webrtc.mdns.local.host_candidates_suppressed | 18 | 1 | -0.000 | 0.0% |
| webrtc.mdns.local.mdns_candidates | 18 | 3 | 0.986 | 0.0% |
| webrtc.mdns.local.raw_private_candidates | 18 | 1 | -0.000 | 0.0% |
| webrtc.mdns.stun.host_candidates | 18 | 3 | 0.986 | 0.0% |
| webrtc.mdns.stun.host_candidates_suppressed | 18 | 1 | -0.000 | 0.0% |
| webrtc.mdns.stun.mdns_candidates | 18 | 3 | 0.986 | 0.0% |
| webrtc.mdns.stun.raw_private_candidates | 18 | 1 | -0.000 | 0.0% |
| webrtc.runtime.answer_gathered | 18 | 1 | -0.000 | 0.0% |
| webrtc.runtime.connected | 18 | 1 | -0.000 | 0.0% |
| webrtc.runtime.connection_state | 18 | 1 | -0.000 | 0.0% |
| webrtc.runtime.data_channel_state | 18 | 1 | -0.000 | 0.0% |
| webrtc.runtime.offer_gathered | 18 | 1 | -0.000 | 0.0% |
| webrtc.runtime.stats | 18 | 18 | 4.170 | 100.0% |
| webrtc.sdp.capabilities.receiver | 18 | 4 | 1.098 | 11.1% |
| webrtc.sdp.capabilities.sender | 18 | 3 | 0.986 | 0.0% |
| webrtc.sdp.raw_offer | 18 | 18 | 4.170 | 100.0% |
| webrtc.stun_url | 18 | 1 | -0.000 | 0.0% |
| webrtc.summary.candidate_shape | 18 | 3 | 0.986 | 0.0% |
| webrtc.summary.candidate_shape_hash | 18 | 3 | 0.986 | 0.0% |
| webrtc.summary.codec_count | 18 | 3 | 0.614 | 11.1% |
| webrtc.summary.codec_hash | 18 | 3 | 0.614 | 11.1% |
| webrtc.summary.combined_hash | 18 | 4 | 1.098 | 11.1% |
| webrtc.summary.header_extension_count | 18 | 3 | 0.986 | 0.0% |
| webrtc.summary.header_extension_hash | 18 | 3 | 0.986 | 0.0% |
| webrtc.summary.sdp_line_count | 18 | 4 | 1.098 | 11.1% |
| webrtc.summary.sdp_skeleton_hash | 18 | 4 | 1.098 | 11.1% |
| webrtc.summary.stats_kinds | 18 | 2 | 0.503 | 0.0% |
| webrtc.truncated | 1 | 1 | -0.000 | 100.0% |