Every answer knows who gave it
Responses arrive already joined to the respondent’s attributes - plan, tenure, city, any event or profile property - so you can slice free from paid instead of reading an undifferentiated list.
In-app user research
userpulse reads the events you already have and asks the question inside your app the moment someone drops off - while they still remember what they were doing.
Early access - we’re onboarding teams one at a time, so sign-up is by invitation. Not invited yet? Sign up anyway and we’ll add you to the list.

Fired 2s after milestone_marked
Answer tagged premium · 34 days
Live without an app release
Founders can’t get feedback good enough to decide what to build. Interviews mean cold-contacting strangers, so they get postponed. Generic surveys return one-liners that never say what the person was trying to do. And the real blocker is earlier: deciding what to ask, who to ask, and when is itself the work that never happens.
How it works
From a sentence to a live study running against your existing analytics events.
Say what you want to learn. Claude reads your events, properties and cohorts through userpulse and drafts the study - or you build it yourself.
Nothing reaches a user until you publish it. The audience, the trigger and every question stay editable here, with a live preview of the sheet your users will actually see.
What were you trying to do?
The survey appears in-app at the moment you chose, as a short bottom sheet that never blocks what the user was doing.
Why it works
Response rate and depth are design problems, not persuasion problems.
Responses arrive already joined to the respondent’s attributes - plan, tenure, city, any event or profile property - so you can slice free from paid instead of reading an undifferentiated list.
The question arrives seconds after the behaviour it’s about, while the person still remembers what they were trying to do. Tap-first by design, because every extra keystroke costs response rate.
Invite a respondent to a call right after they answer. Instead of cold outreach, people self-select in - and every interview arrives warm, with their answer already attached.
Install
userpulse wraps your existing analytics client - Mixpanel or PostHog - so every event your app already sends becomes something a study can trigger on. No call sites change and nothing is re-instrumented.
It fails open, which is the part worth checking: if userpulse throws or is unreachable, your original track() or capture()still runs and its return value still comes back. The worst outage here is that a survey doesn’t appear.
Mobile apps, starting with React NativeMixpanel and PostHog
A short call - we’ll look at your events and design a study live.