Skip to content
Black BoxPersonalization

Collection Lab

Watch collection happen in this browser.

Three panels, three sources. The browser column is local. The network column is Resource Timing. The back-end column is the beacon this page posts to its own API, plus the fields the server adds. Personalization uses the same consent switch: when it is off, the site falls back to the default page and the beacon is suppressed. Local storage personalization lists the keys behind that memory.

Measurement consent

Off. Events are still built in this browser so you can see them, then dropped. The server stores nothing, and the rest of the site stays on the default experience.

denied

Scroll this page to cross 25%, 50%, 75%, and 100%. Each threshold becomes its own event.

Source · this browser

Browser

Read from navigator, screen, document, and the Performance API. This whole panel stays on the device. A beacon carries the smaller profile, not this list.

Reading this browser…

Source · Resource Timing

Network

Each row is a request this document made. The list is not uploaded. Posts to /api/collect show up here as first-party fetches after they finish.

Waiting for resource entries…

Source · POST /api/collect

Back end

The raw body leaves the browser. The route adds receipt time, parsed user agent, and edge headers, then stores the record in the database. The stream and a two-second poll both read new rows, so a stored event still shows up when the request lands on another serverless instance. Consent off means nothing is stored.

Stream: connecting · 0 stored

Waiting for the page-view beacon. If consent is off, the suppressed payload appears here and nothing is stored.