Stop losing users.
Grow your business.
Paste the link to your app on GitHub. We draw the whole thing as a map, then mark the screens people give up on.
$29 a month for one app, paid before we read anything. A private project takes one permission on GitHub.
For apps built with
- LovableBoltv0ReplitCursorClaude Code
We find the screen which is costing you the most users, and suggest a fix.
How it works
Keep the users you already paid for.
Three things happen. Each one tells you something you can act on today. Nothing to install, no dashboard to learn.
See your whole app in a minute.
Paste the link to your app on GitHub. A minute later you can see every screen you built, on one map, including the ones you forgot you had.
I read your app at 09:12. 6 screens, 19 buttons and fields, and 1 screen nothing links to.
The map is on the right, drawn from your own code. Tap any screen on it.
Invite team has nothing linking to it. It is in your code, and nobody can get there from anywhere else in the app.
A tool that only watches traffic cannot see this at all.
Find out which screen is costing you users.
Connect the visitor numbers you already have, or get them in one pasted line if you have none. Then you know exactly where people give up, how many, and what to try first.
Want to see where people give up? Connect the thing that counts your visitors.
I collect nothing myself. I read the numbers a tool you already use has collected.
Sign up is losing people. 163 of the 204 people who reached it stopped at the phone number field, in the last 7 days.
Know what every change did to your users.
Every time you ship, you hear whether fewer people give up now. No more guessing whether the change worked. Or just ask, in your own words, and get an answer from your own numbers.
You pushed “make phone optional”. It touched Sign up.
Sign up asks for two things now instead of three.
Sign up: 1 in 4 of the people who reach it stop now, down from 1 in 2. fewer stop here
Counted since your push, 77 people. Ask again after a week for a steadier number.
I cannot say yet. 9 people reached Checkout this week and 6 of them finished, and below 60 people I count individuals rather than quote a rate. Ask me again next week.
Pricing
Choose how many apps. That is the whole decision.
Every plan is paid, because every read costs us real money. The price follows how many apps we watch, and nothing else.
Solo
One product, and you are the one shipping it.
- One app
- Ninety days of history
Everything below, on one.
Get startedPro
Most peopleA few products, or a couple of you.
- Three apps
- Six months of history
Everything below, on three.
Get startedTeam
A team shipping every week.
- Ten apps
- A year of history
Everything below, on ten.
Get startedCustom
More than that, or a security review to answer.
- As many apps as you have
- Two years of history
- We answer your security review
Priced on what you need.
Talk to usEvery plan includes
- See your whole product as one map, drawn from your own code
- Hear where you are losing users, and how many, as a message with your app drawn beside it
- Find work you paid for that nothing links to
- Stop maintaining buttons nobody has ever pressed
- Hear about a risky change before you ship it
- Get something to try, written ready to paste
The same thread and the same map on every plan. You pay first, and the first read starts the minute after. The price only follows how many apps we watch.
Questions
Questions people ask first.
Answered properly, because the honest answer is rarely one line.
Analytics counts events. A screen nobody arrived at produces no event, so there is no record for the tool to find. The absence is invisible to anything that only counts what happened. userdrift finds it by reading the code as well, so it knows the screen exists before asking how many people got there.
You get the name of the screen where the most people give up, how many, and the fix to try, without reading your code or learning a dashboard. Under the hood it compares how many people reached each screen with how many reached the next, and reads what the screen asks of them from your own code. It says plainly that it is comparing two visitor counts rather than following one person between screens.
No. Your source is read once and discarded; what stays is the map of your screens and the paths between them, never the contents of your files. Nothing in your app changes unless you approve a change.
No. userdrift reads what an existing analytics tool has already collected and installs nothing in the product. PostHog is connected today; Amplitude, Mixpanel and Google Analytics are being built.
Solo is 29 US dollars a month for one product. Pro is 49 for three. Team is 149 for ten. Yearly billing is two months cheaper. There is no free tier, because every read costs real money to perform.
Every read of your code costs us real money, and a free plan is an invoice somebody else's script decides the size of. So you pay first, and we read straight after. If we cannot read your app well enough to be useful, we say so rather than pretend.
Founders who shipped a product with a tool like Lovable, Bolt, v0, Cursor or Claude Code and cannot read the code closely enough to find these problems by eye, and the teams who inherited what they built.