EngagePop

Description

EngagePop is a popup builder that runs inside WordPress. Create a modal, a corner slide-in or a full-width announcement bar, choose when and where it appears, and collect email addresses straight into your own database.

No account is needed for any of that, and there is no limit on how many popups you build.

Free, and entirely local

  • Three layouts — centre modal, corner slide-in, top or bottom bar.
  • Triggers — on page load, after a delay, after scrolling a set percentage, or on exit intent.
  • Targeting — the whole site, the front page, chosen post types, specific post IDs, or any URL fragment. Plus an exclude list, logged-in/logged-out audiences, desktop/mobile, and an optional start and end date.
  • Email capture — addresses are stored in your WordPress database and exported as CSV whenever you want. Nothing is transmitted anywhere.
  • Design controls — colours, corner rounding, width, image, icon, and an optional consent checkbox for GDPR.
  • Built-in stats — views, clicks and signups per popup, counted on your own site.
  • Live preview — the builder previews your popup with the exact stylesheet visitors get.

This half of the plugin makes no external requests at all. Deactivate your internet connection and it still works.

Guides: Building popups inside WordPress · When and where your popup appears · Collecting subscribers

Optional: connect an EngagePop account

Some things a single WordPress site genuinely cannot do on its own. Those live on EngagePop and need an account:

  • Web push notifications — reach people after they have left your site.
  • Social-proof toasts and live-visitor counters — “Riya from Mumbai just purchased…”.
  • On-site notification feed with a bell icon.
  • A/B testing, audience segments and campaigns shared across several sites.

Connecting is one click from the plugin’s Settings tab: you log in on engagepop.com, approve, and land back in wp-admin. The plugin stores only your site’s public key — no API keys to copy, no WordPress credentials ever leave your site. If you never connect, nothing in the free half changes.

External services

The free popup builder makes no external requests. Popup settings, rendering and captured email addresses stay entirely within your WordPress installation.

The optional account connection uses EngagePop (https://engagepop.com), and only after you explicitly click “Connect to EngagePop”:

  • api.engagepop.com — during connection, your WordPress server exchanges a one-time code for your site’s public key. It is also used when you publish an announcement or a push notification from the Broadcast screen; the title, message and link you type are sent so EngagePop can deliver them.
  • cdn.engagepop.com — once connected, your public pages load the EngagePop widget script, which delivers web push prompts, social proof and dashboard campaigns.
  • Visitor interactions with those EngagePop features (impressions, form submissions, push subscriptions) are processed by EngagePop.

Terms of service: https://engagepop.com/terms
Privacy policy: https://engagepop.com/privacy

Disconnecting on the Settings tab stops all of the above immediately. Your local popups and stored subscribers are unaffected.

Installation

  1. Install and activate the plugin.
  2. Open EngagePop in the wp-admin sidebar.
  3. Pick a template, edit the text, and switch “Live on site” on. That’s it — the popup is running.

Connecting an EngagePop account is optional and lives under EngagePop Settings.

FAQ

Do I need an account to use this?

No. Popups, slide-ins, announcement bars, targeting, triggers, email capture, CSV export and per-popup stats all work with no account and no external requests. An account only adds web push, social proof, the notification feed and cross-site campaigns.

Where do the collected email addresses go?

Into a table in your own WordPress database, listed under EngagePop Subscribers and exportable as CSV. They are never sent to EngagePop or anywhere else.

Can I forward new signups to my mailing list automatically?

Yes — hook the engagepop_lead_captured action, which fires with the address and the popup ID.

Does it slow my site down?

The popup CSS and JS total a few kilobytes and are only enqueued on pages where a popup actually matches. Pages with no matching popup load nothing at all. If you connect an account, the widget script loads asynchronously from a CDN after your page renders.

I built a popup but it isn’t appearing

Most often you’ve already seen it — popups are capped per visitor, so test in a private/incognito window. Full checklist: https://help.engagepop.com/my-wordpress-popup-isn-t-showing-a-checklist

Will popups work with my caching plugin?

Yes. All page-level targeting is resolved in PHP when the page is generated, and everything visitor-specific — trigger timing, how often someone sees a popup, device width — is decided in the browser, so a cached page is safe to share between visitors.

Web push notifications aren’t prompting visitors

Check EngagePop Settings: the “Web push service worker” row must be green. The plugin serves /sw.js regardless of your permalink settings; if the row is red, your web server is answering /sw.js before WordPress gets the request — ask your host to route it to WordPress, or copy the plugin’s assets/sw.js to your site root. Then enable the opt-in prompt in the EngagePop dashboard under Web Push Opt-in prompt.

What happens when I deactivate or uninstall?

Deactivating stops popups immediately. Uninstalling removes the plugin’s options, your locally built popups and the subscribers table — export your CSV first if you want to keep it.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“EngagePop” is open source software. The following people have contributed to this plugin.

Contributors

Translate “EngagePop” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.3.0

  • New: personalization works with no snippet. The plugin tells EngagePop who the visitor is, so {{name}}, {{firstname}} and {{email}} fill themselves in for logged-in users.
  • New: WooCommerce variables — {{cart}}, {{cart_items}}, {{cart_count}}, {{cart_total}}, {{currency}}, plus {{product}} and {{product_price}} for the item being viewed.
  • New: WooCommerce sales are reported automatically on the order-received page, so popup revenue shows in Analytics without touching your theme.
  • New: engagepop_identify_attrs filter to add your own fields, and engagepop_identity_enabled to switch the whole thing off.
  • Note: attributes are fetched from a REST route rather than printed into the page, so full-page caches never serve one visitor another’s name.

1.2.0

  • New: a full popup builder that runs entirely inside WordPress — modals, slide-ins and announcement bars, free and unlimited, with no account required.
  • New: time, scroll and exit-intent triggers, with frequency capping per session or per N days.
  • New: targeting by post type, post ID, URL fragment, audience, device and date range.
  • New: email capture stored in your own database, with a subscribers screen and CSV export.
  • New: per-popup view, click and signup counts.
  • New: engagepop_lead_captured action and engagepop_show_popup filter for developers.
  • Changed: EngagePop now has its own top-level menu in the sidebar instead of hiding under Settings. Old links redirect.
  • Changed: rebuilt every admin screen — cards, live preview, and health checks that explain themselves.
  • New: contextual links to the help centre from each builder section, filterable via engagepop_help_url if you host your own docs.

1.1.1

  • Web push worker: /sw.js is now served by matching the request URI directly, so it works with “Plain” permalinks and survives stale rewrite rules — no more “Save Permalinks” dance.
  • Plugin icon added (settings page and directory assets).

1.1.0

  • Publish from wp-admin: feed announcements (with optional web-push cross-post) and one-off push notifications, using a site-scoped token issued at connect time.

1.0.0

  • Initial release: one-click account connect, automatic widget placement, service worker hosting for web push.