Skip to content

Commit b9859e6

Browse files
arthurdedeusPostHogsarahxsandersgewenyu99
authored
docs: Customer analytics docs (#14146)
* docs: Customer analytics draft docs * Fix typos * chore: Use title case in product name * fix: Customer feeds -> customer profiles * Update src/pages/docs/customer-analytics.tsx Co-authored-by: Sarah Sanders <[email protected]> * Update contents/docs/customer-analytics/start-here.mdx Co-authored-by: Sarah Sanders <[email protected]> * Update contents/docs/customer-analytics/dashboard.mdx Co-authored-by: Sarah Sanders <[email protected]> * Update contents/docs/customer-analytics/start-here.mdx Co-authored-by: Vincent (Wen Yu) Ge <[email protected]> * Update contents/docs/customer-analytics/start-here.mdx Co-authored-by: Vincent (Wen Yu) Ge <[email protected]> * Update contents/docs/customer-analytics/start-here.mdx Co-authored-by: Vincent (Wen Yu) Ge <[email protected]> * docs: Refactor overview page * docs: Add screenshots to dashboard-events * docs: Add concept pages * docs: Add link to support in-app * docs: Restructure pages and content * Fix typos * docs: Review screenshots and guide contents * docs: Adjust FAQ * chore: Relative urls * fix: Blurry image --------- Co-authored-by: PostHog <[email protected]> Co-authored-by: Sarah Sanders <[email protected]> Co-authored-by: Vincent (Wen Yu) Ge <[email protected]>
1 parent b6a79ec commit b9859e6

File tree

14 files changed

+846
-4
lines changed

14 files changed

+846
-4
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { CalloutBox } from 'components/Docs/CalloutBox'
2+
3+
<CalloutBox icon="IconInfo" title="Customer Analytics is in beta" type="fyi">
4+
5+
Customer Analytics is currently in beta and free to use. We're actively developing this feature and would love your [feedback](https://app.posthog.com/customer_analytics#panel=support%3Afeedback%3Acustomer_analytics%3Alow%3Atrue).
6+
7+
</CalloutBox>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
title: B2B mode
3+
sidebar: Docs
4+
showTitle: true
5+
---
6+
7+
import CustomerAnalyticsBetaWarning from './_snippets/customer-analytics-beta-warning.mdx'
8+
9+
<CustomerAnalyticsBetaWarning />
10+
11+
Customer analytics dashboard has a button to choose between B2C and B2B mode. B2B mode is only available for organizations with [group analytics](/manual/group-analytics) add-on.
12+
13+
<ProductScreenshot
14+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_24_53_672_Z_b6bb2276f9.png"
15+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_24_30_293_Z_68347b6579.png"
16+
alt="Customer Analytics B2B mode"
17+
classes="rounded"
18+
/>
19+
20+
With the add-on enabled, you can see all insights in the dashboard with data from your selected group type.
21+
22+
23+
<ProductScreenshot
24+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_31_55_161_Z_d33be5a64f.png"
25+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_32_37_761_Z_8f2fc32ce4.png"
26+
alt="Customer Analytics B2B mode"
27+
classes="rounded"
28+
/>
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
title: Configure dashboard with AI
3+
---
4+
5+
You can use PostHog AI to find the best events to configure your Customer Analytics dashboard with.
6+
7+
For each event in the [configuration page](/docs/customer-analytics/configure-your-dashboard), there's a sparkle button right beside the event name. Clicking the button will pre-fill PostHog AI with a prompt to identify that specific event.
8+
9+
Each dashboard event has a different button, because there is a different prompt for each event.
10+
11+
<ProductScreenshot
12+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_57_26_738_Z_f7ba279249.png"
13+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_57_52_863_Z_f27de8d77e.png"
14+
alt="Configure dashboard events with AI"
15+
classes="rounded"
16+
/>
17+
18+
After PostHog AI finishes the research, it will provide a list of events that can be used to configure the dashboard.
19+
20+
<ProductScreenshot
21+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_20_T11_00_46_338_Z_7efa8b9f06.png"
22+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_20_T11_01_05_407_Z_52cbf52f4e.png"
23+
alt="Configure with AI chat"
24+
classes="rounded"
25+
/>
26+
27+
To assign the event to the dashboard, copy the name of the event provided and search it in the event selector.
28+
29+
<ProductScreenshot
30+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T14_24_01_132_Z_0f27630c56.png"
31+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T14_23_43_640_Z_9a7d006df5.png"
32+
alt="Use chat event suggestion"
33+
classes="rounded"
34+
/>
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
title: Configure your dashboard
3+
sidebar: Docs
4+
showTitle: true
5+
---
6+
7+
import CustomerAnalyticsBetaWarning from './_snippets/customer-analytics-beta-warning.mdx'
8+
9+
<CustomerAnalyticsBetaWarning />
10+
11+
The [customer analytics dashboard](https://us.posthog.com/customer_analytics) gives you an overview of the metrics that matter when building toward product-market fit: active users, signups, conversions, and engagement.
12+
13+
To extract its full potential, you need to configure a few events so that we know what is what. They also serve as a guide if you've just started instrumenting your application and unsure of what to track: tracking these is a good start.
14+
15+
<ProductScreenshot
16+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T18_45_30_373_Z_c57f043668.png"
17+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T18_46_37_819_Z_a0c5ad7667.png"
18+
alt="Customer analytics dashboard events configuration page"
19+
classes="rounded"
20+
/>
21+
22+
If you already have captured events, you can use [PostHog AI](/docs/customer-analytics-configure-dashboard-with-ai) to help you figure out what events to use.
23+
24+
## Activity event
25+
26+
What action a user needs to perform in your application to be considered active? The answer is your activity event.
27+
28+
This can be a single event or a set of events, it will depend on the size of your application.
29+
30+
Try to avoid generic, catch-all events here: plain `pageview` are usually not good activity events, as most of the time simply viewing a page doesn't mean much. If this is your case, try at least narrowing down by url or some other property.
31+
32+
At PostHog, for example, we track user activity with an action that encompasses events from each of our products. Some events that are part of this action are `insight created`, `feature flag created`, `survey viewed`, etc.
33+
34+
## Signup pageview event
35+
36+
These are the pageviews of your signup page. Nothing fancy. We use this to calculate your signup rate (rate of users who viewed the signup page and signed up), as well as the average conversion time.
37+
38+
This is usually pageview events of a specific url.
39+
40+
## Signup event
41+
42+
The signup is the event triggered whenever a new user completes registration and/or creates an account in your application. It is important to differentiate signup from login/sign-in, as these are entirely different events. A user can perform multiple signi-ns, while they can only signup once.
43+
44+
Tracking signups is crucial to understand how your product is growing and your customer acquisition.
45+
46+
## Subscription event
47+
48+
Subscription happens when the user enrolls into a plan. This can happen at different moments in different products: sometimes a subscription happens when signing up, sometimes it happens along with a payment. It doesn't really matter at what point it happens, what happens is that we're tracking subscriptions independently.
49+
50+
## Payment event
51+
52+
This is when the money is finally in! Payment events should track successful payments performed by customers. We use this event to calculate the number of paying customers and free-to-paid conversion rate.
53+
54+
# Deep diving on customers
55+
56+
Click on any customer in the dashboard to open their [customer profile](/docs/customer-analytics/customer-profile), where you can see their full activity history, errors, and support tickets.
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
title: Create usage metrics
3+
sidebar: Docs
4+
showTitle: true
5+
---
6+
7+
import CustomerAnalyticsBetaWarning from './_snippets/customer-analytics-beta-warning.mdx'
8+
9+
<CustomerAnalyticsBetaWarning />
10+
11+
You can create usage metrics in two ways:
12+
13+
1. Go to **Settings** > **Customer Analytics** and click **Add usage metric**
14+
2. Open any [customer profile](/docs/customer-analytics/customer-profiles) and click **Add usage metric**
15+
16+
<ProductScreenshot
17+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_24_16_161_Z_0fde31684b.png"
18+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_23_19_968_Z_a4de4c95f4.png"
19+
alt="Usage metrics creation form"
20+
classes="rounded"
21+
/>
22+
23+
### Configuration options
24+
25+
| Field | Description |
26+
| --- | --- |
27+
| **Name** | The column title shown in customer lists |
28+
| **Interval** | Time period for the metric: 7, 30 or 90 days |
29+
| **Format** | How the value should be formated: Numeric or currency |
30+
| **Match events** | Which events to count toward this metric |
31+
| **Filters** | Additional conditions to narrow down matched events |
32+
33+
### Match events
34+
35+
Click **Add event matcher** to specify which events count toward this metric. You can add multiple event matchers, the metric will count events matching any of them.
36+
37+
For example, to track API usage, you might match events named `api_request` or `api_call`.
38+
39+
### Filters
40+
41+
Filters apply to all matched events. Use them to narrow down what counts—for example, only counting successful API calls by filtering for `status = 200`.
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
title: Customer profiles
3+
sidebar: Docs
4+
showTitle: true
5+
---
6+
7+
import CustomerAnalyticsBetaWarning from './_snippets/customer-analytics-beta-warning.mdx'
8+
9+
<CustomerAnalyticsBetaWarning />
10+
11+
Customer profiles consolidate everything about a customer in one place. Instead of jumping between different parts of PostHog to understand a customer, you get their full picture in a single view.
12+
13+
<ProductScreenshot
14+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_30_34_040_Z_e0dea14b33.png"
15+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_30_59_919_Z_8a54ff12bf.png"
16+
alt="Person profile"
17+
classes="rounded"
18+
/>
19+
20+
## What's included in a profile
21+
22+
Customer profiles pull together data from across PostHog and connected sources:
23+
24+
| Data type | Source | Requirements |
25+
| --- | --- | --- |
26+
| Events | [Product analytics](/docs/product-analytics) | Automatic |
27+
| Errors | [Error tracking](/docs/error-tracking) | Error tracking enabled |
28+
| LLM traces | [LLM observability](/docs/ai-engineering/observability) | LLM observability enabled |
29+
| Support tickets | [Zendesk](/docs/cdp/sources/zendesk) | Zendesk data warehouse source connected |
30+
31+
## Viewing a customer profile
32+
33+
You can access customer profiles in two main ways:
34+
35+
1. **From the dashboard**: Click on any customer in the [customer analytics dashboard](https://us.posthog.com/customer_analytics)
36+
2. **From customer lists**: Click any [person](https://app.posthog.com/persons) or [group](https://app.posthog.com/groups/0) from the lists to open their profile
37+
38+
Accessing customers from insights and other producs will also land in their profile page.
39+
40+
## Persons vs groups
41+
42+
Customer profiles work for both individual [persons](/docs/data/persons) and [groups](/docs/product-analytics/group-analytics).
43+
44+
- **Person profiles** show activity for a single user
45+
- **Group profiles** show aggregated activity for an organization, company, or any other group type you've defined
46+
47+
This is useful for B2B products where you care about company-level activity, not just individual users.
48+
49+
## Usage metrics
50+
51+
Each customer profile displays [usage metrics](/docs/customer-analytics/usage-metrics) you've defined.
52+
53+
<ProductScreenshot
54+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_47_09_424_Z_893c3cd740.png"
55+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_19_T12_46_51_933_Z_ef9223c947.png"
56+
alt="Usage metrics in customer profile"
57+
classes="rounded"
58+
/>
59+
60+
## Connecting support tickets
61+
62+
To see support tickets in customer profiles, connect Zendesk as a [data warehouse source](/docs/cdp/sources/zendesk).
63+
64+
Once connected, support tickets appear in the profile alongside events and errors. This helps you understand the full context of a customer's experience: what they did, what went wrong, and what they asked for help with.
65+
66+
### How tickets are matched to customers
67+
68+
For people, the email associated with the person is used to get their Zendesk tickets. The ticket needs to have been created from the same email for it to show up.
69+
70+
For groups, all tickets from a given Zendesk organization are fetched. To correlate a PostHog group to a Zendesk organization, you need to set the organization `external_id` with the value of the `groupKey` used to create the group (ideally the ID of the group in your application's database).
71+
For more information about setting up groups, see [groups docs](/docs/product-analytics/group-analytics).
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
---
2+
title: Dashboard metrics
3+
sidebar: Docs
4+
showTitle: true
5+
---
6+
7+
import CustomerAnalyticsBetaWarning from './_snippets/customer-analytics-beta-warning.mdx'
8+
9+
<CustomerAnalyticsBetaWarning />
10+
11+
The [customer analytics dashboard](https://us.posthog.com/customer_analytics) kickstarts your demographic customer analysis with the insights that matter. But what insights are these and why do they matter?
12+
13+
## Active users (DAU/WAU/MAU)
14+
15+
The count of unique users who performed your activity event daily, weekly, or monthly.
16+
17+
This is your baseline pulse. If active users aren't growing or are declining, nothing else matters. But don't obsess over the absolute number early on, watch the trend. Consistent week-over-week growth (even small) suggests you're building something people want to return to. Flat or declining active users is a clear signal your product isn't sticky enough yet.
18+
19+
<ProductScreenshot
20+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_31_55_161_Z_d33be5a64f.png"
21+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_32_37_761_Z_8f2fc32ce4.png"
22+
alt="Active users insights in customer analytics dashboard"
23+
classes="rounded"
24+
/>
25+
26+
## Power users
27+
28+
Users who engage with your product significantly more than average. Here we consider the users that performed your activity event the most in the last 30 days.
29+
30+
Power users are your canary in the coal mine. If you have a small but growing group of people who love your product and use it intensely, you likely have something worth scaling. These users will tell you what's working, become your word-of-mouth engine, and often pay first.
31+
32+
Early-stage, you want to identify who these people are and understand why they're power users. Use this insight to find what users you should talk to!
33+
34+
<ProductScreenshot
35+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_38_12_927_Z_2967bd9372.png"
36+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_37_51_950_Z_0b6ffe5355.png"
37+
alt="Power users table in customer analytics dashboard"
38+
classes="rounded"
39+
/>
40+
41+
## Signups and signup conversion
42+
43+
The number of new accounts created and the percentage of visitors who complete signup.
44+
45+
Signups measure whether your positioning and acquisition efforts are working: are you attracting the right people? Signup conversion specifically tells you if your signup flow is creating friction.
46+
47+
But here's the catch: signups alone are a vanity metric. A flood of signups with no activation or retention means you're attracting the wrong users or overpromising. Analyze this alongside customer engagement to see if the signups are translating into real usage.
48+
49+
<ProductScreenshot
50+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_44_54_148_Z_ca05b3ba0a.png"
51+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_47_20_063_Z_bf2787a707.png"
52+
alt="Signup insight in customer analytics dashboard"
53+
classes="rounded"
54+
/>
55+
56+
## Paying customers and free-to-paid user conversion
57+
58+
The count of users on a paid plan and the percentage of free users who convert to paid.
59+
60+
This is one of the strongest PMF signals. People paying you money is validation that your product solves a problem worth solving. Free-to-paid conversion rate tells you how effectively your product demonstrates value.
61+
62+
<ProductScreenshot
63+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_50_13_293_Z_3a23ad46d0.png"
64+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_49_06_744_Z_b1e3f3851f.png"
65+
alt="Free-to-paid conversion insight in customer analytics dashboard"
66+
classes="rounded"
67+
/>
68+
69+
## Engagement
70+
71+
A breakdown customers by their [lifecycle](https://posthog.com/docs/product-analytics/lifecycle) stage in terms of the activity event.
72+
73+
Raw engagement counts hide what's actually happening in your user base. The lifecycle view exposes the composition of your engagement—and that's where the signal is.
74+
A few patterns to watch for:
75+
76+
- Healthy growth: New users entering the funnel, returning users growing or stable, dormant users staying low relative to active. This is what PMF looks like.
77+
- Leaky bucket: Lots of new users, but dormant is growing faster than returning. You're acquiring users but failing to retain them. Fix [activation](https://posthog.com/newsletter/wtf-is-activation) and retention before scaling acquisition.
78+
- Resurrection spikes: A sudden jump in resurrected users after a product change or campaign tells you something worked to re-engage churned users. Dig into what triggered it.
79+
- Returning plateau: If returning users flatten while new users keep coming, you've hit a ceiling on stickiness. Your core loop isn't compelling enough to keep people engaged long-term.
80+
81+
The lifecycle insight forces you to stop celebrating vanity engagement numbers and confront whether your product is actually building a sustainable, growing user base.
82+
83+
<ProductScreenshot
84+
imageLight="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_51_53_929_Z_6c6574ed1e.png"
85+
imageDark="https://res.cloudinary.com/dmukukwp6/image/upload/q_auto,f_auto/pasted_image_2025_12_18_T19_52_21_074_Z_250fdd5755.png"
86+
alt="Lifecycle insight in customer analytics dashboard"
87+
classes="rounded"
88+
/>

0 commit comments

Comments
 (0)