Skip to main content
Sitecore Documentation
  • Learn
  • Downloads
  • Changelog
  • Roadmap
PersonalizeCloud Portal
Sitecore Personalize developer documentation
  • Developing with Sitecore Personalize
            • Engage.init(settings)
            • Engage.initServer(settings)
            • Engage.initServer.handleCookie(req, res)
            • Engage.getBrowserId()
            • Engage.getGuestId()
            • Engage.updatePointOfSale(pointOfSale)
            • Engage.pageView(eventData[, extensionData])
            • Engage.identity(eventData[, extensionData])
            • Engage.event(type, eventData[, extensionData])
            • Engage.addToEventQueue(type, eventData[, extensionData])
            • Engage.processEventQueue()
            • Engage.clearEventQueue()
            • Engage.personalize(personalizationData[, timeout])
            • EngageServer.pageView(eventData, req[, extensionData])
            • EngageServer.identity(eventData, req[, extensionData])
            • EngageServer.event(type, eventData, req[, extensionData])
            • EngageServer.personalize(personalizationData, callback[, timeout])
            • window.Engage.triggerExperiences()
        • Troubleshooting
        • Release notes
  1. Functions
  1. Sitecore Personalize developer documentation
  2. Stream API

Engage.pageView(eventData[, extensionData])

Note

This is a client-side function used for implementing client-side tracking. If you want to implement server-side tracking instead, use the server-side functions.

The pageView() function sends a VIEW event. The VIEW event triggers every time your webpage loads. You should send a VIEW event from every webpage that you want to track on your website.

sidebar. Parameters

ParameterTypeDescription
eventDataobjectAll the event data.
[extensionData]

optional
objectCustom data about an event.

Maximum 50 custom attributes of your choice.

Here's an example of how to use the pageView() function. In a React app, call this function in an Effect Hook.

import { engage } from "./engage.js";
// ...

useEffect(() => {
  if (engage !== undefined) {
      sendPageViewEvent();
  };
}, []);

const sendPageViewEvent = async () => {
  const eventData = {
    channel: "WEB",
    currency: "EUR",
    pointOfSale: "myretailsite/ireland",
    language: "EN",
    page: "home",
    pageVariantId: "351"
  };

  const extensionData = {
    customKey: "customValue"
  };

  await engage.pageView(eventData, extensionData);
};
If you have suggestions for improving this article, let us know!

Documentation Assistant

This assistant uses AI to generate responses based on Sitecore documentation. While it has access to official sources, answers may be incomplete or inaccurate and should not be considered official advice or support.
Powered by
k
kapa.ai
Protected by reCAPTCHA

© Copyright 2026, Sitecore A/S or a Sitecore affiliated company.
All rights reserved.

Privacy policySitecore Trust CenterTerms of use