Short answer: OptinMonster is the most-feature-complete paid popup plugin and integrates with every major email service, but most sites do not need its $9-49/month price tag. Popup Maker is the safest free pick – actively maintained, reasonable performance, and covers 90% of what most sites need. If you are already on a page builder (Elementor, Divi, Kadence, Thrive Architect), use that builder’s popup module before installing a separate plugin. The plugin you pick matters less than how it loads – any popup plugin that injects 200KB of JavaScript on every page is a performance problem regardless of how good its targeting rules are.
| Plugin | Free / Paid | Best for | Skip if |
|---|---|---|---|
| Popup Maker | Free + paid ($87/year+) | Most sites – lightweight, no SaaS coupling, covers basic to intermediate use cases | You need advanced behavioral targeting (geolocation, A/B test, exit-intent on mobile) |
| OptinMonster | Paid ($9-49/month) | Marketing teams running multiple A/B tests, complex segmentation, lead-gen-as-revenue | You only need a few signup forms – it is overkill |
| Convert Pro | Paid ($89/year+) | Brainstorm Force / Astra ecosystem users wanting matching design system | You are not on the Astra/Brainstorm Force stack |
| Thrive Leads | Paid ($99/year+, in Thrive Suite $299/year) | Existing Thrive Architect users, conversion-optimization focused agencies | You do not need the full Thrive Suite |
| Hustle | Free + paid (in WPMU DEV from $7.50/month) | WPMU DEV bundle subscribers, sites needing GDPR-aware popups | You are not on the WPMU DEV ecosystem |
| Sumo (now AppSumo Sumo) | Free + paid | (Mostly historical – declining maintenance, included for completeness) | You want active development |
| Page builder native popups (Elementor Pro, Divi, Kadence Conversions, Thrive Architect) | Bundled with builder | Builder users wanting one less plugin in the stack | You want a builder-agnostic solution |
The honest framing most popup-plugin roundups skip: every popup plugin has the same fundamental architecture – inject JavaScript, listen for triggers, render markup, capture submission, hand to email service. The differences between products are 5% engine and 95% UX, targeting rules, and templates. The biggest performance and accessibility differences come from how the plugin loads (synchronous vs async, on every page vs only where popups exist), not from how clever the targeting engine is.
This means the questions worth asking when picking a popup plugin are different from what the plugin’s marketing pages emphasize:
- Does it lazy-load? Most plugins load their full JavaScript bundle on every page, even pages with no popup configured. The good ones only load on pages where a popup is actually scheduled to appear.
- Does it pass WCAG? Many popular popup plugins fail basic accessibility – no keyboard escape, no focus trap, no screen-reader announcement when the popup opens. This is both a legal exposure (ADA lawsuits) and an SEO concern (Lighthouse penalises layout shifts and accessibility violations).
- Does it cause CLS? Popups that inject content above existing layout cause Cumulative Layout Shift – a Core Web Vital that directly affects search rankings. Modal popups (overlay only) are CLS-safe; inline popups (push content down) often are not.
Why popup plugin performance matters more than the plugin#
Popups are the single most common reason a fast WordPress site becomes slow. The pattern is consistent: install a popup plugin, configure one signup form, watch your Lighthouse score drop by 15-30 points, then spend three hours figuring out why “my caching plugin stopped working.”
The caching plugin did not stop working. The popup plugin started loading 150-300KB of JavaScript on every page request, and that JavaScript runs before the page becomes interactive. No amount of page caching helps because the JavaScript executes in the browser regardless of whether the HTML came from cache.
The fix is mostly architectural. A well-built popup plugin loads its JavaScript only on pages where a popup is configured to display. A poorly-built plugin loads on every page, including pages with no popups, including pages where the popup will never trigger because of the targeting rules. The difference is invisible until you look at the network tab.
The numbers vary by plugin, but as a rough order:
| Plugin | JavaScript footprint per page | Loads on pages without popups |
|---|---|---|
| Popup Maker | ~25KB minified | Conditional – mostly only on pages with popups |
| OptinMonster | ~35KB initial + ~150KB on trigger | No – lazy-loads on configured pages only |
| Convert Pro | ~80KB minified | Yes – loads sitewide |
| Thrive Leads | ~120KB minified | Yes – loads sitewide |
| Hustle | ~60KB minified | Yes – loads sitewide |
| Page builder native popups | Variable – depends on builder | Inherits builder’s loading pattern |
For sites where Core Web Vitals matter (i.e. any site that relies on organic search), the conditional-loading pattern is non-negotiable. Sitewide loading is acceptable for high-converting popups on a single landing page where every visitor will see the popup anyway. It is not acceptable for an exit-intent popup that only fires on the homepage.
For a deeper look at how to identify popup-related performance problems, see why is my WordPress site so slow: diagnostic guide. For the broader optimization picture, see how to speed up WordPress: a complete optimization guide.
How we picked these seven plugins#
The WordPress plugin directory has hundreds of “popup” plugins. Most of them are abandoned, broken on modern PHP versions, or thin wrappers around a single jQuery modal library. We covered the seven that are actively maintained, have meaningful user bases (50,000+ active installs or a credible commercial customer count), and represent architecturally distinct approaches: free-and-self-hosted, full-SaaS-with-WordPress-bridge, builder-bundled, ecosystem-bundled, and bundle-subscription.
What we deliberately skipped: Bloom (Elegant Themes – effectively replaced by Divi’s native modules), Icegram (development slowed since 2023), Layered Popups (jQuery-era code, accessibility issues), Ninja Popups (not actively developed), and the dozens of “WordPress popup” plugins on CodeCanyon that are clearly thin wrappers around the same handful of jQuery modal libraries.
For each plugin: what it does, when it is the right pick, when it is not, and what to expect after installing.
Popup Maker (free + paid, $87/year+)#
Popup Maker is the most popular standalone popup plugin in the WordPress directory – over 700,000 active installs. The free version covers modal popups, slide-ins, fixed bars, click triggers, time-on-page triggers, exit-intent (limited – the desktop-only kind), basic targeting (page, post type, user role), and integrates with most major email services via add-ons.
The paid version (Popup Maker Premium) adds advanced targeting (referrer, UTM parameters, scroll depth percentage), advanced triggers (form submission, custom JavaScript events), A/B testing, advanced analytics, and unlocks all the email-service add-ons in one bundle.
Use it if: You want a free, well-maintained, no-SaaS popup plugin that covers what most sites need. The free version is enough for basic signup forms, announcement bars, and time-based or click-based modals. The paid version is reasonably priced for what it adds.
Do not use it if: You need behavioral targeting (geolocation, traffic source, returning visitor) at scale, mobile exit-intent (no popup plugin handles this well, but OptinMonster gets closest), or CRM-grade segmentation. Popup Maker is a popup plugin, not a marketing-automation platform.
What you get from the free version: Unlimited popups, all basic trigger types, basic targeting, manual email-service integration via shortcode. No A/B testing, no analytics beyond impressions, no advanced triggers.
Common gotcha: The default popup template includes some inline CSS that can conflict with theme styles – particularly with custom typography on form fields. Plan to override at least the form input styles to match your theme. Also: the free version’s exit-intent only works on desktop; mobile devices do not generate the cursor-leave event the trigger relies on.
Performance angle: Popup Maker is one of the lighter plugins in this list when you have only a few popups configured. As you add more popups (10+), the per-page JavaScript footprint grows because the plugin loads all popup definitions in a single bundle. For sites running many popups, the paid version’s “load only configured popups” feature becomes more valuable.
OptinMonster (paid, $9-49/month)#
OptinMonster is the SaaS in this list – it is not really a WordPress plugin, it is a SaaS product with a WordPress plugin that connects to it. The popups are configured in OptinMonster’s web app, served from their CDN, and only the campaign IDs are stored in WordPress. This architectural choice has real consequences both ways.
On the positive side, OptinMonster has the most sophisticated targeting engine of any plugin in this list: geolocation (country/region/city), traffic source, exit-intent on mobile (using the back-button gesture as a proxy), referrer-based targeting, page-level and post-level rules, scroll-depth, time-on-site, and behavioral cohorts. A/B testing is built in. Analytics are real-time. Templates are professionally designed and updated regularly.
On the negative side, every popup load requires a request to OptinMonster’s CDN. This adds DNS lookup, TCP handshake, and TLS handshake latency to every page load that has a popup configured. The plugin lazy-loads (popups are only fetched on pages that should display them), so the impact is contained, but it is not free.
Use it if: You run a marketing operation where popups are a meaningful conversion channel (lead-gen sites, e-commerce stores running cart-abandonment popups, content sites with email-list-as-revenue models). The targeting and A/B testing capabilities directly translate to revenue at scale.
Do not use it if: You need three signup forms and an announcement bar. The price is justified by sophisticated targeting, not by basic functionality. Popup Maker free or your page builder’s native popup module is the better fit.
What you get at $9/month (Basic): One site, basic popup types, basic targeting (page-level), email-service integrations, analytics. No A/B testing, no exit-intent on mobile, no advanced behavioral targeting.
What you get at $49/month (Growth): Unlimited sites, all popup types, all targeting rules including geolocation and exit-intent on mobile, A/B testing, advanced analytics, conversion tracking. This is the tier most marketing teams actually use.
The architectural caveat: Because OptinMonster is SaaS-backed, your popups stop working if your OptinMonster subscription lapses. They also stop working if OptinMonster’s CDN has an outage (rare but has happened). Most plugins fail closed – if the plugin breaks, your popup just does not display. OptinMonster fails the same way but the failure point is on someone else’s infrastructure.
Convert Pro (paid, $89/year+)#
Convert Pro is Brainstorm Force’s popup plugin – the same company behind Astra theme and Spectra blocks. It is built specifically to integrate with Astra and the broader Brainstorm Force ecosystem, with matching design tokens and a builder-style editor that feels at home if you are already using Astra Pro.
Feature-wise: modal popups, slide-ins, fixed bars, info bars, A/B testing (basic), behavioral triggers (time, scroll, exit-intent on desktop, click), targeting rules (page, category, user role, referrer), and direct integration with the major email services. The editor is drag-and-drop and matches the Astra/Spectra design language.
Use it if: You are already running Astra Pro or Spectra Pro and want a popup plugin from the same vendor. The integration is genuinely smoother than mixing-and-matching plugins from different vendors, particularly for design-token consistency.
Do not use it if: You are not on the Brainstorm Force stack. Convert Pro is competent but not architecturally differentiated from Popup Maker Pro at a similar price point. Without the ecosystem integration, the value proposition is thinner.
Performance angle: Convert Pro loads its JavaScript sitewide by default – around 80KB minified on every page. This is configurable (you can scope to specific page templates) but most users do not configure it. For sites where Core Web Vitals matter, plan to scope the loading rules during setup.
Thrive Leads (paid, $99/year+, in Thrive Suite $299/year)#
Thrive Leads is the popup component of the Thrive Suite – a conversion-focused WordPress toolkit aimed at marketers, course creators, and conversion-optimization agencies. It pairs with Thrive Architect (the builder), Thrive Quiz Builder, Thrive Apprentice (LMS), and several other Thrive products.
The differentiating angle is conversion-optimization features: SmartLinks (different popups for different traffic sources), SmartExit (popup variants based on where the user is leaving for), advanced A/B testing with statistical significance reporting, and lead scoring that integrates with Thrive’s CRM-adjacent products.
Use it if: You are already in the Thrive Suite ecosystem – particularly if you use Thrive Architect for landing pages and want consistent design across popups and landing pages. Or if you run a lead-generation business where the conversion-optimization features pay for themselves.
Do not use it if: You only need popups. Thrive Leads is good but Thrive Suite is the value proposition – buying just Thrive Leads at $99/year for one site is reasonable; buying Thrive Suite at $299/year for popup features alone is not.
Performance angle: Thrive Leads loads more JavaScript sitewide than the average popup plugin (around 120KB minified). The Thrive Suite uses its own component framework that gets bundled regardless of which Thrive products you use. This is not a problem if you are using Thrive Architect for your whole site – the framework is loaded anyway. It is a problem if Thrive Leads is your only Thrive product.
Hustle (free + paid, in WPMU DEV from $7.50/month)#
Hustle is WPMU DEV’s popup plugin – free in the WordPress directory and bundled in the WPMU DEV subscription with the rest of their plugin suite (Smush, Defender, SmartCrawl, etc.). The free version is genuinely capable: modal popups, slide-ins, fixed bars, embedded forms, basic triggers, page targeting, and integrations with major email services.
The differentiating angles are GDPR compliance (built-in consent checkboxes, IP anonymization, configurable data retention) and the WPMU DEV bundle economics. If you are running multiple sites and using WPMU DEV’s other plugins, Hustle is included at no extra cost.
Use it if: You are already a WPMU DEV subscriber. The bundle pricing makes Hustle effectively free, and the GDPR features are well-implemented for sites with EU traffic.
Do not use it if: You are not on WPMU DEV. The free version is competitive but not better than Popup Maker free. The bundle economics only make sense if you use multiple WPMU DEV plugins.
Performance angle: Hustle loads sitewide by default with around 60KB of JavaScript on every page. Like Convert Pro, this is scopable but most users do not configure it.
Sumo (free + paid)#
Sumo (formerly Sumo Apps, originally SumoMe) was once the dominant free popup plugin in the WordPress space. It has since been acquired, deprecated, re-released, and rebranded multiple times – and the current state is unclear enough that we cannot confidently recommend it for a new install in 2026.
The plugin is included here because legacy sites still run Sumo and ranking queries still mention it. If you are inheriting a site running Sumo, the migration target is Popup Maker (similar feature set, free, actively maintained) or OptinMonster (if budget allows and the targeting features matter). Do not start a new project with Sumo as the popup choice.
The honest assessment: This is a “for completeness” entry, not a recommendation. The plugin space has moved on.
Page builder native popups (Elementor Pro, Divi, Kadence Conversions, Thrive Architect)#
If you are already using a page builder, that builder probably ships a popup module:
- Elementor Pro Popup Builder – included in Elementor Pro ($59/year+). Drag-and-drop popup design using Elementor widgets, sophisticated trigger and targeting rules, A/B testing in higher tiers.
- Divi popup module – included in Divi ($89/year or $249 lifetime). Less feature-rich than Elementor’s, but design-consistent with the rest of a Divi site.
- Kadence Conversions – covered in detail in best WordPress newsletter plugins. Bundled with Kadence Pro ($129/year). Block-editor-native rather than builder-native, which is worth considering for sites moving toward Gutenberg.
- Thrive Architect popups – bundled with Thrive Architect, also available in Thrive Leads. Conversion-focused.
Use a builder’s native popup module if: You are already running that builder. The integration is genuinely smoother (same design tokens, same drag-and-drop UX, no extra plugin to maintain), and you avoid the “two plugins doing similar things” problem.
Do not use a builder’s native module if: You are not already running the builder. Buying Elementor Pro just for the popup module is rarely the right call – Popup Maker or OptinMonster are better single-purpose tools.
Performance angle: A builder’s native popup module shares the builder’s JavaScript runtime, so the marginal cost is small if you are already loading the builder. The marginal cost is large if the builder was not previously loading – installing Elementor Pro just for popups means you now load Elementor’s full runtime on every page.
Quick reference: which plugin fits which situation#
| Situation | Recommendation |
|---|---|
| Free, basic signup form, low-traffic site | Popup Maker (free) |
| Paid, sophisticated targeting, lead-gen revenue | OptinMonster Growth ($49/month) |
| Already on Astra/Spectra | Convert Pro |
| Already on Thrive Suite | Thrive Leads |
| Already on WPMU DEV | Hustle |
| Already on Elementor Pro | Elementor Popup Builder (skip standalone plugin) |
| Already on Divi | Divi popup module (skip standalone plugin) |
| Already on Kadence Pro | Kadence Conversions (skip standalone plugin) |
| GDPR-sensitive (EU audience, strict consent) | Hustle (built-in consent) or Popup Maker + consent management plugin |
| WooCommerce cart-abandonment | OptinMonster (cart-abandonment targeting) or page builder + native abandonment plugin |
| Mobile exit-intent matters | OptinMonster (only one with credible mobile exit-intent) |
| Pure CLS/Core Web Vitals priority | Popup Maker free with careful page-targeting rules |
A few clarifying notes on this table.
The “already on X” rows are a consistent pattern: if you have a builder or framework with a popup module, use it before adding another plugin. The integration is smoother and the performance is better because the JavaScript runtime is shared. Adding a separate popup plugin to an Elementor Pro site means you now load both Elementor’s framework and a standalone popup plugin’s framework on every page.
The “GDPR-sensitive” row is genuine – most popup plugins handle consent through manual checkboxes, which is technically compliant but practically inconsistent. Hustle’s built-in GDPR features (consent, IP anonymization, data retention) are the cleanest implementation. The alternative is Popup Maker + a dedicated consent management plugin (Complianz, CookieYes, Iubenda), which is more work but more flexible.
Accessibility: which popup plugins pass WCAG#
Popups have an outsized accessibility footprint because they hijack focus, render above existing content, and are often the first interactive element a returning visitor encounters. WCAG 2.1 AA requires:
- Focus management. When a popup opens, focus must move to the popup. When it closes, focus must return to the triggering element.
- Focus trap. Tab navigation inside the popup must cycle within the popup, not escape to the page behind it.
- Keyboard escape. The popup must be dismissable with the Escape key.
- Screen reader announcement. The popup must be announced to screen readers (typically via
aria-modal="true"androle="dialog"). - Sufficient color contrast. Text and interactive elements must meet 4.5:1 (normal text) or 3:1 (large text) contrast ratios.
- No content trapped behind a non-dismissable overlay. The user must be able to dismiss the popup without completing the action.
Of the plugins in this article, here is the rough state of accessibility (subject to plugin updates – verify with axe DevTools or WAVE on your specific configuration):
| Plugin | Focus management | Focus trap | Escape key | ARIA roles | Notes |
|---|---|---|---|---|---|
| Popup Maker | Configurable (off by default) | Configurable | Yes | Partial | Enable focus trap in settings |
| OptinMonster | Yes | Yes | Yes | Yes | Best WCAG implementation in this list |
| Convert Pro | Partial | No | Yes | Partial | Custom CSS often needed for contrast |
| Thrive Leads | Partial | No | Yes | Partial | A/B test variants may diverge |
| Hustle | Yes | Yes | Yes | Yes | Strong WCAG implementation |
| Page builder native popups | Variable | Variable | Yes | Variable | Depends on builder version |
The implication: out of the box, only OptinMonster and Hustle pass WCAG without configuration. Popup Maker is configurable to pass; Convert Pro and Thrive Leads need additional work. This matters for any site subject to ADA in the US or EAA in the EU, both of which now actively litigate inaccessible popups.
For a related architectural concern – layout shift caused by popups – see the popup section of why is my WordPress site so slow: diagnostic guide.
How long does it take to see results#
Popup plugins differ from caching or backup plugins in that the “results” are conversion-rate driven, not technically measurable from the plugin itself. The time-to-value is dominated by traffic volume, content fit, and iteration cycles.
| Metric | Week 1 | Month 1 | Month 3 |
|---|---|---|---|
| Signup rate (typical content site) | 0.5-2% of visitors | 1-3% with first iteration | 2-5% with A/B testing |
| Cart abandonment recovery (e-commerce) | 5-10% of abandoning visitors recovered | 8-15% with refined timing | 12-20% with multi-trigger approach |
| Popup dismissal rate | 70-85% (high – first version) | 60-75% (refined) | 50-65% (mature) |
| Lighthouse performance impact | -5 to -25 points (depending on plugin) | Same as week 1 (plugin-determined) | Same as week 1 |
The performance impact of a popup plugin does not improve over time – it is determined by the plugin’s architecture on day one. The conversion rate improves with iteration: better targeting rules, better copy, better timing, better incentive. Plan to A/B test at least three variants of any popup that runs on more than one page.
Common mistakes#
Eight failure modes we see often, in roughly the order they happen.
Loading the popup plugin sitewide when it should be page-targeted. Most plugins load JavaScript on every page even if popups are configured for only a few pages. Configure page-targeting rules during setup, not after the performance complaint.
Showing the popup immediately on page load. Visitors who see a popup before they have read any of your content dismiss it 80%+ of the time. Trigger on time-on-page (10-30 seconds), scroll depth (50%+), or exit-intent. Time-on-page is the highest-converting trigger for content sites.
Ignoring mobile. Roughly 50-70% of WordPress traffic is mobile, but most popup configurations are designed and tested only on desktop. Mobile popups need to be smaller, scrollable, dismissable with a single tap, and trigger on different events (scroll-depth, not exit-intent, since mobile has no cursor-leave event).
Failing WCAG. The single biggest legal risk with popups is accessibility. Test every popup with keyboard-only navigation and a screen reader before deploying. ADA lawsuits in the US specifically target popups that cannot be dismissed with the keyboard.
Triggering CLS. Popups that push content down (rather than overlay it) cause Cumulative Layout Shift, which is a Core Web Vital. Use modal-style popups (overlay only, no document reflow) for content sites that depend on organic search.
Running multiple popup plugins. Sites accumulate popup plugins – one for the signup form, one for the cookie banner, one for the cart-abandonment trigger. Each loads its own JavaScript runtime. Consolidate to one plugin where possible, or use a consent management plugin alongside one popup plugin (different responsibilities, different layers).
Setting frequency too high. Showing the popup on every page view annoys repeat visitors and tanks conversion. Set frequency to “once per session” or “once per visitor per 7 days” by default; tighten only if you have a specific reason.
Treating the popup as the conversion strategy. A popup is a conversion mechanic, not a conversion strategy. If your offer is weak (“subscribe to our newsletter”) the popup will not save it. If your offer is strong (specific lead magnet, exclusive discount, useful checklist), even a basic Popup Maker setup converts well.
What we run on Hostney#
Hostney does not bundle a popup plugin – popup is a marketing decision, not an infrastructure decision. What we do provide is the underlying performance stack that makes popup plugins viable:
- Server-level page caching via the Hostney Cache plugin and nginx FastCGI cache. The popup plugin’s JavaScript still runs in the browser, but the HTML containing the script tag is served from cache without invoking PHP-FPM. See best WordPress caching plugins (honest comparison) for how this layer fits with third-party caching options.
- HTTP/2 and HTTP/3 (QUIC) at the edge for parallel request handling – relevant because popup plugins frequently load multiple resources (JavaScript, CSS, sometimes a font, sometimes an image) and HTTP/2/3 multiplexing prevents head-of-line blocking.
- Daily off-server backups that capture popup plugin configuration and analytics data – relevant because popup plugin databases can grow large with view/conversion logs and a corrupted config table loses your A/B test results.
- Container isolation per account so a popup plugin’s runtime cannot affect another site’s performance.
What Hostney does not do for popups: we do not optimize the popup plugin’s JavaScript footprint for you. If you install a plugin that loads 200KB of JavaScript on every page, that JavaScript still runs – server-side caching cannot make client-side JavaScript faster. The fix is at the plugin layer (page-targeting rules, lazy-loading, removing unused popups), not the hosting layer.
For the rest of the production-WordPress plugin stack, see best WordPress caching plugins (honest comparison), best WordPress backup plugins (free and paid), and best WordPress newsletter plugins.
Summary#
For most WordPress sites in 2026, the best popup plugin is Popup Maker free (with careful page-targeting rules) or your existing page builder’s native popup module. OptinMonster is worth the price only if popups are a meaningful conversion channel and the targeting features map directly to revenue.
The mistakes that hurt sites most are not picking the wrong plugin – they are loading the plugin sitewide when it should be page-targeted, ignoring mobile, failing WCAG, and treating popups as a conversion strategy rather than a conversion mechanic. A correctly-configured Popup Maker setup beats a misconfigured OptinMonster setup at a fraction of the cost.
Whichever plugin you pick, test it with keyboard-only navigation, verify Cumulative Layout Shift in PageSpeed Insights, and check the network tab on a popup-free page to see if the plugin loads its JavaScript anyway. Those three checks catch 80% of popup-plugin problems before they hurt your search rankings or your conversion rate.