Paywalls

You will learn the following:

  • Create and customize paywall experiences
  • Configure triggers and billing logic
  • Track and optimize conversion rates
  • Implement A/B testing

Paywall Example

Plandalf's paywalls are designed to help you maximize conversion while providing a seamless user experience. Our system combines powerful customization with data-driven optimization, all managed through a no-code dashboard.

How It Works

Flows & Triggers

A flow represents a complete upgrade journey in your app. Each flow has:

  • A unique identifier (e.g., premium_features, usage_limit)
  • Trigger conditions defined in the dashboard
  • Multiple possible scenarios
  • Analytics tracking built-in
Flow Management
javascript
// Check if a flow is currently active
const isActive = plandalf.isWorkflowActive('premium_features');

if (isActive) {
  // Flow is already in progress
  return;
}

Scenarios & Elements

Scenarios and elements are configured entirely in the dashboard. Your code only needs to dispatch events - the dashboard handles which scenario to show and how to track it.

Scenarios determine which experience to show based on conditions you define in the dashboard:

  • User segments
  • Usage patterns
  • Previous interactions
  • Custom rules

Elements are the actual UI components shown to users:

  • Custom designed in Figma
  • Attached to specific scenarios
  • A/B tested variants
  • Fully responsive

Example dashboard configuration:

javascript
Flow: "premium_features"
├── Trigger: "feature_accessed"
│   └── Condition: "user.plan === 'free'"
├── Scenario: "first_time"
│   ├── Condition: "!user.has_seen_paywall"
│   └── Element: "feature-highlight-wall"
├── Scenario: "usage_limit"
│   ├── Condition: "user.usage > user.limit"
│   └── Element: "usage-upgrade-wall"
└── Scenario: "returning_user"
    ├── Condition: "user.has_seen_paywall"
    └── Element: "simplified-wall"

Analytics Integration

Analytics are automatically handled based on your dashboard configuration:

  • Entry events when scenarios are shown
  • Interaction tracking for each element
  • Conversion attribution to scenarios
  • A/B test performance tracking

Implementation Steps

1. Define Your Flows

In the dashboard:

  1. Create a new flow
  2. Define trigger events
  3. Set up scenarios and conditions
  4. Attach UI elements

2. Add Trigger Points

In your code, simply dispatch events at key moments:

javascript
// When a premium feature is accessed
plandalf.dispatch('feature_accessed')

// When usage limits are reached
plandalf.dispatch('usage_limit_reached')

// When trial period is ending
plandalf.dispatch('trial_ending')

3. Handle Active Flows

Check for active flows before starting new ones:

javascript
// Before showing a new upgrade prompt
if (!plandalf.isWorkflowActive('premium_features')) {
  plandalf.dispatch('feature_accessed')
}

Best Practices

Trigger Placement

  • Identify natural upgrade moments
  • Don't interrupt critical user flows
  • Space out trigger attempts
  • Consider user engagement levels

Scenario Design

  • Start with broad scenarios
  • Refine based on data
  • Test different messaging
  • Personalize by segment

Flow Management

  • One flow per upgrade path
  • Clear trigger conditions
  • Consistent scenario naming
  • Regular performance review

Need help designing your upgrade flows? Our team can help you identify the best trigger points and create optimized scenarios for your use case.