Site Behavior Lab

Baseline visit Older format: some facts reconstructed, descriptive only

www.cvs.com

Requested addresshttps://www.cvs.com/

Oct 19, 2026, 11:02 AM UTC

cut short: the fingerprint observer could not read one or more Web Workers the page started, so the fingerprinting evidence is incomplete; derived from status and warnings

Evidence quality

This report is built on an incomplete visit

Incomplete evidence: evidence was cut short before completion (the fingerprint observer could not read one or more Web Workers the page started, so the fingerprinting evidence is incomplete). Counts for the affected evidence are lower bounds; families that completed carry only their ordinary limits. The evidence receipt states the exact per-visit quality.

What this actually means

cvs.com recorded 34 fewer third-party requests in the visit configured for Brave-list blocking.

The visit with no blocking made 207 requests; the visit configured to apply Brave's ad-block engine and default Shields filter lists (a simulation in this scanner's browser, not a live Brave-browser visit) recorded 34 fewer third-party requests. The blocker directly stopped 13 requests; the remaining difference may include follow-on requests that never started once their sources were blocked, plus run-to-run variance.

3tracking-service entities
52cross-site requests
6third-party cookie records
≥3fingerprint-like patterns retained

Plain-Language Findings

What this visit means

Unfamiliar terms are defined in the glossary
playwright-chromium

Worth checking

Bottom line: this visit has review-worthy signals

The scan observed signals a non-expert should not have to decode from raw request tables. Some detector evidence was incomplete; each affected detector card states its own retained or unavailable scope, while completed request, cookie, and storage measurements keep their recorded exactness.

The cards below translate the evidence into plain language. Where a measured distribution exists, severity ranks this visit against percentiles from this report's cohort, with each percentile card naming its metric-specific measured-site denominator; otherwise it uses fixed reference thresholds. That cohort is drawn from a curated set of popular, mostly commercial sites, not a random sample of the web. The request log, domain table, and methodology remain below for verification.

207 requests observed in one controlled visit.

Worth checking

17 requests matched Brave Shields filter lists

17 requests matched the default filter lists of Brave Shields, the ad and tracker blocker built into the Brave browser, while loading normally.

Computed with Brave's own ad-block engine and default filter lists in classification mode: matched requests were not blocked by the scanner and remain in this report's observed request counts. Matching shows what Shields would target on this visit's traffic; an actual Shields visit blocks these and also prevents their follow-on requests, so this number is neither a measured block count nor the total effect.

The hand-curated service catalog separately matched 11 request rows in this visit.Show matched requests

Not flagged

Lower values observed across comparable metrics in the Brave-list blocking attempt

The blocking visit ran with the scanner configured to apply Brave's ad-block engine and default Shields filter lists. It was a simulation in this scanner's browser, not a live Brave-browser visit, and application was not verified. Compared with the unblocked visit, it showed 34 fewer third-party requests, 1 fewer third-party cookie and 10 fewer tracking-related service requests.

Services only seen in the unblocked visit: Google and Adobe. The blocking visit's engine directly blocked 13 requests; the remaining difference may include follow-on requests that never started once their sources were blocked. A single paired comparison can also reflect run-to-run variance (ad rotation, caching, experiments), so treat this as an observed difference, not a measured blocking rate.

Signed per-metric differences between the two visits; nothing is summed across metrics.Show matched requests

Worth checking

Consent tooling and requests to tracking-service entities appeared before any choice

www.cvs.com sent a request to OneTrust, a consent management platform (the tooling that shows cookie banners). The request log included 3 distinct catalogued tracking-related services before the scanner made any consent choice; 3 companies answered.

A request to the platform's loader proves the page attempted to fetch consent tooling; an observed response supports delivery, but neither fact proves a banner was visibly shown to this scanner. Banner display can vary by region and visit context. The scanner never clicks a banner in this mode, so this report records requests made before the scanner made a consent choice. It does not determine whether any request required consent or whether the site's behavior complied with applicable law. More tracking-service entities or requests may appear after "Accept" than this report captures, so the counts here are lower bounds for users who consent.

Consent platform detected via a request to cdn.cookielaw.org.

Context

Tracking companies the privacy policy does not appear to name

Tealium and Adobe were sent requests during this visit, but the policy text matched none of the names this scan knows those companies by.

Policies often disclose vendor categories rather than company names, so an unnamed vendor is a transparency gap worth reviewing, not automatically a violation. Named in the policy: Google.

Policy at https://www.cvs.com/…/help/…; 0 checkable statements matched; 1 of 3 observed tracking companies named in the policy.

Worth checking

Catalogued service domains recorded responses during this visit

Tealium, Google and Adobe appeared in the request log.

A catalog match identifies a maintainer-reviewed service/domain mapping; it does not establish why an individual request occurred, what it carried, or whether profiling happened. Functional catalog labels include tag management / customer data, advertising and analytics / advertising. This scan could not identify 8 of the 19 third-party hosts recorded here, so it cannot say who operates them. That is a limit of identity coverage, not evidence about the site.

52 cross-site requests across 19 third-party hosts.At or above the 75th-percentile mark for third-party domains across the 90 sites measured for this metric.Show third-party requests

Context

Requests were dispatched to catalogued major-platform domains

This visit dispatched requests to catalogued domains for Google.

The domain matches identify services, not the requests' purpose, payload, or whether any profile linking occurred.

3 requests to these platforms.Show catalog-matched requests

Not flagged

No Google Analytics observed

This visit did not contact Google Analytics.

Neither Google Analytics nor its remarketing sync was observed in this visit.

No google-analytics.com or googletagmanager.com requests.Show catalog-matched requests

Worth checking

Third-party cookies were present

6 third-party cookies showed up during the visit.

The scanner observed cookie metadata whose domain crossed the scanned site's registrable-domain boundary. This report does not retain cookie values or partition keys, so it does not establish whether a cookie was a persistent identifier or could recognize a visitor across sites.

122 cookies total in this report.At or above the 75th-percentile mark for third-party cookies across the 90 sites measured for this metric.

Context

Input-monitoring signal involving a third-party script

Listener coverage that could observe typing-related input events was registered through call chains that included a third-party script.

This is a behavioral instrumentation signal from listener registration, stack-attributed script origins, and known-vendor requests: it shows the page was instrumented to observe interaction, not that anything was transmitted. Stack attribution records the script origins present in the bounded registration call chain. A cross-site origin in that chain does not by itself establish that the cross-site script registered the listener. That is because first-party code can register its own listeners through a helper served from elsewhere. A different registrable domain is also not by itself a different operator: sites commonly serve their own scripts from a separate asset domain. The card therefore says third party only when the catalog or reviewed ownership attributes an origin to another organization. On scanners that run the active keystroke-capture probe, actual transmission is tested separately (a synthetic value is typed, never real input, and no typed values are collected). Treat this card as a review prompt rather than proof.

Session-recording listener coverage: 216 interaction-listener registrations with https://cdn.appdynamics.com/, https://cdn.cookielaw.org/ and https://cdn1.adoberesources.net/, plus 3 others in the registration call chain. Input-monitoring listener coverage: 48 input-listener registrations with https://cdn.appdynamics.com/, https://cdn.cookielaw.org/ and https://*.go-mpulse.net/, plus 1 other in the registration call chain.

Worth checking

Behavioral fingerprinting heuristics matched

At least 3 behavioral heuristics matched in retained evidence: Canvas fingerprinting heuristic, Offline audio rendering heuristic and Canvas font probing heuristic.

These heuristics look for behavior patterns such as canvas readback after drawing, repeated canvas font measurement, WebGL entropy reads, offline audio rendering, or WebRTC peer-connection setup. They are review prompts for this visit, not proof of cross-site identity tracking.

Canvas fingerprinting heuristic: 2 canvases matched; reads: canvas.toDataURL. Offline audio rendering heuristic: 2 offline renders with audio.OfflineAudioContext.createAnalyser, audio.OfflineAudioContext.createDynamicsCompressor and audio.OfflineAudioContext.createOscillator, plus 2 others. Canvas font probing heuristic: 22 measureText calls across up to 11 fonts; measured text contents are not stored.

Raw evidence

Open the interactive evidence explorer

The findings above are built from the stored report. Load the request rows, domains, cookies, storage keys, browser signals, visit phases, charts and CSV export when you want to check them; the versioned report JSON is always available below without this interface.

This versioned report is currently retained in the public corpus. Follow the currently retained site history, repeat the same public route when it is available, or request a transparent evidence correction.

Report ID
20261019-66c3684da76c2856b3e5981974fe36d3
Site
www.cvs.com
Latest visit
Schema
v1 schema · facts legacy-derived · descriptive report
Verify recorded provenance

Baseline visit

Started
Run quality
cut short: the fingerprint observer could not read one or more Web Workers the page started, so the fingerprinting evidence is incomplete; derived from status and warnings
Scanner
playwright-chromium
Browser
153.0.8010.12
Redaction
not recorded by this schema
Provenance
Exact build and instrument digests were not recorded by this legacy schema.

Variant visit

Started
Run quality
cut short: the fingerprint observer could not read one or more Web Workers the page started, so the fingerprinting evidence is incomplete; derived from status and warnings
Scanner
playwright-chromium
Browser
153.0.8010.12
Redaction
not recorded by this schema
Provenance
Exact build and instrument digests were not recorded by this legacy schema.

Recorded provenance is self-reported measurement metadata, not a cryptographic attestation. The public versioned report JSON contains the retained public evidence; see the methodology for interpretation and retention limits.

This report covers what the scanner measures, not everything a site can do. 17 browser surfaces are not instrumented at all (Every page except the one that was scanned; Anything that only loads after scrolling or interaction; Why a request happened, as a causal chain; and 14 others), 3 capabilities are declined by policy, and 3 are outside what any single visit can see. Their absence from this report is not evidence that they did not occur. Read the published coverage boundary.

Detector accuracy is unmeasured. No calibration study currently publishes a precision or recall for the detectors on this page, so a detector match here is a recorded observation, not a calibrated classification. A study has been recorded for pixel-events and does not support a published rate under the current build. How detector accuracy is measured.

Severity percentiles come from this report's exact schema, methodology, tracker-catalog, ServiceRole-taxonomy, metric-contract, producer, and Global Privacy Control cohort. Each percentile card's measured sites are among 99 sites with a successful load across all cohorts. Other methodologies, request-capped visits, and post-choice consent visits are excluded from each card's denominator, while failed or block-page attempts are outside that coverage.

Approved use boundary: This report is investigative evidence that requires independent corroboration. It is not a standalone legal determination and not the sole exhibit in a legal proceeding. Recorded in this project's release manifest on .