Your product is not ready, but your landing page is. A waitlist form gives interested visitors a way to leave their email address for a launch, private beta or early access. With mailcontact, each signup arrives as a message in your project inbox. You keep your own page and design.
1. Create an inbox for your launch
Create a free account, add your project and copy its form link from the inbox settings. This is where your landing page will send signups. It works with a static website or a website builder that allows custom forms and scripts.
2. Add a simple email signup form
Start with one visible field: email. Use a button such as “Join the waitlist” and explain what people will hear about. Link to your own privacy policy beside the form.
mailcontact requires both an email and a message. For an email-only waitlist, add a hidden message such as “Please notify me when the product launches.” Set the subject to “Waitlist signup” so these messages are easy to recognize.
Copy the HTML waitlist form
<form action="https://mailcontact.app/api/forms/your-form-id" method="POST"
data-mailcontact-form
data-mailcontact-success="Thanks! Your signup has been received.">
<label for="waitlist-email">Your email address</label>
<input id="waitlist-email" type="email" name="email"
autocomplete="email" maxlength="320" required />
<input type="hidden" name="subject" value="Waitlist signup" />
<input type="hidden" name="message"
value="Please notify me when the product launches." />
<button type="submit">Join the waitlist</button>
<p data-contact-status role="status" aria-live="polite"
aria-atomic="true"></p>
</form>
<script defer src="https://mailcontact.app/forms/v1.js"
crossorigin="anonymous" referrerpolicy="no-referrer"></script>Replace your-form-id with the ID from your project's form link, and adapt the hidden message to your product. Add your own styles.
Using an AI website builder? Ask it to connect your waitlist form to your mailcontact form link, with a hidden message and subject. The setup guide has a connection prompt you can copy.
3. Test the signup before sharing your page
Submit your own email and check that the signup appears in your inbox. The mailcontact script handles inline confirmations, errors and automatic spam checks. It adds the hidden spam check for you; Free forms also display a small attribution link that must stay visible.
Enable email notifications to hear about new signups. Slack, Discord and webhook alerts are available on Pro and Plus. If a test is missing, check Spam before sharing the landing page.
Can I create a waitlist for free?
Yes. Free includes 1 project and 50 form messages per month. Each received signup uses one message. Free messages are kept for 30 days, so keep your launch list in your own records before they expire, or choose a paid plan without that retention limit.
What happens when I am ready to launch?
This setup collects signups as inbox messages. Keep one entry per email address in your launch list and send your launch announcement separately: it does not automatically deduplicate subscribers or send a welcome email or a bulk launch campaign.
Once your product is live, use the same connection for a customer feedback or support form. Your first users already have a way to reach you.