All segments

Klaviyo Sign-Up Forms: Popup, Flyout or Embedded?

Klaviyo sign up forms compared: popup, flyout and embedded, the targeting settings that decide who sees one, and the step most teams get wrong.

  • Published
  • Reading time 12 min read
  • Author Nafiul Hasan
Klaviyo Sign-Up Forms: Popup, Flyout or Embedded?. Diagram: what survives each stage. RETAIN Klaviyo Sign-Up Forms: Popup,Flyout or Embedded? pointerflow.com

Short answer

A Klaviyo sign-up form is a popup, flyout or embedded form built inside Klaviyo's own form editor that captures an email address (and optionally a phone number) directly on your Shopify storefront, writes the contact onto a chosen list, and can trigger a flow the moment that happens. The setup that actually converts sets display timing, targeting rules and list-suppression logic deliberately, rather than leaving Klaviyo's defaults in place.

A Klaviyo sign up form — popup, flyout or embedded — only earns its place on a Shopify storefront if it shows the right offer to the right visitor at the right moment. Most teams build the form, publish it, and leave every display and targeting setting at its default, which is why the same popup ends up in front of a customer who ordered last week and a subscriber who is already three emails into a flow. This guide covers the form types, the display and targeting settings that actually decide who sees a form, the multi-step email-then-SMS pattern, zero-party data capture, how a form hands off to a list and a flow, and the one step almost every team skips.

What Are Klaviyo Sign-Up Forms?

A Klaviyo sign-up form is a popup, flyout or embedded form built and hosted inside Klaviyo itself, then rendered on your Shopify storefront through Klaviyo’s onsite JavaScript. It captures an email address — and, on a multi-step form, a phone number — writes that contact onto a list you choose, and can trigger a flow at the moment of submission.

The form is not the list-growth strategy by itself. It’s the capture mechanism sitting in front of a decision about who should be asked, when, and what they’re asked in return — decisions made in the form’s Display and Targeting settings, not in its design.

What Do You Need Before Building a Klaviyo Sign-Up Form?

Before opening the form editor, decide three things the form itself can’t decide for you: which list the form feeds, what the visitor gets in exchange for signing up, and which existing contacts should never see it. Building the form first and answering these questions after is how teams end up shipping a form that works technically and converts poorly, because the offer, the list and the suppression rule get bolted on as an afterthought.

You’ll also need a Klaviyo account connected to the Shopify store the form will run on, and — if the form collects a phone number — a plan for SMS consent language that’s written separately from the email consent language.

How Do Popup, Flyout and Embedded Forms Differ?

A popup sits in the centre of the screen and interrupts whatever the visitor is doing, which makes it the highest-friction and typically highest-converting of the three when the timing is right. A flyout sits in a corner and can appear over any page without blocking the content underneath it, which suits a persistent, lower-friction offer. An embedded form lives inside the page itself — a footer, a blog post, a landing page section — and has no display timing or exit-intent trigger, because it’s part of the page from the first paint rather than something that appears afterward.

The practical difference that matters most: a popup and a flyout both depend on Display settings to decide when they appear, while an embedded form’s timing is simply the page’s own load time. Get the display timing wrong on a popup and you’ve cost yourself a conversion; get it wrong on an embedded form and there’s no timing to get wrong, because it was never a timing decision.

How Do You Set Up a Klaviyo Sign-Up Form Step by Step?

Choose the Form Type and Where It Appears

Start from what the visitor is doing on the page rather than from a form template. A visitor landing on a category page browsing product is a different moment than one reading a blog post, and the form type should match: a flyout that stays out of the way while someone shops, or an embedded form at the foot of a long article someone has already finished reading, rather than a popup that interrupts either.

Klaviyo’s form editor lets you build the visual layout first and assign placement rules afterward, but doing it in that order is exactly how a well-designed form ends up targeted at the wrong page. Decide placement before you spend time on the design.

Set the Display Rules

Display settings control the trigger that makes the form appear: immediately on page load, after a time delay, after the visitor scrolls a set percentage down the page, or on exit intent. Klaviyo’s default is usually page load, and page load is rarely the setting worth keeping — a visitor who hasn’t seen any content yet has no reason to hand over an email address, and a popup that fires before they’ve formed an impression of the page reads as a wall rather than an offer.

Exit intent is the trigger built specifically for the visitor who’s about to leave without converting, and it works by detecting cursor movement toward the browser’s close or back controls on desktop. It behaves differently on mobile, where there’s no cursor to track, so a mobile-specific display rule is worth setting separately rather than assuming the desktop trigger carries over.

Set the Targeting Rules

Targeting settings decide which visitors are even eligible to see the form, independent of the display trigger that decides when. This is where page URL, device type and location filters live, and it’s also where the suppression logic against existing lists and segments belongs — the setting most teams never touch, and leaving it unset is the single most common mistake in this whole setup.

Set targeting before display timing, not after. A form perfectly timed to appear at the right moment for the wrong audience still converts poorly — it just converts poorly on a well-timed schedule instead of a random one.

Build the Email-Then-SMS Step

A multi-step form asks for email on the first step and a phone number on a later step, rather than asking for both at once. The sequencing matters for completion: a visitor who has already submitted their email and seen a confirmation is more willing to give a second, more sensitive piece of information than one facing both fields on a single screen.

The SMS step needs its own consent checkbox and its own disclosure text, written separately from the email checkbox, because email and SMS consent are legally distinct and Klaviyo stores them as separate profile properties. Building the SMS-specific flow that follows a phone number capture is its own piece of work, separate from the form itself.

Add a Zero-Party Data Question

A zero-party data question asks the visitor to tell you something directly — a product category they’re interested in, a size, a stated preference — rather than inferring it from behaviour. Add it as a form field mapped to a custom profile property, not to a list, so the answer is available to flow and segment logic across every future send, not just the welcome message that follows signup.

Place it on a later step of a multi-step form rather than the first. Marking it required on the step where someone first decides whether to sign up at all raises the barrier to converting in the first place; marking it required on a later step, after they’ve already committed, costs you far less.

Connect the Form to a List and a Flow

Every Klaviyo sign-up form has a Submit setting that specifies the list a successful submission writes to. That list is the connective tissue between the form and everything that happens next: build a flow with an Added to List trigger pointed at that same list, and the flow starts the moment the form succeeds, with no separate wiring required.

One list can feed more than one flow from a single trigger, so a welcome sequence and an internal team-notification flow can both start from the same form submission. What that welcome sequence actually says is a separate build from the form — the form’s job ends at a successful, correctly-routed submission.

Write the email consent statement and the SMS consent statement as two separate pieces of copy, each specific to the channel it covers and to what the visitor is actually agreeing to. Consent rules for marketing email and SMS — covering wording, disclosure and how consent is recorded — sit under regulatory frameworks including CAN-SPAM, TCPA, GDPR and CASL depending on where your subscribers are, and the specific requirements change; confirm current wording and disclosure obligations with counsel before publishing either checkbox, rather than copying language from a competitor’s form.

Publish and Test the Form

Publish the form, then open an incognito or private browsing session and complete a real submission as if you were the visitor. Confirm three things directly rather than assuming Klaviyo’s settings did what you configured: the contact lands on the list you set in Submit settings, the flow with the matching Added to List trigger actually starts, and any zero-party data answer you gave shows up on the profile as a property.

Testing from a normal, logged-in browser session risks confirming nothing, because Klaviyo’s own suppression settings — the ones covered next — may correctly hide the form from you as an existing contact. That’s the setting working as intended, not a bug in your test.

What Is the Step Most Teams Get Wrong?

The step almost every team skips is suppressing the sign-up form from people who are already customers or already subscribed. A new-visitor popup offering a first-purchase incentive, shown to someone who has already bought and already receives your emails, does two things at once: it wastes the offer on someone who didn’t need it to convert, and it signals — to a real customer — that the brand doesn’t know who they are.

The fix lives in the form’s own Targeting settings, not in a separate tool: set the form’s suppression rule against the list the offer is meant to grow, and against any segment of existing customers, so the form checks “is this profile already on this list or in this segment” before it ever renders. Because that check runs against Klaviyo’s own profile data rather than session or cookie data, it correctly recognises a known contact even on their first visit of the day, on a new device, or after clearing cookies — cases a purely cookie-based suppression would miss entirely.

Get this one setting right and every other setting in this guide performs better, because the form stops competing with your own welcome flow, your own back-in-stock flow and your own loyalty programme for the same visitor’s attention. Get it wrong and no amount of display-timing or copy work fixes what’s actually a targeting problem.

How Do You A/B Test a Klaviyo Sign-Up Form?

Test one variable at a time against a held-back control, and let the test run until Klaviyo’s own reporting shows a clear, sustained gap between variants rather than calling a winner from an early lead. Klaviyo’s native form testing splits traffic between variants automatically once a test is running, which removes the need to build that split yourself — the discipline that matters is choosing the one thing under test.

The variable worth testing first is usually the display trigger, since it decides who is even offered the chance to convert, not just how they respond to the offer once shown. After that, test the headline and the incentive copy, then the form type itself — popup versus flyout on the same page — as separate, later tests. Changing several of these in the same variant tells you the combination worked; it doesn’t tell you which part did, which means the next test starts from a guess instead of a result.

How Do You Verify the Form Is Working?

Verification has three layers, and each one catches a different failure. First, confirm the form actually renders on the pages its Targeting settings say it should, in an incognito session that has no existing profile to trigger suppression. Second, submit a real test entry and confirm the resulting profile lands on the correct list — a form pointed at the wrong list in Submit settings will collect emails that never reach the flow you built for them, and nothing about the form itself will show an error.

Third, and this is the layer teams skip most often, check the flow’s own entry log rather than trusting that “Added to List” fired correctly. Klaviyo’s flow analytics show every profile that entered a flow and when; if your test submission doesn’t appear there within a few minutes, the trigger — not the form — is where to look next.

Sign-up forms are the front door to a lifecycle flows programme, and a form with the wrong targeting or a broken list connection quietly starves every flow downstream of it — including the welcome sequence that’s supposed to convert a new subscriber into a first order. Klaviyo’s own benchmark data puts automated flows at 41% of total email revenue across more than 183,000 brands (vendor-reported), which is the size of the programme a badly targeted sign-up form is feeding poorly. If you already run flows and want to know what a fixed form is actually worth, the flow revenue calculator puts a figure on the gap between what your flows currently earn and what a properly fed list of new contacts could produce — a question worth asking before a scaling brand spends more on paid acquisition to feed the same leaky top of funnel.

For the mechanics of getting subscribers there in the first place through a standalone newsletter signup rather than a popup, see the Shopify newsletter guide; and if contacts captured through a form aren’t showing up where you expect once Shopify orders start coming in, the Klaviyo-Shopify order sync guide covers the usual causes.

Sources

This guide is written from how Klaviyo’s sign-up form editor, targeting and flow-trigger settings actually work when configured for a Shopify store. The single external figure quoted — automated flows at 41% of email revenue across more than 183,000 brands — is Klaviyo’s own benchmark data, vendor-reported. Feature availability and specific setting labels can change between Klaviyo releases; confirm the current form editor against Klaviyo’s own help documentation before publishing, and confirm consent wording requirements with counsel.

Frequently asked

Can I use the same Klaviyo sign-up form on more than one page?

Yes. A form's Targeting settings can include several URLs or URL patterns, so one popup or flyout can run across a whole category, the full site, or a specific set of pages, rather than needing a separate form built for each page it appears on.

Does Klaviyo support exit-intent popups?

Yes, exit intent is one of the display triggers available in a Klaviyo form's Display settings, alongside page load, a time delay and a scroll-depth percentage. It fires when Klaviyo detects cursor movement toward closing the tab or window, on desktop; mobile exit detection works differently because there is no cursor to track.

What's the real difference between a flyout and an embedded form?

A flyout sits in a corner of the screen and can appear over any page without disrupting layout; an embedded form is placed directly inside a page's content, such as a footer or a blog post, and has no display timing or exit-intent trigger because it is part of the page from the moment it loads.

Can a single sign-up form trigger more than one flow?

A form writes a contact onto one list on submission, and any number of flows can share that same Added to List trigger, so yes — a welcome flow and an internal notification flow, for example, can both start from the same submission without the form needing to know about either one.

Do I need a separate consent checkbox for SMS if I already collect email consent?

Yes. Email and SMS consent are legally distinct and Klaviyo treats them as separate profile properties, so a multi-step form needs its own checkbox and its own disclosure text on the SMS step — confirm the current wording and disclosure requirements for your market with counsel before publishing either.

Can I show a different sign-up form to first-time visitors than to people who've been to the site before?

Yes, through the same targeting and suppression logic used to hide a form from existing customers — Klaviyo can key that logic off list or segment membership rather than visit history directly, so the practical version is targeting on 'not yet on this list' rather than on a literal first-visit flag.

What happens if a visitor closes the popup without submitting it?

Klaviyo suppresses the form from reappearing to that browser for a period you set in the form's Display settings, using a cookie rather than a profile record, since no profile exists yet. Clearing cookies, switching browsers or switching devices resets that suppression, which is why the same person can see the popup again later.

Can I require an answer to a zero-party data question before someone can submit the form?

Klaviyo's form editor lets you mark a custom question as required, which blocks submission until it's answered — but a required question on the first step raises the bar to convert at all, so most teams place an optional question on a later step instead, once the visitor has already committed to signing up.

Will a Klaviyo sign-up form work on a headless or password-protected Shopify storefront?

A password-protected storefront can break parts of onsite tracking and form behaviour, so test directly rather than assuming it works. A headless storefront needs Klaviyo's onsite JavaScript embedded manually in the custom front end, since the form doesn't render itself the way it does on a standard Shopify theme.

How many form variants can Klaviyo split traffic across in one test?

Klaviyo's native testing supports several variants against one control running at the same time, not just a single head-to-head. The discipline that matters isn't the variant count — it's changing one variable per variant, so a result can be attributed to that specific change rather than to a bundle of changes.

What is double opt-in, and does Klaviyo require it for sign-up forms?

Double opt-in means a subscriber confirms their address a second time, by email, before they're added to marketing sends — a separate account-level setting in Klaviyo, not a sign-up form setting. Whether to require it is a deliverability and consent decision worth making deliberately, not a default to leave unexamined.

Can I exclude a specific segment, not just an entire list, from seeing a form?

Yes. A form's suppression logic in Targeting settings can reference a segment as well as a list, which is the more precise version of the same rule — instead of suppressing everyone on your full subscriber list, you can suppress only, say, people in an active-VIP segment while still showing the form to lapsed subscribers.

Do embedded forms show up in the same reporting as popups and flyouts?

Yes, all three form types report submissions, views and conversion rate inside the same Klaviyo sign-up forms reporting, filterable by individual form. An embedded form's view count is tied to page views of wherever it's placed, which tends to read lower than a popup's, since a popup can appear across many pages at once.

Can I run a Klaviyo sign-up form in more than one language?

Klaviyo's form editor does not automatically translate a form based on visitor location — each language version has to be built as its own form, with its own copy and consent text, then targeted to the URL or store region that visitor sees. There's no single-form auto-translate setting to turn on.

Should the sign-up form offer the same thing as the welcome flow that follows it?

The form's promise and the welcome flow's first message need to match exactly, since a mismatch between what the form offered and what the first email delivers is a common source of early unsubscribes — building the welcome sequence itself is a separate piece of work from the form that feeds it.

Next step

Is this your lifecycle flows problem, or a symptom of another one?

Bring your numbers — the churn split, the decline rate, whatever your flows are earning — and we will tell you which of them is the expensive one.

Book a call →