What I learned after designing 117 paywalls
Jun 12, 2025

I spent 2+ years designing and testing paywalls across health and productivity apps. These are the surprising lessons that actually moved revenue and user trust.
People don’t want commitment, they want control
Our first paywall was simple: one plan, one price — a weekly $1 subscription.
It worked. Why? Because users didn’t want to commit. They didn’t want to pay $10 upfront. They wanted to feel like they could walk away anytime.
Later, we added monthly and yearly plans.
Did people switch? Nope. Most still chose weekly.
But just having the option bumped revenue by 30%.

The testimonial test that nearly doubled revenue
We added real user quotes to the paywall.
No design overhaul. No flashy animation. Just honest words.
Revenue went up 197%.
We also used that space to quietly mention new features. That worked, too.
Apparently, people like knowing what they’re getting.

One phrase outperformed everything else
We ran a bunch of interviews. Asked “why” five times, like a toddler.
Eventually, users told us they didn’t expect the app to fix everything, they just wanted to feel prepared.
So we rewrote the headline.
Instead of “Unlock your full potential,” we said:
Stay prepared. Not perfect.
Revenue jumped 200%.

The word “data” killed conversions
We thought “data privacy” messaging would help build trust.
We were wrong.
Every time we mentioned data, even casually,conversion dropped.
Even screenshots that looked like data-related UI performed worse.
This was a health app. People were already uneasy. Even honesty triggered doubt.
We pulled back. Trust isn’t always built by saying “trust me.”

We locked features in the nav. It worked.
We added locked items to the main nav.
When users tapped them, we showed a paywall for that feature.
Simple. Relevant. Direct.
It worked.
No one likes a surprise wall. But if the wall shows up exactly when you're curious? Different story.

Expectation is dangerous
Here’s what we tested:
Test A: Show all premium features on day one. Then lock them the next day.
Result: Conversions went up 40%.
Test B: Lock everything from the beginning.
Result: More trials. Fewer paying users.
Lesson:
If someone expects something and doesn’t get it, they’re disappointed.
If they stumble into something better than expected, they stick around.

Longer onboarding, better conversions
This one surprised us.
Short onboarding flows, clean, visual, to the point, got more trial signups.
But they didn’t convert.
When we asked more questions upfront (real questions, not just fluff), people took longer — but converted better.
Asking thoughtful questions made them feel invested.
By the time the paywall showed up, it felt more like a suggestion than a block.
What actually worked in offers
We tested a lot of variations. These are the ones that moved numbers:
Short, time-based offers (like “50% off today only”) converted better than longer ones
Weekend offers outperformed weekday ones
A countdown timer helped, urgency works
Real humans and animals beat generic animated GIFs
Short, direct copy outperformed long clever lines


We created a follow-up flow, not just onboarding, but a returning user sequence.
Each time a user opened the app, we showed a low-friction, contextual offer at a lower price.
This wasn’t about pressure. It was about relevance.
And it worked. The returning user flow consistently lifted revenue.
Most revenue came from onboarding.


People don’t want commitment, they want control
Our first paywall was simple: one plan, one price — a weekly $1 subscription.
It worked. Why? Because users didn’t want to commit. They didn’t want to pay $10 upfront. They wanted to feel like they could walk away anytime.
Later, we added monthly and yearly plans.
Did people switch? Nope. Most still chose weekly.
But just having the option bumped revenue by 30%.

The testimonial test that nearly doubled revenue
We added real user quotes to the paywall.
No design overhaul. No flashy animation. Just honest words.
Revenue went up 197%.
We also used that space to quietly mention new features. That worked, too.
Apparently, people like knowing what they’re getting.

One phrase outperformed everything else
We ran a bunch of interviews. Asked “why” five times, like a toddler.
Eventually, users told us they didn’t expect the app to fix everything, they just wanted to feel prepared.
So we rewrote the headline.
Instead of “Unlock your full potential,” we said:
Stay prepared. Not perfect.
Revenue jumped 200%.

The word “data” killed conversions
We thought “data privacy” messaging would help build trust.
We were wrong.
Every time we mentioned data, even casually,conversion dropped.
Even screenshots that looked like data-related UI performed worse.
This was a health app. People were already uneasy. Even honesty triggered doubt.
We pulled back. Trust isn’t always built by saying “trust me.”

We locked features in the nav. It worked.
We added locked items to the main nav.
When users tapped them, we showed a paywall for that feature.
Simple. Relevant. Direct.
It worked.
No one likes a surprise wall. But if the wall shows up exactly when you're curious? Different story.

Expectation is dangerous
Here’s what we tested:
Test A: Show all premium features on day one. Then lock them the next day.
Result: Conversions went up 40%.
Test B: Lock everything from the beginning.
Result: More trials. Fewer paying users.
Lesson:
If someone expects something and doesn’t get it, they’re disappointed.
If they stumble into something better than expected, they stick around.

Longer onboarding, better conversions
This one surprised us.
Short onboarding flows, clean, visual, to the point, got more trial signups.
But they didn’t convert.
When we asked more questions upfront (real questions, not just fluff), people took longer — but converted better.
Asking thoughtful questions made them feel invested.
By the time the paywall showed up, it felt more like a suggestion than a block.
What actually worked in offers
We tested a lot of variations. These are the ones that moved numbers:
Short, time-based offers (like “50% off today only”) converted better than longer ones
Weekend offers outperformed weekday ones
A countdown timer helped, urgency works
Real humans and animals beat generic animated GIFs
Short, direct copy outperformed long clever lines


We created a follow-up flow, not just onboarding, but a returning user sequence.
Each time a user opened the app, we showed a low-friction, contextual offer at a lower price.
This wasn’t about pressure. It was about relevance.
And it worked. The returning user flow consistently lifted revenue.
Most revenue came from onboarding.

