Title: Exit-Intent Popup
Author: ammarsaif
Published: <strong>March 17, 2025</strong>
Last modified: May 1, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/exit-intent-popup.svg)

# Exit-Intent Popup

 By [ammarsaif](https://profiles.wordpress.org/ammarsaif/)

[Download](https://downloads.wordpress.org/plugin/exit-intent-popup.1.1.1.zip)

 * [Details](https://test.wordpress.org/plugins/exit-intent-popup/#description)
 * [Reviews](https://test.wordpress.org/plugins/exit-intent-popup/#reviews)
 *  [Installation](https://test.wordpress.org/plugins/exit-intent-popup/#installation)
 * [Development](https://test.wordpress.org/plugins/exit-intent-popup/#developers)

 [Support](https://wordpress.org/support/plugin/exit-intent-popup/)

## Description

**Exit-Intent Popup** detects when a visitor is about to leave your site and displays
a fully customisable popup offering a discount code, a message, or a call-to-action
button to encourage them to stay and convert.

The plugin ships with a modern, card-based admin interface and powerful targeting
options — all without writing a single line of code.

### Key Highlights

 * Clean, professional admin UI with gradient header, icon tabs, card layouts and
   live previews
 * Full typography control — system fonts and Google Fonts for title, body, and 
   CTA button
 * Advanced Display Rules — target by page, user login status, frequency, and device
   type
 * Frequency control via browser localStorage (always / per session / daily / weekly/
   once ever)
 * Device targeting — show on all devices, desktop only, or mobile only
 * Exit-intent detection with configurable delay and five animation effects
 * Live button and design previews that update in real time as you type

### Features

### Popup Behaviour

 * Enable / disable popup globally with a toggle switch
 * Configurable delay (seconds) before the popup can trigger
 * Five entry animations: Fade In, Slide Down, Zoom In, Bounce, None
 * Three popup positions: Top, Center, Bottom
 * Adjustable overlay opacity (0–1)
 * Optional close (×) button
 * ESC key closes the popup

### Design & Appearance

 * Background color picker (HEX / RGB)
 * Background image upload via WordPress Media Library
 * Text color and discount code color pickers
 * Live popup preview that updates as you change colors and images

### Typography

 * Separate font controls for title and content text
 * System fonts: Arial, Verdana, Helvetica, Georgia, and more
 * Google Fonts integration with autocomplete search and popular-fonts shortlist
 * Font weight control (Normal / Bold / Lighter / Bolder)
 * Live font preview boxes

### Content

 * Rich text editor (wp_editor) for the popup message — supports HTML and shortcodes
 * Customisable promo / discount code with inline preview
 * Toggle to show or hide the discount code block

### CTA Button

 * Enable / disable the call-to-action button
 * Button text, URL, and link target (same tab / new tab)
 * Background color, text color, font size, and padding
 * System or Google Font selection for the button label
 * Border radius, border width, and border color
 * Live button preview that updates in real time

### Display Rules (New in 1.1.0)

 * **Page Targeting** — show on all pages, front page only, blog/posts only, or 
   specific pages/posts you select
 * **Audience Targeting** — show to everyone, guests only (logged-out), or members
   only (logged-in)
 * **Frequency Control** — always, once per session, once per day, once per week,
   or once ever (tracked via localStorage)
 * **Device Targeting** — all devices, desktop only (≥ 768 px), or mobile only (
   < 768 px)

### Admin Interface (New in 1.1.0)

 * Full-width, responsive layout that adapts to any screen size
 * Gradient header banner with version badge and live Active/Inactive status
 * Six icon tabs: General, Design, Typography, Content, CTA Button, Display Rules
 * Card-based section layout with icons and descriptive sub-headings
 * Animated toggle switches replace plain checkboxes
 * Visual option cards replace plain radio buttons for Position, Animation, Audience,
   Frequency, and Device
 * Quick Status sidebar widget showing live values from the database
 * Pro Tips sidebar with conversion best practices
 * View Site shortcut link from within the settings page

### Usage

 1. **General tab** — Enable the popup, configure delay, animation, position, and overlay
    opacity.
 2. **Design tab** — Pick colors and an optional background image. Preview updates 
    live.
 3. **Typography tab** — Choose system or Google Fonts for the title and body text.
 4. **Content tab** — Write your popup message in the rich-text editor and set the 
    promo code.
 5. **CTA Button tab** — Configure the call-to-action button label, URL, colors, and
    live-preview it.
 6. **Display Rules tab** — Set page targeting, audience, frequency, and device rules.
 7. Click **Save Settings** — your popup is live immediately.

### License

This plugin is licensed under the **GPL-2.0+** license.
 See https://www.gnu.org/
licenses/gpl-2.0.html for details.

### Support

For support, feature requests, or bug reports, please visit the WordPress support
forum or contact the plugin author.

## Installation

 1. Download the plugin ZIP or install directly from the WordPress Plugin Directory.
 2. Upload the plugin folder to `/wp-content/plugins/` if installing manually.
 3. Activate the plugin via the **Plugins** menu in WordPress.
 4. Navigate to **Exit-Intent Popup** in the WordPress admin sidebar to configure.

## FAQ

### How do I disable the popup?

Go to **Exit-Intent Popup > General** and toggle the **Enable Popup** switch off.

### Can I show the popup only on specific pages?

Yes. Go to the **Display Rules** tab, choose **Specific Pages**, and select from
the list of your published pages and posts.

### How do I stop the popup from annoying repeat visitors?

Use the **Display Frequency** setting in the **Display Rules** tab. “Once per session”
or “Once per day” are recommended for most sites.

### Can I show the popup only on mobile?

Yes — set **Device Targeting** to **Mobile Only** in the **Display Rules** tab.

### Can I show the popup only to logged-out visitors?

Yes — set **Audience Targeting** to **Guests Only** in the **Display Rules** tab.

### Can I use a background image instead of a color?

Yes. Upload an image via the **Design** tab. The image overrides the background 
color.

### Does the popup work on mobile?

Yes. Exit-intent detection (mouse leaving the viewport) is desktop-centric, but 
you can still show the popup on mobile after a configured delay.

### Can I use Google Fonts?

Yes. In the **Typography** and **CTA Button** tabs, switch to **Google Font**, type
a font name, and choose from the autocomplete suggestions.

### Is the plugin secure?

All settings are sanitized on save using WordPress functions (`sanitize_text_field`,`
sanitize_hex_color`, `esc_url_raw`, etc.) and escaped on output.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Exit-Intent Popup” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ ammarsaif ](https://profiles.wordpress.org/ammarsaif/)

[Translate “Exit-Intent Popup” into your language.](https://translate.wordpress.org/projects/wp-plugins/exit-intent-popup)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/exit-intent-popup/),
check out the [SVN repository](https://plugins.svn.wordpress.org/exit-intent-popup/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/exit-intent-popup/)
by [RSS](https://plugins.trac.wordpress.org/log/exit-intent-popup/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.1.1

**Bug Fix**
 * `uninstall.php` was missing six options introduced in 1.1.0 — `exitpo_show_discount`
and all five Display Rules settings (`exitpo_show_on`, `exitpo_specific_pages`, `
exitpo_show_to`, `exitpo_frequency`, `exitpo_device_target`) — these are now properly
deleted when the plugin is uninstalled, leaving no orphaned rows in `wp_options`

#### 1.1.0

**New Feature: Display Rules**
 * Page targeting — all pages, front page, blog/posts,
or specific pages/posts * Audience targeting — everyone, guests only, or members
only (logged-in) * Frequency control — always / once per session / once per day /
once per week / once ever (localStorage) * Device targeting — all devices / desktop
only / mobile only

**Admin UI Overhaul**
 * Full-width, screen-adaptive layout — no more wasted blank
space * New gradient header banner with version badge and live status indicator *
Six icon-based navigation tabs (General, Design, Typography, Content, CTA Button,
Display Rules) * All tab content migrated from plain form tables to card-based sections*
Animated CSS toggle switches replace checkboxes for boolean settings * Visual icon
+label option cards replace radio buttons for positional/animation/rule selectors*
Quick Status sidebar widget showing live setting values * Pro Tips sidebar panel
with conversion best-practice hints * View Site shortcut button in the sidebar *
Full-width responsive layout via a dedicated `admin.css` stylesheet (replaces scattered
inline styles)

**Frontend Improvements**
 * Animation engine updated to properly implement all 
five effects (fadeIn, slideDown, zoomIn, bounce, none) * Popup position (top / center/
bottom) now applied dynamically by JavaScript * Overlay opacity is now applied as
a CSS custom property from the saved setting * ESC key support to close the popup*
Frequency check uses `sessionStorage` (per session) or `localStorage` with timestamps(
daily/weekly/once) * Device check compares `window.innerWidth` against 768 px breakpoint
before showing popup * `animation`, `position`, `frequency`, and `device_target`
now passed to frontend via `wp_localize_script`

**Bug Fixes**
 * `exitpo_show_discount` was registered but never saved — now properly
registered and enforced * Background overlay opacity was hardcoded in CSS — now 
reads the saved option value * CTA toggle in settings panel now uses JavaScript 
card visibility instead of class toggling on `<tr>` elements * **Critical** — saving
settings on any tab was wiping all other tabs’ settings; fixed with a two-level 
hidden-field strategy: `exitpo_hidden_fallback_fields()` emits every setting’s current
DB value before the tab content so WordPress `options.php` always receives a value
for every registered option; per-tab `value="0"` sentinels placed before each checkbox
handle the “unchecked on current tab” case without affecting other tabs * **Critical**—
toggle switches (Enable Popup, Close Button, Show Discount, Enable CTA) were being
turned off when saving from a different tab because the global checkbox fallback
incorrectly used `value="0"` instead of the current saved value; corrected so the
global fallback preserves the DB state and only the per-tab sentinel can flip a 
checkbox to off * Admin page layout made fully responsive and full-width — removed
fixed `max-width: 1180px` cap so the settings page uses all available screen space*
Proper left/right padding added to the settings wrapper so content does not touch
screen edges * Plugin version number is now read dynamically from the file header
via `EXITPO_VERSION` constant (using `get_file_data()`) — eliminates the hardcoded
version string that required manual updates in multiple places

#### 1.0.2

 * Added CTA button with extensive customisation options
 * Added Google Fonts integration for all text elements
 * Added font weight controls for headings and content
 * Added border customisation for CTA button
 * Added separate typography settings for content and headings
 * Improved admin UI with tabbed interface
 * Enhanced font preview functionality
 * Added popular fonts quick selection
 * Added option to open CTA link in new tab
 * Added more sanitisation and security checks
 * Performance optimisations for font loading
 * Code refactoring and organisation improvements

#### 1.0.1

 * Bug fixes and prefixing changes.

#### 1.0

 * Initial release with full customisation options.

## Meta

 *  Version **1.1.1**
 *  Last updated **2 weeks ago**
 *  Active installations **50+**
 *  WordPress version ** 5.0 or higher **
 *  Tested up to **6.7.5**
 *  PHP version ** 7.2 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/exit-intent-popup/)
 * Tags
 * [conversion](https://test.wordpress.org/plugins/tags/conversion/)[discount](https://test.wordpress.org/plugins/tags/discount/)
   [exit-intent](https://test.wordpress.org/plugins/tags/exit-intent/)[popup](https://test.wordpress.org/plugins/tags/popup/)
   [woocommerce](https://test.wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://test.wordpress.org/plugins/exit-intent-popup/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/exit-intent-popup/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/exit-intent-popup/reviews/)

## Contributors

 *   [ ammarsaif ](https://profiles.wordpress.org/ammarsaif/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/exit-intent-popup/)