Exit intent popup

The cursor heads for the tabs.
Your offer gets there first.

An exit intent popup opens when a visitor looks about to leave: on a desktop, when the cursor leaves the page through the top of the window, towards the tabs, the address bar or the back button. Phones have no cursor, so there is no true exit intent on mobile; tools fall back to a timer, a scroll depth or a fast scroll back up. To add one without a plugin, paste one script tag into your site’s head, then build the popup and choose the trigger. Below: a live demo, an offer planner, install steps for each platform, and what Builderify popups actually do.

Exit intent Desktop only Checked 3 Oct 2026

By the Builderify team

01 Reading
Cursor on the page
02 Heading out
Cursor makes for the tabs
03 Exit intent
The offer opens first
01 / How it works

How an exit intent popup
knows they are leaving.

It doesn’t know; it guesses from the mouse. The browser fires a mouseleave event when the cursor moves out of the page, and the event says where the cursor was. If it left through the top edge, it is heading for the tabs, the address bar, the back button or the close button, so the popup opens before the click lands.

What counts as an exit, and what doesn’t

  • Counts: The cursor goes up past the top of the page, towards the tabs, the address bar or the browser’s back button.
  • Does not count: The cursor leaves through the left, right or bottom edge. That is usually a second monitor or the taskbar, not a goodbye.
  • Does not count: Keyboard exits: closing the tab with a shortcut, typing a new address, or Alt-Tab to another app. No cursor moves.
  • Does not count: Phones, and tablets without a mouse or trackpad. A finger is not a cursor, so the event never comes. Section 02 covers what to do instead.

So exit intent catches the visitors who leave with the mouse, on a desktop or laptop. It is a good trigger for that group, and it is silent for everyone else. Plan for both.

Live demo Exits: 0

Move your cursor up and out through the dashed top edge of this frame.

Then try leaving through a side. On a touch screen, use the button below: there is no cursor to move.

No exits yet. With the cap on, the popup opens once; close it and leave again to see it stay shut.

The demo uses the same test as Builderify’s exit-intent trigger: a mouseleave, counted only when the cursor left through the top. The frame stands in for the browser window.

02 / On mobile

Exit intent on mobile:
there is no cursor to watch.

A phone gives no warning before someone taps back or swipes the tab away. Tools that sell “mobile exit intent” use one of the signals below instead. Some are fine, one is now against Google’s spam policies, and Builderify’s exit-intent trigger uses none of them: on a phone it simply never fires.

Ways to guess that a mobile visitor is leaving, their drawbacks, and whether Builderify supports them
Signal What it guesses from The catch In Builderify
Fast scroll back up A quick flick towards the top, as if reaching for the address bar People scroll up to re-read, too. It misfires often. No
Back button A fake history entry, so pressing back opens the popup instead of leaving Google calls this back button hijacking, a spam policy violation enforced since 15 June 2026. No, and don’t
Tab hidden The page becomes hidden when they switch tabs or apps They have already gone. The popup waits for them to come back. No
Time on page Someone who has read for a while is close to deciding Not about leaving at all, but honest and predictable. Yes: Delay, in seconds
Scroll depth Someone who reached the end is finished with the page Fires for readers who were staying, too. Yes: Scroll, a percentage
Page views Several pages viewed without acting Needs a few pages of browsing first. Yes: N views within D days
Your own button The visitor asks for it Only reaches people who tap. Yes: a link or a line of code
Google on mobile popups

Google says intrusive dialogs “make it hard for Google and other search engines to understand your content, which may lead to poor search performance”, and suggests “banners that take up only a small fraction of the screen” instead. Legally required dialogs, such as age gates, are treated as an exception.

From Avoid intrusive interstitials and dialogs, Google Search Central.

So, on a phone

Give phones their own popup: the same offer, a delay, scroll or page-view trigger, and a small card at the bottom rather than a cover over the page. In Builderify that is a second popup with its audience set to Mobile and its position set to bottom. The planner in section 04 writes both for you.

03 / Good exit offers

Exit popup examples,
matched to why people leave.

A good exit offer answers the most likely reason for leaving, in one line, and is easy to say no to. Guess the reason from the page they are on.

01

A product page

Why they leave

The price

“Here is 10% off your first order”
Template: Exit Offer
02

The basket

Why they leave

Delivery cost

“Free delivery on this order, today”
Template: Exit Offer, with your shipping code
03

A pricing page

Why they leave

Not sure it fits

“Got a question before you go?”
Template: Ask a Question
04

A blog post

Why they leave

Not ready to buy

“Take the checklist with you”
Template: Lead Magnet
05

A services page

Why they leave

Needs a person

“Twenty minutes, no pitch: book a call”
Template: Consultation

The templates named are Builderify’s; the offers are examples to adapt, not results from a test.

The rule

One ask, one field.

Why

Someone halfway out of the door will type an email address. They will not fill in a form. Keep the headline readable in two seconds.

The rule

A plain way out.

Why

Make the no-thanks link easy to find and plainly worded. Builderify’s Exit Offer template ships with “No thanks, I will pay full price”; it is editable, and a simple “No thanks” is kinder.

The rule

Cap the frequency.

Why

Once per visit is plenty. An exit popup that returns on every page teaches people to close it without reading. In Builderify a closed popup stays closed for the rest of the visit, and anyone who submits it is not asked again in that browser for a year.

The rule

First-order codes only.

Why

Make the discount a first-order code in your shop. Otherwise regulars learn to wave the cursor at the tab bar before every order.

The rule

Stay off the money pages.

Why

Leave checkout, cart and thank-you pages out with a page rule. Someone entering a card number is not leaving.

04 / Exit offer planner

Plan your exit popup,
settings and checklist included.

Pick what the popup is for, what it offers, who should see it and how often. The planner writes the settings, using the names Builderify gives them, and a short checklist for launch day.

Your popup

Runs in your browser. Page rules are examples; use your own paths.

Recommended setup

Two popups, one offer: exit intent on desktop, a page-view trigger on phones.

Desktop popup

Trigger
Exit intent
Device
Desktop
Position
Center
Template
Exit Offer (email in, your code on the thank-you screen)
Page rule
Include, contains /products/
Show once per session
On
Submissions
A lead list (1 credit per new lead)

Phone popup

Trigger
Page views: 3 within 1 day
Device
Mobile
Position
Bottom
Template
Exit Offer (email in, your code on the thank-you screen)
Page rule
Include, contains /products/
Show once per session
On
Submissions
A lead list (1 credit per new lead)
  • Phones have no cursor, so exit intent never fires there. The phone popup opens at the third product page viewed in a day instead.
  • A popup has one trigger, so the plan makes two copies of the same popup, one per device. Builderify counts tablets as a device of their own, so neither copy opens on a tablet.

Launch checklist

  1. Write a headline a leaving visitor can read in two seconds, and keep the no-thanks link plain and easy to find.
  2. Create the discount code in your shop first. The popup shows the code; it does not create it.
  3. Keep it off checkout, cart and thank-you pages.
  4. Test it in a private window on a desktop: move the cursor up past the tabs. It opens at most once per page load.
  5. On phones keep it a bottom card, not a full-screen cover: Google says intrusive dialogs may lead to poor search performance.
  6. Never trap the back button. Google has treated back button hijacking as spam since 15 June 2026.
05 / Add one

Add an exit intent popup
without a plugin.

Every popup tool that runs on any site works the same way: one script tag in the <head> of every page, then the popups are built in the tool’s dashboard. Here is where that tag goes on each platform, as their own help pages describe it.

Plain HTML site? Paste the tag just before </head> in your page template and upload it.

  1. 01

    WordPress

    Classic theme: Appearance › Theme File Editor, open header.php and paste the tag just before </head>, ideally in a child theme. Block theme: there is no header.php; print the tag from a wp_head action in a child theme’s functions.php.

    The catch  WordPress warns that theme edits are lost when the theme updates, and the editor keeps no backup. If you would rather not touch PHP, a header-code plugin does the same job.

  2. 02

    Shopify

    Online Store › Themes, then … › Edit code. Open layout/theme.liquid, paste the tag just before </head> and save.

    The catch  Shopify suggests duplicating the theme first so you can throw changes away.

  3. 03

    Webflow

    Site settings › Custom code. Paste the tag into Head code, click Save changes, then publish.

    The catch  Site-wide custom code needs an active Site plan or a paid Core, Growth, Agency or Freelancer Workspace.

  4. 04

    Wix

    Settings › Custom Code › + Add Custom Code. Paste the tag, choose All pages and Head, and apply.

    The catch  The site has to be published with a connected domain first.

  5. 05

    Squarespace

    Pages › Custom Code › Code Injection (Website Tools on version 7.0). Paste the tag into Header and save.

    The catch  Code injection is on the Core, Plus, Advanced and some legacy plans, and checkout pages do not run it. Squarespace’s own pop-up has no exit intent; the guide to running multiple popups on Squarespace covers why.

06 / With Builderify

An exit intent popup
with Builderify.

Builderify’s popup builder has an Exit intent trigger, an Exit Offer template among its 13, and audience rules for device, new or returning visitors, referrer and page. Signups go to a lead list you choose.

  1. 01 Start free, add your website and copy the script tag.
  2. 02 Paste it into your site’s head, using the path for your platform in section 05.
  3. 03 Create a popup from the Exit Offer template and edit the headline, code and no-thanks link.
  4. 04 Under Triggers, choose Exit Intent and switch on Show Once Per Session.
  5. 05 Set the audience to Desktop, add a page rule, pick the lead list, and publish. Add a second popup for Mobile with a delay or scroll trigger.
What Builderify's exit-intent trigger does, from the widget's code
Question What the exit-intent trigger does
What sets it off The cursor leaving the page through the top edge of the window
Sensitivity Fixed. There is no threshold to tune: the top edge is the line
Sides, bottom, keyboard Ignored
Phones and touch tablets Never fires: no cursor. Use Delay, Scroll, Page views or your own link
How often per page At most once per page load
Another popup open It waits its turn and opens when that one is closed
After they close it Stays closed for the rest of the visit in that tab
After they sign up Not shown again in that browser for a year
Who sees it Mobile, desktop or all; new or returning; a referrer; include or exclude page rules

Read from Builderify’s widget code on 3 October 2026.

An online shop, one monthCredits
Page loads (8k × 10)80
New leads from the exit popup (45 × 1)45
Free every month−125
Credits to buy0

Every account gets 250 free credits a month. Past that, one-time packs start at $9 and never expire, with no monthly fee. The full rate card is on the pricing page.

Questions

Exit intent popups, before you ask.

A popup that opens when a visitor looks about to leave. On a desktop the browser reports the cursor leaving the page, and if it left through the top edge, towards the tabs, address bar or back button, the popup opens before the click lands. Leaving through the sides or closing the tab with the keyboard does not count.

Not truly, because phones have no cursor to watch. Tools that offer mobile exit intent guess from a fast scroll up, the tab being hidden or the back button, and intercepting the back button is now against Google's spam policies. Builderify's exit-intent trigger does not fire on phones, so give phone visitors a separate popup on a delay, scroll depth or page-view trigger.

Paste one script tag into the head of your site, then build the popup and choose the Exit intent trigger. On Shopify that is Online Store, Themes, Edit code, layout/theme.liquid; on Webflow, Site settings, Custom code; on Wix, Settings, Custom Code; on Squarespace, Pages, Custom Code, Code Injection. On a classic WordPress theme it goes in header.php, ideally in a child theme.

Once per visit is plenty. In Builderify a popup opens at most once per page load, a closed popup stays closed for the rest of the visit in that tab, and someone who signs up is not asked again in that browser for a year. Keep it off checkout, cart and thank-you pages with a page rule.

Google says intrusive dialogs that cover content may lead to poor search performance, and suggests banners that take up a small fraction of the screen. Exit intent only fires with a mouse, so it mostly affects desktop visitors. On phones, use a small card at the bottom of the screen rather than a full-screen cover.

Stop losing the visitors
you already paid for.

More leads from the traffic you already have, and follow-up that sends itself. Free to start. No card, no monthly fee.