Skip to content

Commit d039da9

Browse files
authored
Merge branch 'master' into docs-writer-ai-update-2026-02-27T22-37-27-813Z-ydcabm
2 parents 4348154 + d9138b9 commit d039da9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+1750
-787
lines changed

contents/blog/best-inapp-survey-tools.mdx

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,18 @@
11
---
2+
date: 2026-02-26
23
title: The best in-app survey tools for product teams, compared
3-
date: 2026-02-23
44
rootPage: /blog
5-
sidebar: Blog
6-
showTitle: true
7-
hideAnchor: true
8-
author:
9-
- jina-yoon
105
featuredImage: >-
116
https://res.cloudinary.com/dmukukwp6/image/upload/v1720536764/posthog.com/contents/surveys-hog.png
127
featuredImageType: full
8+
author:
9+
- jina-yoon
1310
category: General
1411
tags:
1512
- Comparisons
1613
seo:
17-
{
18-
metaTitle: 'The best in-app survey tools for product teams, compared',
19-
metaDescription: 'Compare the top in-app survey tools. See how PostHog, Hotjar, Sprig, Survicate, Pendo, and SurveyMonkey stack up for collecting user feedback.',
20-
}
14+
metaTitle: The best in-app survey tools for product teams, compared
15+
metaDescription: Compare the top in-app survey tools. See how PostHog, Hotjar, Sprig, Survicate, Pendo, and SurveyMonkey stack up for collecting user feedback.
2116
---
2217

2318
import { CalloutBox } from 'components/Docs/CalloutBox'

contents/blog/best-mobile-app-analytics-tools.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
date: 2026-02-06
2+
date: 2026-02-26
33
title: The 7 best mobile app analytics tools
44
rootPage: /blog
55
featuredImage: >-
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
> **Identifying users is required.** Backend events need a `distinct_id` that matches the ID your frontend uses when calling `posthog.identify()`. Without this, backend events are orphaned — they can't be linked to frontend event captures, [session replays](/docs/session-replay), [LLM traces](/docs/ai-engineering), or [error tracking](/docs/error-tracking).
2+
>
3+
> See our guide on [identifying users](/docs/getting-started/identify-users) for how to set this up.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
> **Identifying users is required.** Call `posthog.identify('your-user-id')` after login to link events to a known user. This is what connects frontend event captures, [session replays](/docs/session-replay), [LLM traces](/docs/ai-engineering), and [error tracking](/docs/error-tracking) to the same person — and lets backend events link back too.
2+
>
3+
> See our guide on [identifying users](/docs/getting-started/identify-users) for how to set this up.

contents/docs/advanced/proxy/_snippets/managed-reverse-proxy.mdx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ If you're onboarding a web-based product like Web Analytics, Surveys, or LLM Ana
2121

2222
<CalloutBox icon="IconInfo" title="Before you start" type="fyi">
2323

24-
Choose a neutral subdomain that doesn't include words like `analytics`, `tracking`, `telemetry`, or `posthog`. Ad blockers target obvious terms.
24+
Choose a neutral subdomain that doesn't include words like `analytics`, `tracking`, `telemetry`, `posthog`, or `ph`. Ad blockers target these terms. If ad blockers block your domain, the proxy won't achieve its intended effect.
2525

2626
</CalloutBox>
2727

@@ -35,7 +35,11 @@ Go to your DNS provider and create a new **CNAME record**:
3535
2. Set the **Target** to the proxy domain PostHog generated in the previous step. You'll see it in your proxy settings, it looks like `4854cf84789d8596ad01.proxy-us.posthog.com`
3636
3. Save the record
3737

38-
> **Note:** If you're using Cloudflare, disable proxying on this CNAME record by clicking the cloud icon and set it to **DNS only**. Cloudflare's proxy interferes with PostHog's SSL certificate provisioning.
38+
<CalloutBox icon="IconWarning" title="Disable DNS provider proxy features" type="caution">
39+
40+
If you're using a DNS provider like Cloudflare that offers proxy options (orange cloud), make sure the proxy is **disabled** (gray cloud) for this CNAME record. Enabling the proxy at your DNS provider may interfere with PostHog's managed reverse proxy functionality and SSL certificate provisioning.
41+
42+
</CalloutBox>
3943

4044
</Step>
4145

contents/docs/advanced/proxy/cloudflare.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ In the Cloudflare dashboard, follow [Cloudflare's custom domains guide](https://
161161

162162
Using your own domain instead of the default `*.workers.dev` domain makes the proxy less likely to be blocked. Ad blockers recognize and block `*.workers.dev` patterns.
163163

164-
Avoid obvious terms like `tracking`, `analytics`, `posthog`, or `telemetry` in your subdomain name. Use something neutral like `e`, `ph`, or `ingest` instead.
164+
Avoid obvious terms like `tracking`, `analytics`, `posthog`, `telemetry`, or `ph` in your subdomain name. Use something neutral like `e`, `t`, or `ingest` instead.
165165

166166
</Step>
167167

@@ -227,7 +227,7 @@ Configure the record:
227227

228228
The CNAME points your subdomain to PostHog's proxy endpoint. The orange cloud means Cloudflare will proxy the traffic instead of just doing DNS resolution.
229229

230-
Avoid obvious terms like `tracking`, `analytics`, `posthog`, or `telemetry` in your subdomain. Use something neutral like `e`, `ph`, or `ingest` instead.
230+
Avoid obvious terms like `tracking`, `analytics`, `posthog`, `telemetry`, or `ph` in your subdomain. Use something neutral like `e`, `t`, or `ingest` instead.
231231

232232
</Step>
233233

contents/docs/advanced/proxy/proxy-reference.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ Check your project URL in the [PostHog app](https://app.posthog.com) to confirm
2323
- Allow `GET` and `POST`** on all paths.
2424
- Support 64MB request bodies, session recordings can be large.
2525
- Forward `X-Forwarded-For` to preserve client IPs for geolocation.
26-
- Avoid obvious paths** like `/analytics` or `/posthog`, use `/e` or `/ph` instead.
26+
- Avoid obvious paths like `/analytics`, `/posthog`, or `/ph`. Use `/e` or `/ingest` instead.
2727

2828
### SDK configuration
2929

@@ -81,14 +81,14 @@ Use a relative path to avoid cross-origin issues:
8181

8282
```js file=US
8383
posthog.init('<ph_project_token>', {
84-
api_host: '/ph',
84+
api_host: '/ingest',
8585
ui_host: 'https://us.posthog.com'
8686
})
8787
```
8888

8989
```js file=EU
9090
posthog.init('<ph_project_token>', {
91-
api_host: '/ph',
91+
api_host: '/ingest',
9292
ui_host: 'https://eu.posthog.com'
9393
})
9494
```

contents/docs/ai-engineering/ai-wizard.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
title: AI wizard
33
---
44

5+
import WizardInstall from 'getting-started/_snippets/wizard.mdx'
6+
57
The PostHog wizard automatically installs and instruments PostHog into your application codebase using AI. It's an agentic CLI tool that handles the entire PostHog integration process on your behalf.
68

79
Set up the PostHog platform in minutes, with a single command.

contents/docs/integrations/replit.mdx

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ icon: >-
55
https://res.cloudinary.com/dmukukwp6/image/upload/replit_logo_9526a2cdb8.svg
66
---
77

8-
import { CalloutBox } from 'components/Docs/CalloutBox'
9-
108
<iframe
119
width="560"
1210
height="315"
@@ -27,12 +25,6 @@ import ReplitBadge from 'components/ReplitBadge'
2725
2. When prompted, log in to PostHog to authorize access
2826
3. The PostHog MCP server is now available in your Replit Agent
2927

30-
<CalloutBox icon="IconFlag" title="EU region users" type="fyi">
31-
32-
If your PostHog project is on EU Cloud, use `https://mcp-eu.posthog.com/mcp` instead.
33-
34-
</CalloutBox>
35-
3628
## Set up PostHog in your project
3729

3830
Once connected, give Replit Agent this prompt to add PostHog with error tracking and source maps:

contents/docs/integrations/v0.mdx

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ title: v0 integration
33
sidebarTitle: v0
44
---
55

6-
import { CalloutBox } from 'components/Docs/CalloutBox'
7-
86
The PostHog MCP lets v0 query your analytics data, investigate errors, manage feature flags, and run experiments - all through natural language.
97

108
## Connect PostHog to v0
@@ -19,12 +17,6 @@ The PostHog MCP lets v0 query your analytics data, investigate errors, manage fe
1917

2018
The PostHog MCP server is now available in your v0 chats.
2119

22-
<CalloutBox icon="IconFlag" title="EU region users" type="fyi">
23-
24-
If your PostHog project is on EU Cloud, use `https://mcp-eu.posthog.com/mcp` instead.
25-
26-
</CalloutBox>
27-
2820
## Set up PostHog in your project
2921

3022
Once connected, give v0 this prompt to add PostHog with the Vercel Flags SDK:

0 commit comments

Comments
 (0)