Skip to main content

Snowplow

Subsets uses behavioral data to understand visit frequency, recency, content preferences, and changes in engagement. The fields below are a starting point for Snowplow data; we will review a sample and confirm the mapping to our data model before onboarding.

Data Format​

Start with individual page views and, where available, app screen views. Share your existing flattened tables or relevant fields and nested contexts from the Snowplow events table. Keep one row per event when flattening contexts; avoid multiplying events or aggregating them into daily totals. See Snowplow's warehouse structure.

Core Fields​

Equivalent field names are fine. Please explain custom fields and any transformations.

FieldWhat we need
event_idEvent identifier for deduplication.
event_name / eventEvent type, such as page_view, page_ping, or screen_view. For a table containing only page views, document that scope.
derived_tstampEvent time in UTC.
Customer/subscription identifierA stable ID that joins to your subscription data, directly or through a mapping table.
domain_sessionid or client-session IDSession identifier for counting visits. A session index alone is insufficient.
app_id, platformWebsite/app and platform; include brand when sharing multiple publications.
load_tstamp or equivalentWarehouse load/update time for incremental delivery, separate from event time.

See Snowplow's field reference and timestamp guidance.

Identity needs validation. Confirm how user_id or your equivalent identifier joins to customer or subscription records. Include a mapping table if needed.

Useful Additional Fields​

  • Content: Content/article ID, page type, section/category, and a clean page path or screen name. A separate CMS lookup can supply categories, authors, or word counts. Explain placeholder IDs and distinguish article views from home/section pages.
  • Device and source: Device category, operating system, and referrer/marketing channel help describe usage patterns.
  • Access context: Login status, access type, paywall status, and consent/filtering definitions help us interpret which activity is represented.
  • Engagement: Include measured time spent or scroll depth if available, with units and calculation details. For raw page_ping events, include the page-view identifier and the initial delay/heartbeat interval. Pings must be distinguished from page views when counting visits. See Snowplow activity tracking. Page-view timestamps alone do not establish engaged time.

Leave Out Initially​

Exclude names, emails, raw IP addresses, and personal data in URLs or free text. Prefer clean paths and classified referral sources over full URLs/query strings. Raw user-agent strings, exact location, screen dimensions, advertising identifiers, experiment payloads, and purchase-flow details are not needed for the initial behavioral dataset.

Sample and Delivery​

Provide a sample spanning several days and the relevant brands, platforms, and access types, together with the identity mapping and field definitions. We will check joins, event uniqueness, timestamps, and coverage before confirming compatibility.

Share the available history, daily refresh schedule, load/update timestamp, and how late arrivals or corrections are handled. If delivering through Snowflake, see the Snowflake connection guide and include any clustering keys.