⚠️ This page is for a technical audience. If you are not a developer, you may want to send this page link to a developer who may complete the setup for you

The Bugpilot tracking code is required to use any Bugpilot functionality.

The setup is made of two steps:

  1. add a script tag to your pages

  2. call a method to identify users

Step 1: Add the script tag

To install the Bugpilot script, copy the code snippet shown in your Bugpilot dashboard. It is unique to you as it includes your Workspace Id.

Follow the instructions provided in the dashboard, selecting your frontend framework, if applicable. Once the code setup is complete, you can always access it from the Settings page, under Tracking Code.

Optional: Adjust your Content Security Policy

If your application uses Content Security Policies (CSP), you must include these additional origins for Bugpilot to work:

  • For script-src you need to add the following values:

    • https://script.bugpilot.io

  • For connect-src you need to add the following values:

    • https://api.bugpilot.io

    • wss://api.bugpilot.io

Step 2: Send user IDs

To get the most out of Bugpilot, or if you configured one of our help desk integrations, such as Intercom, Crisp, or LiveChat, you need to call follow this step.

You might find it useful to attach additional information, such as user subscription, trial status, or any user configuration that might be useful to debug issues. The information you provide will be displayed on the Bugpilot dashboard and the report page.

Important: sending a User Id is required to make the help desk integrations work. If you do not send a User Id, no report will be shown in your help desk sidebar.

Call Bugpilot.identify()

Call the Bugpilot.identify() method after you have the user information, for example, in an authentication callback. You may want to call this method next to where you initialize your help desk or analytics tag.

id: "user1234", // Required
email: "[email protected]", // Required for help desk integrations

// Optional:
firstName: "Jane",
lastName: "Doe",
subscriptionStatus: "active", // 'active', 'trialing', 'deleted'

// Any other property you want to store:
attr: val,

Important: If you're using an help desk integration, make sure to send the same user id and email you are using to initialize your help desk widget.

Notes on the properties you can pass:

  • the values are displayed in the Report under the User tab;

  • we recommend not passing any PII as part of the user object, unless it is strictly required. However, if you decide to do so, you might be required by your local laws and regulations to accept our Data Processing Addendum;

  • you should not send more than 10 properties;

  • multiple calls to identify will update existing values (i.e., the user id is replaced, and other properties are shallowly merged).

  • do not use any of the reserved property names: user_id, userId

Verify the installation

From your Bugpilot dashboard Setup page, click the Verify Installation button. A guided procedure will help you verify your script has been configured correctly.


id: user.id,
email: user.email,
subscriptionStatus: "trialing",
appVersion: "1.2.3"

Did this answer your question?