Website evidence · pilot dataset
Does propublica.org fingerprint you?
Browser signals observed; fingerprinting is unconfirmed.
Browser API activity met a monitored signal threshold in the latest measured scans. The activity alone does not establish a tracking purpose.
All 8 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
Signals observed
1 of 5 signal families observed
- Measurement
- Measured · Partial load
- Page context
- Page document
- Scan time
- 2026-10-22T21:00:14.427971Z
- Browser / scanner
- 156.0.8078.4 / 0.4
Captured titleProPublica — Investigative Journalism and News in the Public Interest
CanvasDraws text and reads canvas output.
Observed requires a text-drawing API and a canvas readback API. Guide ↗
canvas.getContext1 callshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 829 · col 387
canvas.getContext1 callsFrame: https://www.google.com/recaptcha/api2/anchor
- Inline caller recorded
canvas.getContext2 callsFrame: https://www.propublica.org/
- Inline caller recorded
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
WebGLQueries the graphics environment.
Observed requires at least three distinct WebGL probing APIs. Guide ↗
webglrenderingcontext.getExtension1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
webglrenderingcontext.getParameter2 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
webglrenderingcontext.getSupportedExtensions1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
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.deviceMemory1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 339 · col 312
navigator.getBattery1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
navigator.hardwareConcurrency1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 339 · col 312
navigator.language7 callsFrame: https://www.propublica.org/
https://www.google-analytics.com/analytics.jsline 94 · col 17https://www.googletagmanager.com/gtag/js
navigator.maxTouchPoints3 callsFrame: https://www.propublica.org/
https://www.propublica.org/svelte-assets/index-MmgamsBd.jsline 7 · col 7088https://www.propublica.org/wp-content/plugins/propublica/build/svelte-assets/index.jshttps://www.propublica.org/wp-includes/js/dist/components.min.js
navigator.platform6 callsFrame: https://www.propublica.org/
https://www.propublica.org/wp-includes/js/dist/components.min.jshttps://www.propublica.org/wp-includes/js/dist/compose.min.jshttps://www.propublica.org/wp-includes/js/dist/core-data.min.jshttps://www.propublica.org/wp-includes/js/dist/media-utils.min.js
navigator.userAgent26 callsFrame: https://www.google.com/recaptcha/api2/anchor
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 535 · col 495
navigator.userAgent117 callsFrame: https://www.propublica.org/
https://www.googletagmanager.com/gtm.jshttps://www.propublica.org/wp-content/plugins/propublica/build/svelte-assets/index.jshttps://www.propublica.org/wp-includes/js/dist/block-editor.min.jshttps://www.propublica.org/wp-includes/js/dist/components.min.jshttps://www.propublica.org/wp-includes/js/dist/editor.min.js
navigator.webdriver1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 339 · col 312
screen.availHeight2 callsFrame: https://www.propublica.org/
https://cdn.parsely.com/keys/propublica.org/p.jshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 1199 · col 469
screen.availWidth1 callsFrame: https://www.propublica.org/
https://cdn.parsely.com/keys/propublica.org/p.js
screen.colorDepth1 callsFrame: https://www.propublica.org/
https://cdn.parsely.com/keys/propublica.org/p.js
screen.height9 callsFrame: https://www.propublica.org/
https://cdn.parsely.com/keys/propublica.org/p.jshttps://www.google-analytics.com/analytics.jsline 93 · col 231https://www.googletagmanager.com/gtag/jshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 1199 · col 469
screen.width9 callsFrame: https://www.propublica.org/
https://cdn.parsely.com/keys/propublica.org/p.jshttps://www.google-analytics.com/analytics.jsline 93 · col 219https://www.googletagmanager.com/gtag/jshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 1199 · col 469
Providers, script signatures, and DNS 3 provider labels
Provider labels and static signatures are scanner observations. A library-name match does not establish that its code executed.
- Google Adsstats.g.doubleclick.net
- Google Analyticswww.google-analytics.com
- Google Tag Managerwww.googletagmanager.com
Network and worker observations 141 requests
- Captured scripts
- 37
- Instrumented frames
- 3
- Google Ads observed
- Yes
- 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
ak.sail-horizon.comanalytics.google.comapi.parsely.comcdn-4.convertexperiments.comcdn.parsely.comfonts.gstatic.comp1.parsely.compixel.wp.complatform.iteratehq.comstatic.trueanthem.comstats.g.doubleclick.netstats.wp.comwww.google-analytics.comwww.google.comwww.googletagmanager.comwww.gstatic.com
Other recorded API calls 2
document.cookie.read120 callsdocument.cookie.write27 calls
Source record and integrity
- Original source
results/headful/propublica-org-20261022T210014.json- Original file SHA-256
a6c3405bf1220eaf2f90d3092e0a6aa6a3ff69e6239c4a23631c3f3b10478842
Run ID: headful-a6c3405bf122. The JSON contains sanitized observations, not the original private scan payload.
Other scan attempts (4)
Visitor setup
Navigation failed
Navigation failed
- Measurement
- Navigation failed
- Page context
- Page not measured
- Scan time
- 2026-10-21T22:19:00.994671Z
- 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/propublica-org-20261021T221900.json- Original file SHA-256
d87cd7668ff1e54a53e36251e61ed5a00f367a1e3d68fa0f54a1f809ec2f4f4c
Run ID: headful-d87cd7668ff1. 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-22T15:25:00.715796Z
- 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/propublica-org-20261022T152500.json- Original file SHA-256
10950c764c865a6d5983fbef07e9331c9f483906e58787fbe20152072994b6e5
Run ID: headful-10950c764c86. The JSON contains sanitized observations, not the original private scan payload.
Visitor setup
Navigation failed
Navigation failed
- Measurement
- Navigation failed
- Page context
- Page not measured
- Scan time
- 2026-10-22T15:25:02.188898Z
- 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/headful/propublica-org-20261022T152502.json- Original file SHA-256
3425d9dd6e7a508bebc5eb439b5a653737aa07ba4a881c31d0352c8395db940a
Run ID: headful-3425d9dd6e7a. 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-22T21:00:13.104787Z
- 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/propublica-org-20261022T210013.json- Original file SHA-256
4cd46be86cc64334a93dc31570d78a1f43d1f8f40eb7ca569a48af0c1c8c1504
Run ID: headful-4cd46be86cc6. The JSON contains sanitized observations, not the original private scan payload.
Research setup
Signals observed
1 of 5 signal families observed
- Measurement
- Measured · Partial load
- Page context
- Page document
- Scan time
- 2026-10-22T23:16:23.896353Z
- Browser / scanner
- 156.0.8078.4 / 0.4
Captured titleProPublica — Investigative Journalism and News in the Public Interest
CanvasDraws text and reads canvas output.
Observed requires a text-drawing API and a canvas readback API. Guide ↗
canvas.getContext1 callshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 829 · col 387
canvas.getContext1 callshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 829 · col 387
canvas.getContext1 callsFrame: https://www.google.com/recaptcha/api2/anchor
- Inline caller recorded
canvas.getContext2 callsFrame: https://www.propublica.org/
- Inline caller recorded
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
WebGLQueries the graphics environment.
Observed requires at least three distinct WebGL probing APIs. Guide ↗
webglrenderingcontext.getExtension1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
webglrenderingcontext.getParameter2 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
webglrenderingcontext.getSupportedExtensions1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
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.deviceMemory1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 339 · col 312
navigator.getBattery1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 346 · col 83
navigator.hardwareConcurrency1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 339 · col 312
navigator.language9 callsFrame: https://www.propublica.org/
https://www.google-analytics.com/analytics.jsline 94 · col 17https://www.googletagmanager.com/gtag/js
navigator.maxTouchPoints3 callsFrame: https://www.propublica.org/
https://www.propublica.org/svelte-assets/index-MmgamsBd.jsline 7 · col 7088https://www.propublica.org/wp-content/plugins/propublica/build/svelte-assets/index.jshttps://www.propublica.org/wp-includes/js/dist/components.min.js
navigator.platform6 callsFrame: https://www.propublica.org/
https://www.propublica.org/wp-includes/js/dist/components.min.jshttps://www.propublica.org/wp-includes/js/dist/compose.min.jshttps://www.propublica.org/wp-includes/js/dist/core-data.min.jshttps://www.propublica.org/wp-includes/js/dist/media-utils.min.js
navigator.userAgent25 callsFrame: https://www.google.com/recaptcha/api2/anchor
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 535 · col 495
navigator.userAgent117 callsFrame: https://www.propublica.org/
https://ak.sail-horizon.com/spm/spm.v1.min.jsline 1 · col 130140https://www.propublica.org/wp-content/plugins/propublica/build/svelte-assets/index.jshttps://www.propublica.org/wp-includes/js/dist/block-editor.min.jshttps://www.propublica.org/wp-includes/js/dist/components.min.jshttps://www.propublica.org/wp-includes/js/dist/editor.min.js
navigator.webdriver1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 339 · col 312
screen.availHeight1 callsFrame: https://www.propublica.org/
https://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 1199 · col 469
screen.height10 callsFrame: https://www.propublica.org/
https://www.google-analytics.com/analytics.jsline 93 · col 231https://www.googletagmanager.com/gtag/jshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 1199 · col 469
screen.width10 callsFrame: https://www.propublica.org/
https://www.google-analytics.com/analytics.jsline 93 · col 219https://www.googletagmanager.com/gtag/jshttps://www.gstatic.com/recaptcha/releases/[redacted-id]/recaptcha__en.jsline 1199 · col 469
Providers, script signatures, and DNS 3 provider labels
Provider labels and static signatures are scanner observations. A library-name match does not establish that its code executed.
- Google Adsstats.g.doubleclick.net
- Google Analyticswww.google-analytics.com
- Google Tag Managerwww.googletagmanager.com
Network and worker observations 148 requests
- Captured scripts
- 38
- Instrumented frames
- 4
- Google Ads observed
- Yes
- 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
ak.sail-horizon.comanalytics.google.comapi.sail-personalize.comcdn-4.convertexperiments.comcdn.parsely.comfonts.gstatic.compixel.wp.complatform.iteratehq.comstatic.trueanthem.comstats.g.doubleclick.netstats.wp.comwww.google-analytics.comwww.google.comwww.googletagmanager.comwww.gstatic.com
Other recorded API calls 2
document.cookie.read121 callsdocument.cookie.write29 calls
Source record and integrity
- Original source
results/headless/propublica-org-20261022T231623.json- Original file SHA-256
02a42e017b30a170ebf6ad82bed990272dbcb60a6fb9c6d5d6bcf250ee7eb95f
Run ID: research-02a42e017b30. 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:47:03.023843Z
- 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/propublica-org-20261021T204703.json- Original file SHA-256
68df476bfd099c07444e3066eb5553deeeca5711dcea251c11c8ec3adfc14cc2
Run ID: research-68df476bfd09. 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:48:44.575621Z
- 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/propublica-org-20261022T184844.json- Original file SHA-256
785a67f77f48ffee9e991054bc1167dd8ada88542e515eb5cb4475b0dc0829a6
Run ID: research-785a67f77f48. 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 →