Startup Launch & Waitlist Page Template — Free Snippet

Startup Launch & Waitlist template · 5 website sections · Plain HTML, CSS & JS · Customise it in the Website Builder

What's included

Features

5 ready-made website sections assembled into one finished startup launch & waitlist page: Navbar With Announcement Bar, Centred Gradient Hero, Bento Grid Features, Newsletter Signup CTA, Footer With Newsletter
Every section links to its own page in the Website Section Templates library, where you can edit it on its own
One theme drives the whole page (colours, fonts, corner radius, width), so changing the brand takes a minute
Container-query responsive: each section adapts to the width it is placed in, from phone to desktop
GSAP entrance animations and scroll effects load from a CDN, and switch off for visitors who prefer reduced motion
Also available as a 5-page website in the builder, sharing one navbar, footer and theme
Plain HTML, CSS and JavaScript: copy the code here or export it to React, Vue, Angular or Tailwind

About this UI Snippet

A Waitlist Page That Builds an Audience Before You Launch

Screenshot of the Startup Launch & Waitlist Template snippet rendered live

A waitlist page has one metric: how many visitors leave an email address. Everything else on the page exists to remove a reason not to. The announcement bar puts the launch date in front of people, so the wait feels finite. The centred gradient hero asks for one thing and nothing else. The bento grid shows what is coming in a layout that is easy to skim and looks intentional even when you only have four ideas to show. And the newsletter form appears twice, once in the main call to action and once in the footer, because some people only decide on the way out.

The form sends to your email tool, not to this page, so the real work of the snippet is hooking it up: point the form's action at Mailchimp, ConvertKit, Buttondown or any endpoint that accepts a POST. Keep the success message short and tell people what happens next ("We will email you once, on launch day").

This is the layout of the Startup Launch & Waitlist template. Open it in the Website Builder to change the colours, rewrite the copy, add the FAQ and About pages from the multi-page version and export the site.

Built from website section templates

The 5 Sections Behind This Startup Launch & Waitlist Page

This page is not one big block of code: it is stacked from ready-made sections in the free Website Section Templates library, in this order. Open any of them to edit it on its own, or start with the whole page.

  1. Navbar With Announcement Baran announcement bar with the launch date, so the wait feels short and real
  2. Centred Gradient Heroa centred hero that asks for one thing: an email address
  3. Bento Grid Featuresa bento grid of what is coming, which looks intentional even with only a few features
  4. Newsletter Signup CTAthe main sign-up form, repeated lower down for visitors who needed the whole pitch first
  5. Footer With Newslettera footer with a second sign-up form, for the visitor who decides on the way out

Step by step

How to Use

  1. 1
    Open the template in the Website BuilderPress "Start using this template" to open the Startup Launch & Waitlist in the Website Builder. Everything is edited with forms in a side panel; no code is needed.
  2. 2
    Set the launch date and the promiseEdit the announcement bar with your real date, then rewrite the hero headline as the single benefit of joining the list (early access, a founding price, a free month).
  3. 3
    Connect the form to your email toolSet the newsletter form action to your provider's form endpoint and change the success message to say exactly what subscribers will receive and when.
  4. 4
    Fill the bento grid with real teasersUse each tile for a feature, a screenshot or a number you can honestly show. Remove tiles you cannot back up; four strong tiles beat eight vague ones.
  5. 5
    Export and publishDownload one HTML file or a ZIP (or one HTML file per page for the multi-page version) and upload it to Netlify, Vercel, Cloudflare Pages, GitHub Pages or your own host. Or copy the code from this page and export it to React, Vue, Angular or Tailwind with the buttons above the editor.

Real-world uses

Common Use Cases

Build a list before a product launch
Collect emails for weeks before release and turn the list into your first customers on launch day.
Test an idea with a landing page
Publish the page, send a little traffic and count sign-ups to learn whether a product is worth building at all.
Learn bento grids and form handling
See how a responsive bento grid is built with CSS grid and how a plain HTML form can post to a third-party email service.

Got questions?

Frequently Asked Questions

A single promise, a launch date, one or two proof points of what is coming and one sign-up form. More than that gives visitors reasons to leave without subscribing.

Copy the form action URL from your provider and set it as the form's action in the snippet, keeping the email field name your provider expects.

Rarely. Every extra field lowers sign-ups. Ask for the email now and learn more about subscribers later, in the welcome email.

It is assembled from 5 templates in the free Website Section Templates library: Navbar With Announcement Bar, Centred Gradient Hero, Bento Grid Features, Newsletter Signup CTA, Footer With Newsletter. Each one has its own page where you can edit it separately.

It is the same page. Here you read and edit the HTML, CSS and JavaScript directly with a live preview; in the Website Builder you edit it with forms, change the theme once for the whole page, add pages and export a finished site.

Source Code


    <section class="st st-navbar-announcement" data-uid="smvnkxd7iwanw">
      <div class="na-bar" data-dismissable>
        <p class="st-wrap na-bar-in"><span>🚀 Launching on Product Hunt, 12 November</span> <a class="na-bar-link" href="#get-started"><span>Get notified</span> <span aria-hidden="true">→</span></a></p>
        <button type="button" class="na-close" data-dismiss aria-label="Dismiss announcement"><span aria-hidden="true">×</span></button>
      </div>
      <header class="st-wrap na">
        <div class="na-left">
          <a class="st-brand" href="#">
            <span class="st-brand-mark"><span class="st-brand-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z" /><path d="M20 3v4" /><path d="M22 5h-4" /><path d="M4 17v2" /><path d="M5 18H3" /></svg></span><span>Lumina</span></span>
          </a>
          <nav class="na-nav" data-menu aria-label="Main">
            <ul class="na-links">
              <li data-menu-item><a class="na-link" href="#features"><span>Features</span></a></li>
              <li data-menu-item><a class="na-link" href="#get-started"><span>Join</span></a></li>
            </ul>
            <div class="na-actions na-actions--menu" data-menu-item>
              <a class="na-login" href="https://webdevpuneet.com/login"><span>Sign in</span></a>
              <a class="st-btn" href="#get-started"><span>Join the waitlist</span></a>
            </div>
          </nav>
        </div>
        <div class="na-actions na-actions--bar">
          <a class="na-login" href="https://webdevpuneet.com/login"><span>Sign in</span></a>
          <a class="st-btn" href="#get-started"><span>Join the waitlist</span></a>
        </div>
        <button type="button" class="st-burger" data-menu-toggle aria-expanded="false" aria-label="Open menu"><span></span><span></span><span></span></button>
      </header>
      <i hidden data-sticky-flag></i>
    </section>
    <section class="st st-centered-gradient-hero" data-uid="smvnkxd7i5cmg">
      <div class="cg-glow" aria-hidden="true"></div>
      <div class="cg st-wrap">
        <span class="st-eyebrow cg-eyebrow" data-anim="item">Coming soon</span>
        <h1 class="cg-title" data-anim="item" data-anim-text>Your notes, <span class="hl">finally thinking with you</span></h1>
        <p class="st-lead cg-lead" data-anim="item">Lumina turns scattered notes into answers, summaries and next steps. Join the waitlist for early access.</p>
        <div class="st-btns cg-btns" data-anim="item">
          <a class="st-btn" href="#get-started"><span>Join the waitlist</span></a>
          <a class="st-btn st-btn--ghost" href="#features"><span>See what’s coming</span></a>
        </div>
        <p class="cg-note" data-anim="item">2,400 people already on the list</p>
        <div class="cg-media" data-anim="media"><img width="1200" height="820" src="https://webdevpuneet.com/images/section-templates/hero-dashboard.png" alt="Acme app dashboard"></div>
      </div>
    </section>
    <section id="features" class="st st-features-bento" data-uid="smvnkxd7iaooq">
      <div class="st-wrap">
        <header class="st-head">
          <p class="st-eyebrow" data-anim="item">What’s inside</p>
          <h2 class="st-h2" data-anim="item" data-anim-text>Built for <span class="hl">how you actually think</span></h2>
          <p class="st-lead" data-anim="item"></p>
        </header>
        <div class="fb-grid">
          <article class="fb-card" data-anim="item">
            <div class="fb-copy">
              <span class="st-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2" /><path d="M7 11v4a2 2 0 0 0 2 2h4" /><rect width="8" height="8" x="13" y="13" rx="2" /></svg></span>
              <h3 class="fb-title">Visual automations</h3>
              <p class="fb-text">Drag triggers and actions onto a canvas. No code, no scripts, no waiting on engineering.</p>
            </div>
            <div class="fb-media"><img loading="lazy" src="https://webdevpuneet.com/images/section-templates/feature-automation.png" alt="Workflow builder with connected trigger and action nodes"></div>
          </article>
          <article class="fb-card" data-anim="item">
            <div class="fb-copy">
              <span class="st-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 8V4H8" /><rect width="16" height="12" x="4" y="8" rx="2" /><path d="M2 14h2" /><path d="M20 14h2" /><path d="M15 13v2" /><path d="M9 13v2" /></svg></span>
              <h3 class="fb-title">AI assistant</h3>
              <p class="fb-text">Summarise threads, draft updates and triage new requests automatically.</p>
            </div>
          </article>
          <article class="fb-card" data-anim="item">
            <div class="fb-copy">
              <span class="st-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m12 14 4-4" /><path d="M3.34 19a10 10 0 1 1 17.32 0" /></svg></span>
              <h3 class="fb-title">Instant search</h3>
              <p class="fb-text">Find any task, doc or comment in milliseconds.</p>
            </div>
          </article>
          <article class="fb-card" data-anim="item">
            <div class="fb-copy">
              <span class="st-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="18" height="11" x="3" y="11" rx="2" ry="2" /><path d="M7 11V7a5 5 0 0 1 10 0v4" /></svg></span>
              <h3 class="fb-title">Enterprise security</h3>
              <p class="fb-text">SSO, SCIM and granular roles on every workspace.</p>
            </div>
          </article>
          <article class="fb-card" data-anim="item">
            <div class="fb-copy">
              <span class="st-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="10" /><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20" /><path d="M2 12h20" /></svg></span>
              <h3 class="fb-title">Works everywhere</h3>
              <p class="fb-text">Web, desktop and mobile apps that stay in sync offline.</p>
            </div>
          </article>
        </div>
      </div>
    </section>
    <section id="get-started" class="st st-cta-newsletter" data-uid="smvnkxd7i09h4">
      <div class="st-wrap">
        <div class="cn" data-anim="media">
          <span class="st-icon cn-icon" data-anim="item"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="20" height="16" x="2" y="4" rx="2" /><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7" /></svg></span>
          <h2 class="st-h2 cn-title" data-anim="item" data-anim-text>Be first in line for <span class="hl">early access</span></h2>
          <p class="st-lead cn-lead" data-anim="item">We’re letting people in weekly, in the order they joined. No spam, just your invite.</p>
          <form class="cn-form" data-anim="item" method="post" action="https://webdevpuneet.com/subscribe">
            <input class="cn-input" type="email" required autocomplete="email" name="email" placeholder="you@example.com" aria-label="you@example.com">
            <button class="st-btn cn-btn" type="submit"><span>Join the waitlist</span></button>
          </form>
          <p class="cn-meta" data-anim="item"><span class="cn-proof">2,400+ on the waitlist</span><span class="cn-note">We respect your inbox. Read our privacy policy.</span></p>
        </div>
      </div>
    </section>
    <section class="st st-footer-newsletter" data-uid="smvnkxd7iuxr7">
      <footer class="st-wrap fn">
        <div class="fn-top">
          <div class="fn-news" data-anim="item">
            <a class="st-brand" href="#">
              <span class="st-brand-mark"><span class="st-brand-icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z" /><path d="M20 3v4" /><path d="M22 5h-4" /><path d="M4 17v2" /><path d="M5 18H3" /></svg></span><span>Lumina</span></span>
            </a>
            <h2 class="fn-title">Launch updates</h2>
            <p class="fn-text">Product news, guides and one good idea every Friday. No spam, ever.</p>
            <form class="fn-form" method="post" action="https://webdevpuneet.com/subscribe">
              <input class="fn-input" type="email" required autocomplete="email" name="email" placeholder="Your email address" aria-label="Your email address">
              <button class="st-btn" type="submit"><span>Subscribe</span></button>
            </form>
          </div>
          <div class="fn-cols">
            <nav class="fn-col" data-anim="item" aria-label="Product">
              <h2 class="fn-col-title">Product</h2>
              <ul class="fn-links"><li><a href="/features/">Features</a></li><li><a href="/pricing/">Pricing</a></li><li><a href="/integrations/">Integrations</a></li><li><a href="/changelog/">Changelog</a></li></ul>
            </nav>
            <nav class="fn-col" data-anim="item" aria-label="Company">
              <h2 class="fn-col-title">Company</h2>
              <ul class="fn-links"><li><a href="/about/">About</a></li><li><a href="/careers/">Careers</a></li><li><a href="/customers/">Customers</a></li><li><a href="/contact/">Contact</a></li></ul>
            </nav>
            <nav class="fn-col" data-anim="item" aria-label="Resources">
              <h2 class="fn-col-title">Resources</h2>
              <ul class="fn-links"><li><a href="/blog/">Blog</a></li><li><a href="/guides/">Guides</a></li><li><a href="/help/">Help centre</a></li><li><a href="https://status.webdevpuneet.com">Status</a></li></ul>
            </nav>
          </div>
        </div>
        <div class="fn-bottom">
          <div><ul class="st-socials">
              <li><a class="st-social" href="https://x.com/" aria-label="X (Twitter)"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M22 4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2.1 4.4-.6 6-2C3 15.5.5 9.6 3 5c2.2 2.6 5.6 4.1 9 4-.9-4.2 4-6.6 7-3.8 1.1 0 3-1.2 3-1.2z" /></svg></span></a></li>
              <li><a class="st-social" href="https://www.linkedin.com/" aria-label="LinkedIn"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z" /><rect width="4" height="12" x="2" y="9" /><circle cx="4" cy="4" r="2" /></svg></span></a></li>
              <li><a class="st-social" href="https://github.com/" aria-label="GitHub"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4" /><path d="M9 18c-4.51 2-5-2-7-2" /></svg></span></a></li>
              <li><a class="st-social" href="https://www.youtube.com/" aria-label="YouTube"><span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M2.5 17a24.12 24.12 0 0 1 0-10 2 2 0 0 1 1.4-1.4 49.56 49.56 0 0 1 16.2 0A2 2 0 0 1 21.5 7a24.12 24.12 0 0 1 0 10 2 2 0 0 1-1.4 1.4 49.55 49.55 0 0 1-16.2 0A2 2 0 0 1 2.5 17" /><path d="m10 15 5-3-5-3z" /></svg></span></a></li>
            </ul></div>
          <p class="fn-copy">© 2026 Lumina Labs</p>
          <ul class="fn-legal"><li><a href="/privacy/">Privacy</a></li><li><a href="/terms/">Terms</a></li></ul>
        </div>
      </footer>
    </section>
Design your website