Skip to main content

Pages

'Pages' report only looks at events on specific pages.

This SQL example helps you find sessions, visitors, contacts and companies from Pages dashboard

SELECT
COUNT(DISTINCT(dd_session_id)) AS sessions,
COUNT(DISTINCT(dd_visitor_id)) AS visitors,
COUNT(DISTINCT(dd_contact_id)) AS contacts,
COUNT(DISTINCT(dd_company_id)) AS companies,
FROM
`table.events`
WHERE
event. url IS NOT NULL
AND dd_tracking_type NOT IN ('exposure')
AND EXTRACT(YEAR
FROM
timestamp) = EXTRACT(YEAR
FROM
CURRENT_DATE())
AND EXTRACT(MONTH
FROM
timestamp) = EXTRACT(MONTH
FROM
CURRENT_DATE())

This SQL example helps you get the

  1. Average Unique Pages Per Visitor
  2. Average Unique Pages Per Company
  3. Average Visitors Per Company
WITH
pages AS (
SELECT
*
FROM (
SELECT
CASE
WHEN NOT properties.is_anonymous_company THEN e.dd_company_id
ELSE NULL
END
AS companyIdProxy,
dd_visitor_id,
event.url_clean AS url,
FROM
`table.events` AS e
LEFT OUTER JOIN
`table.companies` AS c
ON
e.dd_company_id = c.dd_company_id
WHERE
timestamp >= '2025-05-01'
AND timestamp < '2025-06-01'
AND dd_tracking_type <> 'exposure'
AND event.url_clean IS NOT NULL ) ),
company_views AS (
SELECT
AVG(unique_pages) AS avg_unique_pages_per_company
FROM (
SELECT
companyIdProxy,
COUNT(DISTINCT url) AS unique_pages
FROM
pages
WHERE
companyIdProxy IS NOT NULL
GROUP BY
companyIdProxy ) ),
company_visitors AS (
SELECT
AVG(visitor_count) AS avg_visitors_per_company
FROM (
SELECT
COUNT(DISTINCT dd_visitor_id) AS visitor_count,
companyIdProxy
FROM
pages
WHERE
companyIdProxy IS NOT NULL
GROUP BY
companyIdProxy ) ),
visitor_views AS (
SELECT
AVG(unique_pages) AS avg_unique_pages_per_visitor
FROM (
SELECT
dd_visitor_id,
COUNT(DISTINCT url) AS unique_pages
FROM
pages
WHERE
dd_visitor_id IS NOT NULL
GROUP BY
dd_visitor_id ) )
SELECT
avg_unique_pages_per_visitor,
avg_unique_pages_per_company,
avg_visitors_per_company
FROM
company_views,
visitor_views,
company_visitors