Set up › Install

Send Pendo data to Sequential

For sites that run Pendo: add dataHost so Pendo's agent sends its data to Sequential, and register your Pendo API key with your project.

Install with your AI agent

Copy a complete instruction for a coding agent (Claude Code, Cursor, Copilot…) with your repo open. It says how to find an existing install, what to change, and how to check events arrive, and it includes this page.

Keys are placeholders; the agent will ask for them. Sign in to fill in your project's keys.

On this page

There is no new-install path for Pendo. Pendo serves its agent per subscription, with your Pendo API key, so only an existing Pendo installation can send to Sequential. If the codebase has no Pendo snippet, stop and tell the user. Use one of the other SDKs instead.

1. Register your Pendo API key

In Sequential, open Settings → Projects → your project → Setup → Pendo, and register the apiKey from your Pendo snippet. Sequential uses it to tell which project the events belong to. This is a step in the Sequential app, not in code. An agent should ask the user to do it.

2. Add dataHost

Keep the Pendo snippet as it is and add one option to the pendo.initialize(…) call it already has, so Pendo’s agent sends its data to Sequential:

js
pendo.initialize({
  dataHost: 'https://api.usesequential.com',   // ← add this line; keep everything else
  visitor: { id: '…' },
  account: { id: '…' }
});

Change nothing else: visitor, account and their metadata keep working, and Sequential stores them as user and account properties.

What is supported

What Sequential does with Pendo traffic
CapabilitySupportNotes
Custom eventsPartialpendo.track(name, props) arrives under your event name, but its properties are stored as user properties, not on the event.
Page / screen viewsYesPendo's load events.
Autocaptured clicks & formsYesClicks, with a CSS selector.
Identify (user id)YesThe visitor.id you pass to pendo.initialize.
User propertiesYesVisitor metadata.
Groups / accountsYesFills accounts: account.id and account metadata.
ErrorsNoNo error events.
Session replayPartialPendo's own replay is not accepted. Add Sequential's recorder: it joins Pendo's session id automatically.
DevTools: errors, console, network, performanceYesCaptured by Sequential's recorder once the session-replay line is on the page.
Feature flags, surveys, experimentsNoGuides are answered with an empty set, so no guides show while the agent points here.
Server-side SDKsNoBrowser and PostHog mobile SDKs only. Server-side SDK user agents are rejected as bots (403).

Pendo guides stop showing while the agent points at Sequential, because Sequential answers the guide request with an empty set. Tell the user before switching if the app relies on Pendo guides.

Pendo support is the least proven. It was built and tested against the format Pendo’s agent is documented to send, not yet against a live Pendo subscription. After switching, confirm on the Setup page that Pendo events arrive, and tell the user if they do not.

Add session replay (optional)

Optional, one line. The recorder picks up Pendo's session and user ids on its own, so every event above lands on the replay timeline. Put it on every page you want to replay, after the SDK. What it records and masks is set per project in Sequential (Settings → Projects → Session replay), not in the page. See Session replay.

html
<script src="https://api.usesequential.com/rec/recorder.js/YOUR_REPLAY_INGEST_KEY"></script>

Content-Security-Policy

Only if the site sets a Content-Security-Policy. Add these origins to the directives it already has; do not replace them.

text
script-src https://api.usesequential.com https://cdn.usesequential.com
connect-src https://api.usesequential.com

Check it works

  1. Load a page of the site in a normal browser (headless and automated browsers are rejected as bots) and open the network panel.
  2. Look for requests to the Sequential API URL that answer 2xx. A 401 means the key is wrong, or belongs to another source (every key works with one SDK only). A 403 means the request looked like a bot.
  3. In Sequential, Settings → Projects → Setup shows your source as "receiving" once its first event arrives. Until then, the Sequential SDK and session replay read "no events yet", and another source's line does not show. The page checks again every few seconds for 5 minutes after you open it. After that, reload it. The first event can take up to about a minute to appear.

More in Check your install.