Website evidence · pilot dataset
Does rumble.com fingerprint you?
Fingerprinting indicators observed.
The latest measured scans include canvas drawing and readback by the same script. Some activity was recorded on a challenge page. This is a fingerprinting indicator, not proof of tracking intent or transmission.
All 6 source records are included in the JSON. Scan timestamps and versions are shown as recorded. The tabs show the latest usable homepage measurement for each setup. Later failed attempts remain in the history. Scan scope and methodology ↗
Inside the scan
← All websitesVisitor setup
Not observed
0 of 5 signal families observed
- Measurement
- Measured
- Page context
- Page document
- Scan time
- 2026-10-22T16:28:26.170030Z
- Browser / scanner
- 156.0.8078.4 / 0.4
Captured titlerumble.com
CanvasDraws text and reads canvas output.
Observed requires a text-drawing API and a canvas readback API. Guide ↗
canvas.getContext1 calls- Inline caller recorded
WebGLQueries the graphics environment.
Observed requires at least three distinct WebGL probing APIs. Guide ↗
No matching API call was captured.
AudioRenders or reads audio samples.
Observed requires offline rendering, buffer reads, or analyser reads. Guide ↗
No matching API call was captured.
FontsMeasures text repeatedly.
Observed requires at least ten text-measurement calls. Guide ↗
No matching API call was captured.
DeviceReads browser and display properties.
Observed requires at least three distinct browser, screen, or window properties. Guide ↗
navigator.userAgent2 calls- Inline caller recorded
window.devicePixelRatio1 calls- Inline caller recorded
Providers, script signatures, and DNS 0 provider labels
Provider labels and static signatures are scanner observations. A library-name match does not establish that its code executed.
Static script signatures
https://challenges.cloudflare.com/[redacted-challenge]reCAPTCHA · 0 API patterns
Network and worker observations 9 requests
- Captured scripts
- 2
- Instrumented frames
- 1
- Google Ads observed
- No
- Transmission evidence
- Not validated
Legacy transmission hints are excluded. A request after an API call does not establish that the extracted value was sent.
Third-party hosts
challenges.cloudflare.com
Source record and integrity
- Original source
results/headful/rumble-com-20261022T162826.json- Original file SHA-256
d5b95d5409d85d91a1aa4b8d8f8e4f7698b0f1ee8df3848a900c0118ffa0fd33
Run ID: headful-d5b95d5409d8. The JSON contains sanitized observations, not the original private scan payload.
Other scan attempts (2)
Visitor setup
Navigation failed
Navigation failed
- Measurement
- Navigation failed
- Page context
- Page not measured
- Scan time
- 2026-10-21T22:33:39.211878Z
- Browser / scanner
- 156.0.8078.4 / 0.3
Navigation or page loading failed in this browser setup. The record does not establish why it failed.
Source record and integrity
- Original source
results/headful/rumble-com-20261021T223339.json- Original file SHA-256
739b0a41f7d848d9d46c1a52950693e28fef4435d5509e65ef5e7ac77c4af577
Run ID: headful-739b0a41f7d8. The JSON contains sanitized observations, not the original private scan payload.
Visitor setup
Scanner error
Scanner error
- Measurement
- Scanner error
- Page context
- Page not measured
- Scan time
- 2026-10-22T16:28:24.168322Z
- Browser / scanner
- 156.0.8078.4 / 0.4
The scanner crashed while collecting this page. No usable API results were saved for this setup. A fresh scan is needed; this is not a site-blocking verdict.
Source record and integrity
- Original source
results/headful/rumble-com-20261022T162824.json- Original file SHA-256
832e836eba1cd2891319108c845fe4749a551fa860847b3f617b127468feb2a4
Run ID: headful-832e836eba1c. The JSON contains sanitized observations, not the original private scan payload.
Research setup
Draw + readback
4 of 5 signal families observed
- Measurement
- Measured
- Page context
- Challenge page
- Scan time
- 2026-10-22T23:18:51.536615Z
- Browser / scanner
- 156.0.8078.4 / 0.4
Captured titleJust a moment...
CanvasDraws text and reads canvas output.
Observed requires a text-drawing API and a canvas readback API. Guide ↗
canvas.getContext3 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
- Inline caller recorded
https://challenges.cloudflare.com/[redacted-challenge]
canvas.getContext1 callsFrame: https://rumble.com/
- Inline caller recorded
canvas.toDataURL1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
canvas2d.fillText2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
canvas2d.getImageData2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
canvas2d.strokeText1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
WebGLQueries the graphics environment.
Observed requires at least three distinct WebGL probing APIs. Guide ↗
webgl2renderingcontext.getExtension5 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webgl2renderingcontext.getParameter38 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webgl2renderingcontext.getShaderPrecisionFormat1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webgl2renderingcontext.getSupportedExtensions2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webgl2renderingcontext.readPixels1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webglrenderingcontext.getExtension5 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webglrenderingcontext.getParameter36 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webglrenderingcontext.getShaderPrecisionFormat14 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webglrenderingcontext.getSupportedExtensions2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
webglrenderingcontext.readPixels3 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
AudioRenders or reads audio samples.
Observed requires offline rendering, buffer reads, or analyser reads. Guide ↗
audio.createDynamicsCompressor2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
audio.createOscillator2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
audiobuffer.getChannelData4 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
offlineaudio.startRendering3 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
FontsMeasures text repeatedly.
Observed requires at least ten text-measurement calls. Guide ↗
fonts.check1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
DeviceReads browser and display properties.
Observed requires at least three distinct browser, screen, or window properties. Guide ↗
navigator.deviceMemory1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.doNotTrack1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.getBattery1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.hardwareConcurrency1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.language3 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.languages2 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.maxTouchPoints1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.mimeTypes1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.platform1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.plugins3 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.userAgent1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
navigator.webdriver1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
window.devicePixelRatio1 callsFrame: https://challenges.cloudflare.com/[redacted-challenge]
https://challenges.cloudflare.com/[redacted-challenge]
Scripts with both text drawing and canvas readback 1
These source URLs appear in both call groups. Aggregated logs do not preserve the full execution sequence or establish the purpose of the collection.
https://challenges.cloudflare.com/[redacted-challenge]
Providers, script signatures, and DNS 0 provider labels
Provider labels and static signatures are scanner observations. A library-name match does not establish that its code executed.
Static script signatures
https://challenges.cloudflare.com/[redacted-challenge]reCAPTCHA · 0 API patterns
Network and worker observations 18 requests
- Captured scripts
- 4
- Instrumented frames
- 2
- Google Ads observed
- No
- Transmission evidence
- Not validated
Legacy transmission hints are excluded. A request after an API call does not establish that the extracted value was sent.
Third-party hosts
challenges.cloudflare.comhagen.challenges.cloudflare.com
Other recorded API calls 4
document.cookie.read2 callsdocument.cookie.read1 callswebrtc.RTCPeerConnection1 callswebrtc.RTCPeerConnection1 calls
Source record and integrity
- Original source
results/headless/rumble-com-20261022T231851.json- Original file SHA-256
e36cc47640c5270dfaefefe511a8d49ec91d77513802c4eaec4c491fc8429ef4
Run ID: research-e36cc47640c5. The JSON contains sanitized observations, not the original private scan payload.
Other scan attempts (2)
Research setup
Navigation failed
Navigation failed
- Measurement
- Navigation failed
- Page context
- Page not measured
- Scan time
- 2026-10-21T20:55:29.535099Z
- Browser / scanner
- 156.0.8078.4 / 0.3
Navigation or page loading failed in this browser setup. The record does not establish why it failed.
Source record and integrity
- Original source
results/headless/rumble-com-20261021T205529.json- Original file SHA-256
957575d1110a7d710a7a044b58369467c855d8738093fba0a8c1109c25fe267e
Run ID: research-957575d1110a. The JSON contains sanitized observations, not the original private scan payload.
Research setup
Navigation failed
Navigation failed
- Measurement
- Navigation failed
- Page context
- Page not measured
- Scan time
- 2026-10-22T18:54:41.436925Z
- Browser / scanner
- 156.0.8078.4 / 0.4
Navigation or page loading failed in this browser setup. The record does not establish why it failed.
Source record and integrity
- Original source
results/headless/rumble-com-20261022T185441.json- Original file SHA-256
bd1c98aadb89156402f07fc2f974f2ccc6eef5d268c6423675a4444db8023f20
Run ID: research-bd1c98aadb89. The JSON contains sanitized observations, not the original private scan payload.
Queries, request bodies, cookies, extracted values, raw errors, and session payloads are excluded before publication. The source digest identifies the original private record.
Read the sanitized JSON →