# Add a waitlist to WordPress with LaunchList

Install the LaunchList plugin and connect your site once. Then add the LaunchList block, or a shortcode in a page builder, and your form appears on the page exactly as designed in LaunchList. Already built a form in Contact Form 7, WPForms or another form plugin? Send its signups to LaunchList instead. Each signup gets a referral link and a place in line. Coming soon to the WordPress plugin directory.

How it connects: WordPress plugin or your WordPress forms. Canonical page: https://getlaunchlist.com/plugins/wordpress. Updated 2026-10-17.

## Set it up

1. **Install the plugin.** [Download the LaunchList plugin](https://app.getlaunchlist.com/downloads/launchlist-wordpress.zip). In WordPress, open **Plugins**, then **Add New Plugin**, and click **Upload Plugin**. Choose the file you downloaded, click **Install Now** and then **Activate Plugin**.
2. **Connect your site.** Open **LaunchList** in the WordPress menu and click **Connect to LaunchList**. Sign in to your LaunchList account when asked, choose the workspace and click **Connect**.
3. **Add your form.** Edit a page, add the **LaunchList form** block and choose your form in the **Form** list. In a page builder or the classic editor, use the shortcode `[launchlist form="frm_8Kd2Qm4Rp9xy"]` with your own form ID from **Embed & API** in LaunchList.
4. **Publish and sign up once.** Publish the page, or preview it, and join with your own email to see the signup arrive in LaunchList. A signup made in a preview is real.

## Two ways to use LaunchList on WordPress

- **The LaunchList block.** Recommended. Add it to a page, set Show to Form, Popup button, Widget or
  Updates and choose yours. LaunchList draws it, so it matches your launch page and shows a person
  their place in line right after they join. A shortcode does the same in a page builder or the
  classic editor.
- **Your own WordPress form.** You build the form in the form plugin you already use. Best when it is
  already built.

Whichever you pick, LaunchList checks each signup for duplicates and spam before adding it, and keeps
the referral credit.

## Connecting your site

Connecting happens once per site, from **LaunchList** in the WordPress menu, and needs a LaunchList
account. Click **Connect to LaunchList**, sign in, choose the workspace the site belongs to and click
**Connect**. Your site gets its own key, known only to your site and LaunchList, which signs
everything it sends. Back in WordPress, the screen says **Connected to** your workspace, with **Open
LaunchList** and **Disconnect** beside it.

Once connected, the plugin loads LaunchList on every page, so a referral follows a visitor from page
to page, and your own forms can be sent to LaunchList. Loading on every page is on by default. To load
LaunchList only on pages with a LaunchList block or shortcode, clear **Load LaunchList on every page**
at the foot of **Your forms** and click **Save**. Where a consent plugin that uses the WP Consent API
is active, LaunchList loads on every page only for visitors who allowed marketing cookies.

To take the connection off, click **Disconnect** and confirm, or in LaunchList open **Embed & API**,
then **Your website**, and click **Disconnect** beside the site. Your forms stop sending, blocks and
shortcodes keep working, and any signup still waiting on your site to be sent is deleted.

## Add LaunchList with the block

Add the **LaunchList** block from the inserter, which offers **LaunchList form**, **LaunchList popup
button**, **LaunchList widget** and **LaunchList updates**. The block's **Show** setting switches
between Form, Popup button, Widget and Updates.

- **Form** and **Popup button** take a form. Choose it in the **Form** list, which names each form
  with its project, or click **Enter an ID instead** and paste its form ID from **Embed & API** in
  LaunchList. A form's **Button text** replaces the text set on the form in LaunchList. A popup
  button has its own **Button text** and **Opens as**: a window in the middle of the page or a panel
  from the side.
- **Widget** and **Updates** take a **Project**. A widget also takes a **Widget**: one of yours from
  the list, or a type, **counter**, **leaderboard**, **milestone** or **countdown**.

The lists need the site to be connected. Without a connection the block asks for the ID, because the
embed itself is public. After you add a form in LaunchList, click **Refresh** in the block's settings
to see it in the list.

In the editor the block shows a card, so nothing typed there becomes a signup. The form itself
appears on the published page and in a page preview, and a signup made in a preview is real. It shows
LaunchList's own embed, so there are no style settings in WordPress to keep in sync. What happens
after someone signs up is set on the form in LaunchList: your status page, a page on your site, or a
message with their place in line and referral link.

## Add LaunchList with a shortcode

To put LaunchList somewhere a block does not fit, such as a page builder or the classic editor, use a
shortcode. Open **Add LaunchList to a page** at the bottom of the LaunchList screen. It lists a
**Form**, **Popup**, **Widget** and **Updates** shortcode for one of your forms, each with a copy
button, and a list to switch forms when you have more than one. The form shortcode looks like
`[launchlist form="frm_8Kd2Qm4Rp9xy"]`. The widget shortcode shows a signup counter: put leaderboard,
milestone or countdown in place of counter for the others.

## Send your own WordPress forms

Keep the form you built in **Contact Form 7**, **WPForms**, **Gravity Forms**, **Elementor Pro**,
**Fluent Forms**, **Ninja Forms** or **Formidable Forms**, and send its signups to LaunchList. Connect
your site first. On the LaunchList screen, **Your forms** lists every one of your forms with the form
plugin it comes from and one list beside it. Leave it on **Don't send**, or choose the LaunchList form
its signups go to. The list groups your LaunchList forms by project.

Once a form is chosen, **Match fields** appears under its name. Open it to choose which of your
form's fields fills each LaunchList field. The plugin suggests matches: the first email field, and
other fields by name. Match the field LaunchList identifies a person by, usually **Email**. Until you
do, the row warns that LaunchList refuses these signups. A LaunchList field left on **Don't send**
stays empty, and your form's fields that fill no LaunchList field are kept with the signup, up to 20,
under a simplified version of their label. Click **Save** to keep your choices. A form you add in
LaunchList appears in the list the next time you open the screen.

Your form plugin keeps working as before: its emails, messages and saved entries do not change, and
it still shows its own success message. LaunchList receives each submission from your server after
your form plugin accepts it. If LaunchList can't take one right away, your site keeps it and tries
again a minute later at first, then up to an hour apart, for 24 hours. Only forms you chose to send
reach LaunchList.

## Recent deliveries

**Recent deliveries** on the same screen shows what happened to your latest submissions:

- **Sent**: LaunchList received it.
- **Kept**: LaunchList could not take it yet, so your site kept it to try again.
- **Not added**: LaunchList refused it. The reason is beside it, such as a field LaunchList needs that
  was missing.

When signups are waiting to send, the card says how many, and **Retry now** tries them again.

## When the screen shows a problem

- **LaunchList no longer recognizes this site.** The connection was removed in LaunchList. Signups
  from your forms are kept on your site for 24 hours. Click **Connect again**, or **Disconnect** to
  stop the notice, which also shows across your WordPress admin.
- **LaunchList can't be reached right now.** Signups are kept on your site and sent when it is back.
  **Retry now** tries them at once.
- **This looks like a copy of** your live site. A copy made by cloning the site with its database,
  such as a staging site, sends nothing to LaunchList in the live site's name. Click **Connect this
  copy as its own site** if the copy should send signups too.
- **This server's clock is off.** LaunchList refuses requests from a server whose clock is wrong. Ask
  your host to sync the server clock, then click **Check connection**.

## Frequently asked questions

### Can I add a waitlist to WordPress?

Yes. Install the LaunchList plugin, add the LaunchList block to a page and choose your form. The form looks exactly as designed in LaunchList, multi-step forms included, and what happens after a signup is set on the form in LaunchList.

### Do I need a LaunchList account?

Yes. Your forms, signups and referral links live in your LaunchList account. You sign in to it to connect a site, and you copy a form's ID from it if you enter an ID instead of choosing from the list.

### Do I have to connect my site?

Not to show a form. The embed is public, so the block and the shortcode work without a connection, and without one you paste the form's ID into the block instead of choosing it from a list. Connect your site to send your own WordPress forms to LaunchList, and so that LaunchList loads on every page, which is what lets referrals follow a visitor from page to page.

### Can I keep my own WordPress form?

Yes, if you built it with Contact Form 7, WPForms, Gravity Forms, Elementor Pro, Fluent Forms, Ninja Forms or Formidable Forms. On the LaunchList screen in WordPress, every one of your forms is listed under Your forms. Choose a LaunchList form beside each one you want to send, check its fields under Match fields and click Save. The field LaunchList identifies a person by, usually Email, must be matched. Forms left on Don't send are not sent.

### Do referrals work on a WordPress site?

Yes, both ways. Once your site is connected, the plugin loads LaunchList on every page and it remembers a referral code for 90 days. A visitor who arrives on one page and signs up on another, in the LaunchList block or in your own form, still credits the person who shared the link. To turn that off, clear Load LaunchList on every page on the LaunchList screen and click Save. Where a consent plugin uses the WP Consent API, it waits for marketing consent.

### Can I show more than the form?

Yes. The block's Show setting also offers a popup button, a widget such as a signup counter, and your published updates. A widget or updates takes a project, which you choose from a list once your site is connected. The Add LaunchList to a page section of the LaunchList screen lists a shortcode for each.

### Why does the editor show a card instead of my form?

So that nothing typed in the editor becomes a real signup. The form appears on the published page and in a page preview. A signup made in a preview is real.

### Can my own WordPress form show the person their place in line?

No. Your form plugin shows its own success message or redirect, and the signup is sent to LaunchList from your server. Use the LaunchList block if you want the place in line and referral link shown on the page.

### What happens if LaunchList can't take a signup right away?

Your form works as usual. Your site keeps the signup and tries again a minute later at first, then up to an hour apart, for 24 hours. Recent deliveries on the LaunchList screen shows what happened to each one, and Retry now tries the waiting ones again.

### Will a staging copy of my site send signups?

Not in your live site's name. A copy made by cloning the site with its database sends nothing to LaunchList. Its LaunchList screen says it looks like a copy of your live site and offers to connect the copy as a site of its own.

### What does the plugin send to LaunchList, and when?

For your own forms, only the forms you chose to send, and only after your form plugin accepts the submission. Your WordPress server sends what the visitor entered, the form's title, the form plugin's name, the page it was sent from and the visitor's referral and campaign tags, signed with a key only your site and LaunchList know. LaunchList sees your server's address, not the visitor's. Separately, the LaunchList script loaded in a visitor's browser sends LaunchList their IP address, browser details and the page address, as loading any script from another site does. It keeps referral and campaign tags in the browser for 90 days and, while your site is connected, in a first-party cookie named launchlist_attribution on your site, with no name or email address in it.

### How do I remove LaunchList from my site?

Click Disconnect on the LaunchList screen in WordPress, or in LaunchList open Embed & API, then Your website, and click Disconnect beside the site. Your WordPress forms stop reaching LaunchList, blocks and shortcodes keep working, and the signups already in LaunchList stay there.

## Related

- [Waitlist widget for any site](https://getlaunchlist.com/integration): The two-line embed for Webflow, Squarespace, Carrd and more.
- [WordPress in the docs](https://app.getlaunchlist.com/help/docs/integrations/wordpress): The full steps, with fixes for a form that does not show or signups that do not arrive.
- [Referrals](https://getlaunchlist.com/features/referrals): How referral links, rewards and places in line work.
