Nanflows Popup is a free popup builder for WordPress. Make a popup, a slide-in, a top banner, a bottom bar or an inline box, put an email opt-in form in it, and choose who sees it, on which pages and when.
Start from one of 47 ready-made templates or from a blank canvas. Design it in the Nanflows editor, in the block editor (Gutenberg) or in Elementor. Leads are saved in your own database and can be sent on to Mailchimp, Brevo, MailPoet, FluentCRM or the Newsletter plugin.
Free, with no limit on the number of popups, views or leads.
[nanflows_popup] shortcode.Put a form from Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Ninja Forms, Formidable Forms, Forminator, Elementor Pro Forms, WS Form, MC4WP: Mailchimp for WordPress or Jetpack Forms in a popup. Sent forms count as conversions, and can be saved under Leads too.
A cookie banner with Accept all, Reject all and Customize buttons, that holds back tracking scripts until the visitor agrees, and supports Google Consent Mode v2. It can also load Google Analytics 4, Google Tag Manager, Meta Pixel or Microsoft Clarity for you from just their ID, once the visitor accepts. Set it up under Popups > Cookie consent.
Everything above is free and works fully without Pro. Nanflows Popup Pro, a separate plugin, adds exit intent and many more triggers, more popup types (fullscreen, spin to win, countdown, content locker, yes/no, surveys and quizzes…), advanced targeting, A/B testing, unique WooCommerce coupons, revenue tracking and more integrations.
The template gallery and the editor list the Pro options as optional upgrades.
Nanflows Popup works on its own and sends nothing anywhere by default. Each service below is contacted only after a site admin turns it on and enters their own account details for it.
When a CAPTCHA provider is chosen under Popups > Settings, the provider’s script is loaded on pages that show a popup form, and when a visitor sends the form, the token the script created and the visitor’s IP address are sent to the provider to check that the visitor is human.
When a popup’s form is connected to one of these services, the lead’s email address, and the name and other fields the visitor filled in, are sent to that service when the form is sent. Saving the connection also asks the service for your lists, using the API key you entered.
MailPoet, FluentCRM and the Newsletter plugin run on your own site, so nothing leaves it.
When you paste a webhook address under Popups > Integrations, every new lead (email, name, consent, popup, page and date) is sent as JSON to that address. Where it goes is up to you; nothing is sent until you add one.
When you enter a tag’s ID under Popups > Cookie consent, the banner loads that tag’s script, only for visitors who accept its category (Analytics or Marketing). The tag then sends the pages they visit, their IP address and browser details to its vendor, under your own account with that vendor. Nothing is loaded while the ID field is empty.
When a popup uses a Google font, the font’s stylesheet comes from fonts.googleapis.com and the font files from fonts.gstatic.com, which receive the visitor’s IP address. Turn on “Host Google Fonts on this site” in Popups > Settings and the fonts are downloaded once, by your server, and served from your own site instead. Terms, Privacy policy
The editor and block scripts in build/ are compiled from the readable source in src/ with @wordpress/scripts. The .min.js and .min.css files in assets/ sit next to their readable versions.