Target users and set display conditions

Product tours is in private alpha

Product Tours is currently in private alpha. Share your thoughts and we'll reach out with early access.

Currently only available on the web. Requires posthog-js >= v1.324.0.

Targeting controls who sees your tours and when they appear. A user must match all conditions to see a tour.

URL conditions

Show tours on specific pages using URL matching.

TypeDescriptionExample
ExactURL must match exactlyhttps://app.example.com/dashboard
ContainsURL must contain the string/dashboard matches any URL with /dashboard
RegexURL must match the pattern/users/[0-9]+

The URL is matched against the full window.location.href.

User targeting

Target specific users using feature flag filters. Every tour has an auto-created internal feature flag, and you can add targeting filters to control who sees the tour.

This lets you show tours to:

  • Users with specific properties (e.g., plan = pro)
  • Users in specific cohorts
  • A percentage of users (rollout)

Auto-launch delay

Set a delay (in seconds) before the tour appears after the page loads. This is useful when:

  • You want users to orient themselves before the tour starts
  • Target elements load asynchronously

Display frequency

Controls how often a tour shows to users.

Tours show until the user interacts with them (completes or dismisses). Once a user interacts, they won't see the tour again.

Announcements have configurable display frequencies:

TypeOptions
Modal announcementsShow once (default), or until interacted
BannersUntil interacted (default), or always

This is handled via person properties:

  • $product_tour_completed/{tour_id}
  • $product_tour_dismissed/{tour_id}

These properties are set automatically and used to filter out users who have already interacted with a tour.

Community questions

Was this page useful?

Questions about this page? or post a community question.