How do you set up paywall targeting rules effectively?

Been experimenting with different paywall triggers but results are all over the place.

Currently showing after 3 actions but wondering if I should be more strategic about user segments and timing.

What targeting logic actually moves the needle on conversions?

Session depth usually beats action counts. Show it when users are clearly engaged, not just clicking around.

Track users who actually convert and work backwards from there. Pull data on your paying customers - when did they subscribe relative to signup? What features did they use right before converting? Most apps I’ve worked with find 2-3 clear patterns. Maybe power users convert after hitting a usage limit. Casual users need more nurturing and convert better after they get a win. Build separate flows for each pattern. Skip the guesswork and let actual conversion data tell you when to show the paywall.

Segment users based on their intent instead of actions or time spent.

Show the paywall early to high intent users when they try premium features. For low intent users, display it after they have used core features multiple times and formed a habit.

Focus on areas where users experience friction without premium features. That is your conversion sweet spot.

Value moments work better than action counts. I learned this running campaigns for a productivity app.

We switched from “3 actions” to showing the paywall right after users completed their first project or saved something important. Conversion jumped from 2.8% to 4.1%.

For new users, I wait until they hit a clear win - like finishing onboarding or using a core feature successfully. Engaged users get it after they try a premium feature that’s locked.

Time on app matters too. Users who spend 5+ minutes in their first session convert way better than quick browsers, even if they do more actions.

Behavior triggers beat blind timing every time. Watch for patterns in your successful converters and build rules around those moments.

Test one segment at a time though. I made the mistake of changing everything at once and couldn’t tell what actually worked.

Test based on user behavior not random action counts.