Skip to main content
The PostHog and Dovetail logos, connected

Overview

The PostHog integration imports responses to the PostHog surveys you choose. Dovetail analyzes the open-text answers, and brings score and choice answers across as fields, including NPS and CSAT scores you can chart in Dashboards. The source connects to one PostHog project with a personal API key. Each survey you select becomes a dataset. A workspace admin creates the PostHog source once for the whole workspace, and channels then add its surveys. Learn more about Sources →
If your workspace doesn’t have Sources, see Connect a tool without Sources. The requirements under Before you start for the tool itself still apply.

Before you start

In Dovetail

  • A workspace admin creates the source. Other users can request it.
  • The credentials you connect with are shared by the whole workspace. See Shared credentials for how to choose an account.

In PostHog

  • A PostHog Cloud project. Dovetail connects to PostHog Cloud US (us.posthog.com) or PostHog Cloud EU (eu.posthog.com). Self-hosted PostHog isn’t supported.
  • The project ID. A PostHog source reads surveys from one PostHog project. The numeric project ID is under Project settings → Details in PostHog.
  • A personal API key scoped to survey:read and query:read. In PostHog, open your account settings, go to Personal API keys, and select Create personal API key. Select both scopes. If you limit the key’s project access, include the project you’re connecting.
A personal API key stops working if the PostHog user who created it loses access to the project. We recommend creating the key as a dedicated PostHog user for the integration.
The Personal API keys page in PostHog settings, listing scoped keys

Create the PostHog source

1

Open Sources and select PostHog

In the sidebar, select Sources, then select PostHog.
2

Connect PostHog

Fill in the credentials form, then select Connect:
  • Region: United States (us.posthog.com) or European Union (eu.posthog.com), to match the PostHog Cloud your project is on.
  • Project ID: the numeric ID from Project settings → Details in PostHog.
  • API key: your personal API key.
3

Choose surveys and an import period

In Select surveys, choose one or more surveys. Dovetail analyzes every open-text question in the surveys you select. Then choose an Import period. See Import period.
4

Choose who can use the source

Choose who can use the source, then select Next. See Create a source.
5

Create the source

Choose whether to auto-redact sensitive information in the source’s data, then select Create source. The first import starts right away. See Redact data from sources.

Authentication and permissions

PostHog connects with a personal API key. Dovetail uses its two scopes to read:
  • survey:read, to list the project’s surveys and read their questions.
  • query:read, to fetch the survey responses.
Both scopes are read-only. Dovetail doesn’t write anything to PostHog. Dovetail checks only survey:read when you connect, so a key without query:read is accepted but the source then can’t read responses. The API key is stored once for the whole workspace. To change the account or credentials, see Reconnect a source.

Datasets

Each PostHog survey you select becomes its own dataset and syncs on its own, so a problem with one survey doesn’t stop the others. A channel can add some or all of the source’s surveys. The picker lists the connected project’s surveys that aren’t archived. Every open-text question in a survey is analyzed, and every score and choice question becomes a field. A survey needs at least one open-text question to import anything, because Dovetail creates data points only from open-text answers. To add more surveys later, open the source and select Add survey. See Add datasets.

What gets imported

Each survey submission becomes one data point. Its text is the respondent’s open-text answers, each paired with its question. This is the text Dovetail analyzes.

Always imported

Imported when present

To rename the fields above or change their types, see Source fields. Need a field that isn’t on this list? Let us know.

Not imported

  • Submissions with no open-text answer. A respondent who answers only score or choice questions doesn’t create a data point.
  • Other question types, such as link questions.
  • Other person and event properties. Dovetail uses only the person’s email and name.
  • Answers added to a partial response after its data point is created.

Customer emails

This data includes customer email addresses, so Dovetail can link data points to contacts. See Create contacts from source data. For a response to carry an email, the respondent has to be an identified PostHog person with an email property, for example through posthog.identify(distinctId, { email, name }). Responses from anonymous respondents still import, but they aren’t linked to a contact.

Scores and field types

Each score question in a survey becomes its own field, named after the question: To chart scores in Dashboards, the field must use the NPS or CSAT type. See NPS and CSAT scores for Dashboards.

Sync behavior

The first import starts when the source is created. After that, the source syncs about every hour. See Manage a source.
  • Import period. The import period applies to when each response was submitted. Responses submitted before the start of the period aren’t imported.
  • Ongoing sync. Each sync imports responses submitted since the previous sync.
  • Partial responses. For surveys that record partial responses, answers the respondent gives after Dovetail creates the data point aren’t added to it.

Troubleshooting

Dovetail doesn’t accept my credentials. Check that:
  • Region matches the PostHog Cloud your project is on.
  • Project ID is the numeric ID from Project settings → Details in PostHog, not the project’s name or its project API key.
  • API key is a personal API key with the survey:read scope, and its project access includes the project.
The source stops syncing, with a reason saying permission was denied. Usually the key is missing the query:read scope, or the user who created the key has lost access to the project. Fix this in PostHog, then select Sync now. See Source statuses. The source needs to be reconnected. PostHog no longer accepts the API key, for example because it was deleted or rolled. Create a new personal API key with both scopes, then reconnect the source. A survey isn’t in the picker. Check that the survey is in the project whose ID you entered, and that it isn’t archived in PostHog. A survey has responses in PostHog, but nothing imported. Check that:
  • The survey has at least one open-text question. Surveys with only score or choice questions import nothing.
  • The responses include an open-text answer. Responses that answer only score or choice questions aren’t imported.
  • The responses were submitted within the import period. See Get older data.
  • The survey is launched, and PostHog captures survey sent events for it.
  • The channel includes the survey’s dataset. See Missing or outdated data.
Responses aren’t linked to contacts. Dovetail links a response to a contact only when the respondent’s PostHog person has an email. See Customer emails. My score question isn’t available in an NPS or CSAT widget. A rating question on a scale other than 5 or 10 points arrives as a Rating field. Change the field to NPS or CSAT. See If a channel is missing from a widget. PostHog isn’t available when I set up a channel. See Troubleshoot sources.

Revoke access in PostHog

Pausing or deleting the source in Dovetail doesn’t delete the personal API key in PostHog. To cut off Dovetail’s access, delete the key in PostHog under Personal API keys in your account settings. Responses already imported stay in Dovetail. To pause or delete the source in Dovetail, see Manage a source. To take its data out of one channel, see Channel setup.

Sources

What a source is, and how its data reaches channels.

Channel setup

Add the source’s surveys to a channel, or remove them.

Manage a source

Check a source’s status, sync it, pause it, or add surveys.

Dashboards

Chart NPS and CSAT scores from your PostHog surveys.