Guides / SaaS

Track Waitlist Signups Before Launch

3 min read·SaaS

Why Real-Time Waitlist Tracking

A waitlist is your earliest demand signal. Logging signups lets you see which traffic sources drive the most interest, when you hit momentum milestones, and whether a launch post is converting.

Step 1: Log Every Waitlist Signup

ts
// app/api/waitlist/route.ts
export async function POST(req: Request) {
  const { email, source } = await req.json() as { email: string; source?: string };

  await db.waitlist.create({ data: { email, source: source ?? "direct" } });
  const totalCount = await db.waitlist.count();

  await logit.now("waitlist", {
    event: "Waitlist signup",
    description: `${email} joined — #${totalCount} on the list`,
    icon: "⏳",
    notify: false,
    tags: { source: source ?? "direct" },
    metadata: { email, totalCount, source: source ?? "direct" },
  });

  return Response.json({ ok: true, position: totalCount });
}

Step 2: Milestone Smart Actions

Rule nameThresholdWindowCooldown
100 waitlist signups10030 days30 days
500 waitlist signups50030 days30 days
1,000 waitlist signups100030 days30 days

Step 3: Surge Detection

FieldValue
NameWaitlist surge
Channelwaitlist
Event nameWaitlist signup
Threshold50
Window1 hour
Cooldown2 hours
ActionPush notification
Push title🚀 Waitlist surge!
Push body50+ signups in 1 hour

Tips

  • Log source in tags (utm_source, referrer, "twitter", "hn", "ph") to see which channels drive signups.
  • Include the running total in description so each event in the dashboard shows the list size at that moment.
  • Use a 30-day window for milestone rules so they fire on cumulative totals, not just bursts.

Try LogIt free

7-day trial. No credit card required.

Start free