How to Create In-App Surveys in PostHog
The best time to ask a user about an experience is right after they have had it. Email surveys arrive days later, to a fraction of users, with no context about what they did. In-app surveys reach users in the moment and can be targeted to people who actually used a feature.
PostHog Surveys lets you build surveys that appear inside your product, targeted by page, user properties, cohorts, or feature flags, with responses tied to the same users you analyze. This guide covers designing a focused survey, configuring targeting and timing, and turning responses into decisions.
Before you set this up, check what customers are actually asking for.
Paste call notes, support tickets or feedback. Vantage pulls out the signals and themes in about 30 seconds.
Step-by-step guide
Decide what you need to learn
Every survey should answer one question that affects a decision. 'Is the new import flow easier than the old one?' is a good question. 'What do users think?' is not. Write down the decision the survey will inform before writing any questions.
- Write the decision the survey informs
- Identify which users experienced the thing you are asking about
- Limit the survey to one to three questions
Create the survey and choose question types
Open Surveys in PostHog and create a new survey. Question types include open text, ratings, single choice, multiple choice, and links. A rating question followed by an optional open text question is a strong default: the rating gives you a measurable signal, and the text explains it.
- Create a new survey
- Add a rating or choice question for a measurable signal
- Add an optional open text follow-up
- Keep wording neutral to avoid leading answers
Choose how the survey is displayed
PostHog can display surveys as a popover using its built-in UI, or you can use the API mode to render the survey in your own components. The popover is fastest to ship. API mode gives you full control over design and placement if the survey needs to match your product closely.
Target the right users
Use display conditions to show the survey only where it is relevant. You can target by URL, by person properties, by cohort, or by a feature flag, which is useful for surveying users who have access to a beta feature. Targeting a survey at everyone produces noisy data from people who never used the thing you are asking about.
- Restrict by URL to the relevant page or flow
- Restrict by cohort or property to users who used the feature
- Use a feature flag condition for beta feedback
- Exclude internal users
Time the survey and limit frequency
Show the survey after the user completes the action you care about, not on page load. Avoid overlapping surveys and limit how often an individual user sees surveys. Survey fatigue reduces response quality across every future survey.
Analyze responses with behavior
Because responses are tied to PostHog users, you can look at what respondents did before and after answering. Compare ratings by plan, by cohort, or by whether users completed a funnel. A low rating from users who abandoned a flow points to a different problem than a low rating from power users.
- Review the rating distribution
- Read open text responses and tag common themes
- Break down ratings by plan or cohort
- Watch session recordings for respondents with low ratings if your setup captures them
Close the loop
Share a short summary with the team: the question, the response count, the main themes, and the decision you made. Stop the survey when you have enough responses. Surveys left running indefinitely become background noise.
Common mistakes
Surveying everyone
Untargeted surveys produce answers from users with no relevant experience. Target by behavior.
Too many questions
Response rates drop with every extra question. If you need more depth, follow up with interviews.
Leading questions
'How much did you love the new editor?' biases answers. Use neutral wording.
Tips
Pair each survey with a specific product decision and record the outcome.
Use a feature flag condition to survey beta users before a full rollout.
Tag open text responses with consistent themes so you can compare across surveys.
Invite a few respondents to a short interview to go deeper on recurring themes.
How Vantage helps
Survey responses are signal; the work is turning them into a decision. PMs can bring survey findings into Vantage as context, generate a PRD that cites the evidence, and produce dependency-aware tickets that push to Linear or Jira, so the reasoning travels with the work.