Leaky Paywall 4.22.3

Does Leaky Paywall work with WordPress 6.8.3 and PHP 8.1.12? A smoke test was performed on .

Summary

Errors
2PHP warnings
2PHP deprecation warnings
1JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 218.38 KiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: insignificant.
The plugin didn't make the site noticeably slower.

Environment
WordPress version6.8.3
PHP version8.1.12
MySQL version10.6.10
PHP memory limit512M
Plugin Info
Last updated
Active installs 700+
WordPress.org page https://wordpress.org/plugins/leaky-paywall/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 18

Plugins ‹ Test site — WordPress

Page screenshot: Plugins ‹ Test site — WordPress
URL /wp-admin/plugins.php?plugin_status=all&paged=1&s
Requested URL /wp-admin/plugins.php?action=activate&plugin=leaky-paywall%2Fleaky-paywall.php&plugin_status=all&paged=1&s&_wpnonce=0d5667ec34
Aspect after-activation
HTTP status 200
Load time 0.355 s
Memory usage 4.84 MiB
JS errors None
Resource errors None

Leaky Paywall

Page screenshot: Leaky Paywall
URL /wp-admin/admin.php?page=issuem-leaky-paywall
Aspect menu-item
HTTP status 200
Load time 0.199 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Restrictions

Page screenshot: Leaky Paywall → Restrictions
URL /wp-admin/admin.php?page=issuem-leaky-paywall&tab=restrictions
Aspect menu-item-tab
HTTP status 200
Load time 0.172 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Subscriptions

Page screenshot: Leaky Paywall → Subscriptions
URL /wp-admin/admin.php?page=issuem-leaky-paywall&tab=subscriptions
Aspect menu-item-tab
HTTP status 200
Load time 0.182 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Payments

Page screenshot: Leaky Paywall → Payments
URL /wp-admin/admin.php?page=issuem-leaky-paywall&tab=payments
Aspect menu-item-tab
HTTP status 200
Load time 0.226 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Emails

Page screenshot: Leaky Paywall → Emails
URL /wp-admin/admin.php?page=issuem-leaky-paywall&tab=emails
Aspect menu-item-tab
HTTP status 200
Load time 0.929 s
Memory usage 3.7 MiB
JS errors None
Resource errors None

Leaky Paywall → Licenses

Page screenshot: Leaky Paywall → Licenses
URL /wp-admin/admin.php?page=issuem-leaky-paywall&tab=licenses
Aspect menu-item-tab
HTTP status 200
Load time 0.196 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Help

Page screenshot: Leaky Paywall → Help
URL /wp-admin/admin.php?page=issuem-leaky-paywall&tab=help
Aspect menu-item-tab
HTTP status 200
Load time 1.908 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Subscribers

Page screenshot: Leaky Paywall → Subscribers
URL /wp-admin/admin.php?page=leaky-paywall-subscribers
Aspect menu-item
HTTP status 200
Load time 0.661 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Transactions

Page screenshot: Leaky Paywall → Transactions
URL /wp-admin/edit.php?post_type=lp_transaction
Aspect menu-item
HTTP status 200
Load time 0.196 s
Memory usage 3.75 MiB
JS errors None
Resource errors None

Leaky Paywall → Insights

Page screenshot: Leaky Paywall → Insights
URL /wp-admin/admin.php?page=leaky-paywall-insights
Aspect menu-item
HTTP status 200
Load time 0.213 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Insights → Subscriptions

Page screenshot: Leaky Paywall → Insights → Subscriptions
URL /wp-admin/admin.php?page=leaky-paywall-insights&tab=subscriptions
Aspect menu-item-tab
HTTP status 200
Load time 0.168 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Insights → Content

Page screenshot: Leaky Paywall → Insights → Content
URL /wp-admin/admin.php?page=leaky-paywall-insights&tab=content
Aspect menu-item-tab
HTTP status 200
Load time 0.166 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Leaky Paywall → Upgrade

Page screenshot: Leaky Paywall → Upgrade
URL /wp-admin/admin.php?page=leaky-paywall-upgrade
Aspect menu-item
HTTP status 200
Load time 0.167 s
Memory usage 3.69 MiB
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.302 s
Memory usage 3.61 MiB
JS errors
[
    {
        "message": "ReferenceError: Stripe is not defined\n    at HTMLDocument.<anonymous> (/wp-content/plugins/leaky-paywall/js/stripe-registration.js?ver=4.22.3:5:22)\n    at e (/wp-includes/js/jquery/jquery.min.js?ver=3.7.1:2:27028)\n    at t (/wp-includes/js/jquery/jquery.min.js?ver=3.7.1:2:27330)",
        "trace": null,
        "code": null
    }
]
Resource errors None

Dashboard ‹ Test site — WordPress

Page screenshot: Dashboard ‹ Test site — WordPress
URL /wp-admin/index.php
Aspect new-meta-boxes
HTTP status 200
Load time 0.319 s
Memory usage 3.75 MiB
JS errors None
Resource errors None

Add Post ‹ Test site — WordPress

Page screenshot: Add Post ‹ Test site — WordPress
URL /wp-admin/post-new.php
Aspect new-meta-boxes
HTTP status 200
Load time 0.956 s
Memory usage 6.33 MiB
JS errors None
Resource errors None

Add Page ‹ Test site — WordPress

Page screenshot: Add Page ‹ Test site — WordPress
URL /wp-admin/post-new.php?post_type=page
Aspect new-meta-boxes
HTTP status 200
Load time 0.597 s
Memory usage 6.32 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.468 s0.447 s-0.021 s3.51 MiB3.75 MiB+ 245.05 KiB
/wp-admin/edit.php0.204 s0.226 s+0.022 s3.57 MiB3.8 MiB+ 236.61 KiB
/wp-admin/post-new.php0.801 s0.955 s+0.154 s6.06 MiB6.33 MiB+ 278.93 KiB
/wp-admin/upload.php0.603 s0.347 s-0.256 s3.52 MiB3.71 MiB+ 195.52 KiB
/wp-admin/options-writing.php0.207 s0.188 s-0.019 s3.5 MiB3.69 MiB+ 193.28 KiB
/wp-admin/media-new.php0.266 s0.409 s+0.143 s3.49 MiB3.69 MiB+ 201.48 KiB
/wp-admin/edit-tags.php?taxonomy=category0.271 s0.190 s-0.081 s3.5 MiB3.71 MiB+ 212.15 KiB
/wp-admin/post-new.php?post_type=page0.613 s0.667 s+0.054 s6.05 MiB6.32 MiB+ 274.45 KiB
/wp-admin/options-discussion.php0.496 s0.301 s-0.195 s3.5 MiB3.69 MiB+ 189.78 KiB
/wp-admin/edit-comments.php0.199 s0.203 s+0.004 s3.52 MiB3.71 MiB+ 194.78 KiB
/0.308 s0.233 s-0.075 s3.43 MiB3.61 MiB+ 180.13 KiB
Average 0.403 s0.379 s-0.025 s3.97 MiB4.18 MiB+ 218.38 KiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

PHP
CSS
Language % Lines of code Comment lines Files
PHP73.7%24,80415,681408
CSS9.8%3,314395
PO File7.2%2,4221,1152
Markdown5.2%1,75804
JavaScript3.5%1,1775313
YAML0.2%6833
XML0.2%6103
JSON0.1%4601
make0.1%2701
Total 33,677 16,891 440

PHP Code Analysis | More results »

Lines of code 24,642
Total complexity 3,872
Median class complexity 2.0
Median method complexity 1.0
Most complex class Leaky_Paywall_Settings
Most complex function Leaky_Paywall_Payment_Gateway_PayPal::process_webhooks()
Classes 369
Methods 1,275
Functions 172

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Custom Post Types 2

ID Name
lp_transactionTransaction
lp_incomplete_userIncomplete User

Meta Boxes

{
    "dashboard": {
        "dashboard_widget": {
            "title": "Leaky Paywall Dashboard",
            "context": "normal"
        }
    },
    "post": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "page": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "custom_css": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "customize_changeset": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "oembed_cache": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "user_request": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_block": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_template": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_template_part": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_global_styles": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_navigation": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_font_family": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "wp_font_face": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        }
    },
    "lp_incomplete_user": {
        "leaky_paywall_content_visibility": {
            "title": "Leaky Paywall Visibility",
            "context": "side"
        },
        "incomplete_user_details": {
            "title": "Incomplete User Details",
            "context": "normal"
        }
    },
    "lp_transaction": {
        "transaction_details": {
            "title": "Transaction Details",
            "context": "normal"
        }
    }
}

PHP Error Log 4 lines

[04-Oct-2025 01:19:38 UTC] PHP Warning:  Undefined array key "connected_account_id" in /wp-content/plugins/leaky-paywall/include/admin/settings/settings.php on line 885
[04-Oct-2025 01:19:38 UTC] PHP Warning:  Undefined array key "connected_account_id" in /wp-content/plugins/leaky-paywall/include/admin/settings/settings.php on line 916
[04-Oct-2025 01:19:45 UTC] PHP Deprecated:  WP_List_Table::__get(): The property `is_site_users` is not declared. Getting a dynamic property is deprecated since version 6.4.0! Instead, declare the property on the class. in /wp-includes/functions.php on line 6121
[04-Oct-2025 01:19:45 UTC] PHP Deprecated:  WP_List_Table::__get(): The property `is_site_users` is not declared. Getting a dynamic property is deprecated since version 6.4.0! Instead, declare the property on the class. in /wp-includes/functions.php on line 6121
See also: All tests for this plugin, How to Hide Leaky Paywall Admin Menus and More