Skip to content

Strict, Extended & Mixed Reports

Pomelo is documented around one product doctrine:

  • Strict by default
  • Extended by configuration

That does not mean every report is either fully Strict or fully Extended.

Some surfaces are now mixed:

  • they keep a useful strict-safe baseline in Strict
  • and expose clearly marked enriched slices in Extended

This page gives the public reading model used across the dashboard, the API, and the snippet guidance.

Feature Strict Strict under conditions Extended Prior consent for Pomelo Banner for Pomelo alone Notes
Overview core Audience KPIs, top pages, performance baseline Acquisition-lite preview stays bounded Enriched geography and other enriched slices Designed for the documented strict envelope; legal review required Banner removal is not a product promise; review the full tracker stack Overview is not marketing attribution in Strict
Acquisition No full marketing acquisition Acquisition-lite: channels, host-only referring domains, landing pages UTM, source/medium/campaign attribution Designed for the documented strict envelope; legal review required Banner removal is not a product promise; review the full tracker stack Acquisition-lite is not marketing attribution
Actions No rich action intelligence by default Simple tagged actions: ui.click, outbound.click, file.download, form.submit Advanced families, richer custom events, goals-derived readings Designed for the documented strict envelope; legal review required Banner removal is not a product promise; review the full tracker stack Use stable IDs and bounded destinations
Audience & technology core Device, browser, OS, language, country, viewport buckets Country-level geography only Campaign-style audience slices, region/city detail Designed for the documented strict envelope; legal review required Banner removal is not a product promise; review the full tracker stack Audience and Technology stay useful without reopening fine-grained geo
UTM / campaigns No No Yes Do not assume so Do not assume so Outside the default strict envelope
Goals / marketing conversions No No Yes Do not assume so Do not assume so Not part of the audience baseline
Tenant drill-down No No Yes Case-by-case only Case-by-case only Explicitly outside the default strict envelope
Raw logs / session-level exports No No Yes Do not assume so Do not assume so Outside the default strict envelope

These two right-hand columns describe Pomelo’s product posture only. They are not a legal determination, and they do not replace contextual review of the site’s full tracker set.

Strict under conditions does not mean “quietly Extended”.

It means a bounded slice can stay compatible with the strict audience baseline only if Pomelo keeps it minimized and explicit:

  • acquisition-lite means channels, host-only referring domains, and landing pages
  • simple actions means bounded aggregate counts for ui.click, outbound.click, file.download, and form.submit
  • country can stay in the baseline; region and city do not

What stays out:

  • UTM parameters
  • source / medium / campaign attribution
  • marketing goals
  • tenant drill-down
  • raw visit or session logs

Read a mixed surface in this order:

  1. availability.readModel
  2. availability.sections

Meaning:

  • availability.readModel.strictSafe tells you what the page or route always serves in Strict
  • availability.readModel.extended tells you what Extended adds
  • availability.sections exposes section-level statuses with the exact API values available, locked_by_profile, not_available_for_requested_period, and partially_available_after_effective_at

A mixed HTTP 200 means:

  • the strict-safe baseline succeeded
  • not that every enriched slice is available

Human rule:

  • the unflagged baseline is the complete Strict product for that surface
  • flagged sections are optional enriched detail, not a broken page

Pomelo alone is designed to support a minimized audience-measurement setup only when you stay inside the documented strict envelope.

This is product positioning, not a blanket legal conclusion.

This does not mean:

  • every Pomelo surface has the same legal reading
  • Extended can be treated as a consent-light default
  • your whole site can automatically remove its banner without reviewing the rest of its trackers

Your site may still need a banner if it also loads:

  • ad or remarketing pixels
  • personalization tags
  • session replay
  • any other consent-requiring tracker

Even in a strict setup, keep:

  • clear information
  • an objection path
  • a review of the full tracker set present on the site

See also: Privacy & Opt-Out and the Consumer Migration Guide.

Prefer the Pomelo-generated script tag from the dashboard.

Why:

  • it keeps installation to one readable tag
  • it keeps runtime configuration in Pomelo
  • it avoids creating a second local source of truth

Do not code these assumptions by hand:

  • collection_profile
  • plan capabilities
  • mixed-route slice availability
  • deprecated mirrors such as top-level plan_id

Instead:

  • read product from GET /v1/me
  • read product_configuration from GET /v1/sites
  • read availability.readModel and availability.sections on mixed routes

See also: SDK Integration, Getting Started, and the Consumer Migration Guide.

Changing a site from Strict to Extended is prospective only.

That means:

  • future compatible data can be enriched
  • older periods are not backfilled retroactively
  • already open tabs may keep their previous runtime until reload

This is why a mixed route can stay readable while still reporting partially_available_after_effective_at on an enriched slice.