> ## Documentation Index
> Fetch the complete documentation index at: https://docs.textyess.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Popups: collect WhatsApp and email subscribers on your store

> Create a popup on your Shopify store to collect WhatsApp numbers and emails, show a discount code or announce a sale. Pages, countries, languages, timing, double opt-in, publishing and results.

**Popups** show a message to the people who browse your Shopify store. A popup can collect WhatsApp numbers and emails, show a discount code, or announce a sale. Popups are in **Growth Tool Kit → Popups**, at [ai.textyess.com/growth-tool-kit/popups](https://ai.textyess.com/growth-tool-kit/popups). They are for Shopify stores.

## Create a popup

1. Open **Growth Tool Kit**. On the **Popups** card, click **Create a popup**.
2. Click **New popup**.
3. Choose a starting point: **Collect contacts**, **Share news** or **Start from scratch**.
4. In the **Design** tab, edit the blocks, the texts and the style.
5. Click **Preview** to try the popup. The preview saves nothing.
6. Click **Save**.

A new popup is a **Draft**. It shows on your store only after you click **Publish** and turn on the TextYess app embed in your theme. The popup editor needs a wide window. On a small screen, make the window wider or close the side panels.

## Collect WhatsApp numbers and emails with a popup

In the popup editor, open the **Design** tab. Add fields from the **Form** blocks:

* **Email field** collects an email address.
* **WhatsApp field** collects a WhatsApp number, with a country code.
* **Field** collects another contact attribute, for example **First name** or **Birthday**. To make a new attribute, click **Add new attribute** in the attribute list of the field.

A popup can have one **Email field** and one **WhatsApp field**. A visitor must give an email, a WhatsApp number, or both. To ask for the details in more than one step, click **Add step**. A step where all fields are optional shows **Skippable**.

## Consent notice on popup fields

Each **Email field** and **WhatsApp field** of a popup shows a consent notice. You can edit the notice in the field settings, or show it as a **Checkbox** that the visitor must tick.

Every subscription stores the exact consent text and its version, the channel, the page URL, the visitor language, the IP address and the browser details. You can hide the notice. If you hide it, you must inform your subscribers in another way.

## Show a discount code after a popup sign-up

Add a **Discount code** block to the **Success** screen of the popup. Visitors copy the code with one click. In the block settings, choose the **Type**:

* **Fixed**: every visitor sees the same code. Create the code in Shopify first, then type it in **Code**.
* **Unique**: each visitor gets their own code. In **Discount**, pick a discount from **Growth Tool Kit → Unique discount codes**.

With **Unique**, a visitor who submits again sees the same code while it is valid. A visitor who already used the code in an order gets no new code. A welcome automation that sends a code from the same discount sends this code. You can publish the popup only when its discount is active. See [Unique discount codes](/growth-tools/discount-codes).

## Announce a sale with a popup that collects nothing

A popup does not have to collect contacts. When you create the popup, choose **Share news**. Or delete all the Email and WhatsApp fields of an existing popup.

1. Click the popup button.
2. In **Destination**, type the page to open, for example `/collections/sale`. The page opens in the same tab and the popup closes.
3. To show no button, set **Show button** to **Off**.

A popup that collects nothing has no success screen and no **Lists & Sync** tab. In the **Popups** list, its **Submits** and **Opt-in rate** show a dash.

## Turn on double opt-in for a popup

With double opt-in, a sign-up becomes a subscriber only after the visitor clicks the link in a confirmation email.

1. Open the popup and go to the **Lists & Sync** tab.
2. Turn on **Require confirmation by email**. The popup must have an **Email field**.
3. Click **Preview** to see the confirmation email, or **Edit email** to change it. You cannot remove its confirm button.
4. Save the popup.

Each confirmation email uses one email credit, and its link stays valid for 7 days. Until the click, the sign-up shows as pending at the top of **All Contacts**, with a **Resend** button. If email sending is not set up, or your email credits are empty, the popup adds the sign-up without confirmation. More details: [Email popup installation](/email-popup-installation-shopify#double-opt-in).

## Choose the pages where a popup shows

In the popup editor, open the **Behavior** tab. In **When to show**, set **Pages**:

* **All pages**.
* **Homepage only**: only the main address of your store, `/`. A homepage in another language, for example `/fr`, does not count.
* **Pages where the URL contains...**: in **URL contains**, type part of the page path, for example `/collections/`.

The popup shows only on the pages that match.

## Show a popup only in some countries or languages

In the popup editor, open the **Behavior** tab and find **Who sees it**.

* For **Country**, choose **Only visitors in these countries** or **Everyone except visitors in these countries**. Then pick the countries.
* For **Language**, choose the same kind of option and pick the languages.

If you set both, a visitor must match both. The country comes from the visitor's location, as Shopify detects it. If Shopify cannot read the country, the popup stays hidden for that visitor. The language is the language of the store page. See [Localize your popup](/localize-popup#choose-who-sees-the-popup).

## Set the popup delay, format and teaser

In the popup editor, open the **Behavior** tab:

* **How it appears**: choose a **Popup** in the center, a **Flyout** in a corner, or a **Banner** on the top or bottom edge.
* **Delay before showing (seconds)**: the wait after the page opens. A new popup waits 3 seconds.
* **Days before showing again**: a visitor who closes the popup does not see it again for this number of days. A new popup uses 7 days.
* **Collapse into a teaser when closed**: the closed popup becomes a small tab on the screen edge. A click on the tab opens the popup again.

A visitor who subscribes does not see the popup again in the same browser.

## Change the design of a popup

In the popup editor, open the **Design** tab. The sidebar has two tabs: **blocks** and **styles**.

* In **blocks**, add a heading, text, an image, fields, or a header image.
* In **styles**, set the **Theme**: the **Palette** and the **Font**.
* To change one block, click it on the popup. Its text and style settings open in the sidebar.

A header image that you drop on the popup must be under 5 MB.

## Translate a popup into the languages of your store

One popup works for all the languages of your store. A visitor sees the popup in the language of the store page. TextYess translates the texts automatically, into a maximum of 12 languages for each popup.

TextYess never translates the consent notice. Write it for each language in the **Languages** tab of the popup editor. In the same tab, you can edit any translation or turn off a language. See [Localize your popup](/localize-popup).

## Where popup subscribers go

When a visitor submits a popup, TextYess:

* Creates or updates the contact. A WhatsApp number gets WhatsApp marketing consent. An email gets email marketing consent.
* Adds the contact to the list in **Lists & Sync → TextYess list**. The default list is **Contacts from form submission**.
* Saves the other details, for example the first name, on the contact.
* Starts the automations with the **Contact Entered List** trigger for that list, also when the contact was already on the list. This works for lists made in TextYess or imported from a CSV file.
* Adds the contact to your Klaviyo list, or writes the marketing consent to the matching Shopify customer, if you turned this on in **Lists & Sync**.

## Install a popup on your Shopify store

A popup shows on your store only when its status is **Live** and the TextYess app embed is on in your theme.

1. In the popup editor, open the **Install** tab.
2. Click **Open Shopify Theme Editor**.
3. In **App embeds**, turn on **TextYess**. Then click **Save**.

You do this only once. The same app embed shows all your live popups, and also the onsite AI chat if you use it. See [Email popup installation](/email-popup-installation-shopify).

## Publish, pause, archive or delete a popup

* To show the popup on your store, click **Publish** in the top bar of the popup editor. The status becomes **Live**.
* To hide a live popup, click **Pause**. You can also pause it from the **…** menu in the **Popups** list.
* You can archive or delete a popup only when it is not live. Pause it first.
* An archived popup moves to the **Archived** tab. **Restore** brings it back as a **Draft**.
* **Duplicate** makes a draft copy. The copy name ends with "(Copy)".

When you delete a popup, the contacts it collected stay in your lists.

## See popup results

The **Popups** list shows these columns for each popup:

* **Views**: the number of times the popup opened for a visitor.
* **Submits**: the number of sign-ups.
* **Confirmed**: the number of confirmed emails, when double opt-in is on.
* **Opt-in rate**: submits divided by views.
* **List**: the TextYess list that gets the subscribers.

A popup that collects nothing shows a dash in **Submits** and **Opt-in rate**.

## Which popup shows when several popups are live

A visitor sees one popup at most on each page. When several popups are live, TextYess checks them from the most recently changed. It shows the first popup that matches the page and the visitor's country and language. TextYess skips a popup that the visitor submitted. It also skips a popup that the visitor closed, for the number of days in **Days before showing again**.

## Why a popup does not show on your store

Make sure that:

* The popup status is **Live**.
* The **TextYess** app embed is on in your Shopify theme, and you clicked **Save**.
* The page matches **Pages**, and the visitor matches **Who sees it**.
* The delay in **Delay before showing (seconds)** has passed.
* You did not close or submit the popup before in this browser. To do a test, use a private browser window.
* No other live popup shows first on that page.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.