Skip to content

When to show an upgrade prompt, and when to wait

Growth without waiting on devExplainer4 min readMiniwall team

Ask for the upgrade right after the person gets something useful out of your product, or when they hit a limit they can see. Don't ask before either has happened, and don't ask again and again after they've said no. That's an opinion, not a finding, and the rest of this post is the reasoning.

The sign-up screen asks too early

Picture someone who just created an account. They don't know yet whether your product does what they need. A price on that screen asks them to pay for a promise.

Sometimes it's still the right call. If people arrive already knowing exactly what they want (a paid-only tool, a trial they chose on purpose), a plan screen at sign-up is just the next step. But for a product with a free tier, we'd start later, and let the first useful result do some of the talking.

Three moments worth waiting for

After the first useful result. They exported the file, finished the first project, got the answer. The product has just earned a little trust. A prompt here can say what they did and what the paid plan adds to it, which is easier to write well than a generic one.

When they hit a limit. The free plan allows three projects and they're making a fourth. They have a reason to listen, and the prompt answers a question they already have. Say plainly what the limit is and what lifts it. If they can close it and carry on with what they have, let them.

On a later visit. Someone who comes back a few days after signing up is telling you something. A prompt then rests on evidence that the product is being used. It's weaker than a limit and stronger than a cold ask.

MomentWhat the person just didWhat the prompt can say
First useful resultGot value for the first timeWhat they made, and what paid adds to it
A limitHit something the free plan won't doWhat the limit is and what lifts it
A return visitCame back on their ownWhat they've been using, and what's next

Swipe sideways to see every column.

We haven't tested any of these against each other. They're the three we'd try first, in roughly this order, and you'd know better than we would which fits your product.

Don't interrupt the middle of something

Whatever moment you choose, ask between tasks and not during one. A popup that lands while someone is typing, or halfway through a form, costs you more than the missed upsell: they lose their place, and the first thing they associate with your prompt is annoyance.

Timers are the usual culprit. "Show after 10 seconds" is easy to set up and has no idea what the person is doing at second ten. Use it when the page really is just something to read, like a pricing page. Elsewhere, tie the prompt to something the person did.

How often to ask

Once is fine to start. If they dismiss it, treat that as an answer for a while. We'd start with a small number of asks per visit (one), a gap of days between asks, and a firm stop for anyone who has explicitly said no more than a couple of times. Those are starting points to adjust, not benchmarks.

Frequency is also a budget. If your tool bills by views, a prompt that shows on every page load spends it on the same person repeatedly. Cap it for that reason too.

And one thing no frequency rule fixes: if the prompt has no clear way to close it, you're blocking the product, not asking. Make closing obvious.

Log shown and clicked, separately

This part is dull and it matters most. Record two things: that the prompt was shown, and that the person acted on it. Not one combined number.

Here's why. Suppose a prompt gets few purchases. That could mean the screen is weak. It could also mean almost nobody saw it, because the trigger fires on a page few people reach or a frequency rule skips it. Those need opposite fixes, and a single "conversions" number can't tell them apart. Shown tells you the reach. Clicked divided by shown tells you whether the screen does its job when people do see it.

Also log when your own rules chose not to show it, and why. A prompt that was suppressed isn't a prompt that failed, and it's easy to confuse the two later.

Before you change the timing, write down which number should move and by when. We wrote about doing that, and about how little a small audience can tell you, in A/B testing with little traffic.

When to ignore all this

If your product has no free tier, there's nothing to wait for; the plan screen belongs at the start. And if you're a small team with a handful of users a week, you'll learn more from watching three people use the product than from tuning timing rules.

Sources

Go further