Usertour

Mock web app in a browser window, with two numbered tooltips pointing at a page title and a notification bell, one showing Previous and Next buttons.

Tours and checklists injected by a 20 kB SDK

Usertour layers product tours, checklists, banners, launchers, NPS surveys and a help center over a web app, and product announcements land in that help center with an unread badge. Flows are put together in a visual builder aimed at elements of the live page, so the app's code doesn't change for each one. The code change happens once: installing Usertour.js, an SDK of about 20 kB that loads asynchronously, from npm or as an HTML snippet that Google Tag Manager can also drop in. The app then passes it the signed-in user's ID and attributes through identify().

Random A/B buckets, per-environment tokens and an MCP endpoint

  • Content starts on user or company attributes and on tracked events. Release 0.9.6 added two attribute types that Usertour derives from the user or company ID, Random A/B and Random number, so a flow can go to a fixed slice of users without client-side code.
  • A single account holds several environments, production and staging for instance, each with its own token. The version history shows who changed a flow and when.
  • Every flow reports views, completion rate and the step where users drop off. Events stream to Amplitude, Heap, Mixpanel, PostHog or Segment, and Mixpanel and Amplitude cohorts come back as targeting segments.
  • An assistant such as Claude Code, Cursor or Codex can build flows through the bundled MCP server. A self-hosted instance runs its own, at the URL shown under Settings > MCP.

A four-service stack to run, and a license for SSO and 2FA

Pitched as the open-source alternative to Userflow and Appcues. The README adds Userpilot, Userguiding and Chameleon to the list, and the homepage advertises an MIT-licensed core with commercial licensing as an option.

MIT covers the core, not all of the code. The Community Edition is free to self-host, production and commercial use included. Removing Usertour branding, or switching on SSO, the audit log or two-factor authentication, requires a Business or Enterprise license. That code ships in the same repository under an Enterprise License that bars production use without a subscription. Webhooks run the other way: Usertour Cloud keeps them for paid plans, while self-hosted instances never gate them.

Self-hosting takes PostgreSQL, Redis, S3 storage and an SMTP server. The environment variable reference marks all four as required, and without SMTP, sign-up and member invitations are unavailable. The Docker guide advises against running the bundled Compose file, with its own PostgreSQL and Redis, in production, and points to managed services or a high-availability setup. The app speaks plain HTTP on port 8011; HTTPS needs a reverse proxy. Driver.js runs tours with no backend to host, but every step there is written in JavaScript.

The SDK has to be told where the instance is. Until window.USERTOURJS_ENV_VARS supplies the script URLs, the HTML snippet loads it from js.usertour.io. The Docker image serves its own copy under /sdk/.

Browser apps only. The FAQ rules out native mobile apps and desktop software. Single-page apps, PWAs and mobile browsers are covered, and the SDK picks up route changes on its own.

Version 0.x, ten releases in three months. Version 0.9.6 shipped on October 8, 2026, the 61st GitHub release since 0.1.2 on February 1, 2025, and the last commit is dated October 25, 2026. The docs label the v2 API and the MCP server as beta, with an interface that may still change. The FAQ recommends the cloud offering.