How-To Tutorials

Step-by-step tutorials for common tasks

Test Your Waitlist Before Launch: A Fake Signup Checklist

Put one fake signup through your waitlist before real traffic arrives. Four checks catch a silent zero: origin, the saved record, the duplicate rule, and the dashboard.

Newsletter Waitlist: Collect Subscribers Before Issue One

Build a newsletter waitlist before your first issue ships, with referral links per subscriber and a clean CSV hand-off to Beehiiv, Loops, or Mailchimp.

Unsubscribe Waitlist Emails: Handle Opt-Outs Before Launch

Someone replies 'remove me' to your launch email. Where the opt-out has to live, why your waitlist export can't hold it, and a script to keep it honest.

Survey Waitlist Signups Without Annoying Them

Ask your waitlist one question at a time, tie each answer to the right contact, and keep replies high. Working form, SDK code, and a send schedule.

Form Fields to Contact Record: What Maps and What Doesn't

Only email and name from a form submission reach the contact record. Here is where every other answer lives and how to filter on it.

Chrome Extension Waitlist: Collect Signups Before You Ship

Add a waitlist with referral codes for a Chrome extension. Covers the MV3 script restriction and the origin check that rejects extension requests.

Wix Waitlist: Add Signups With Custom Code

Add a waitlist with referral tracking to Wix using Custom Code. Covers the Premium plan requirement and the page-scope setting that breaks tracking.

Fake Email Signups: Catch Typos and Throwaways at the Form

Catch typo domains like gmial.com and throwaway addresses before they hit your waitlist, with a client-side check and one OperatorStack call.

Which JavaScript Errors to Ignore (and the 2 to Fix First)

Most errors on a landing page come from extensions, ad blockers, and third-party scripts. Learn the patterns to ignore and the two error types that cost you signups.

Replit Waitlist: Add Signups That Survive Your Custom Domain

Add a waitlist to a Replit app with one script tag, then fix the 403 Origin not allowed error when you move from the replit.app URL to a custom domain.

Live Chat Office Hours: Answer Visitors Without Being Always On

Set live chat office hours as a solo founder: let the AI cover every hour, take over only when you are at your desk, and know what a visitor sees if you go quiet.

Form Abandonment: Find the Field Where Signups Quit

Find your form abandonment field with one trackEvent call per input and a custom funnel. See which question loses the most visitors before submit.

Ghost Waitlist: Add Signups Without a Plugin

Add a waitlist to any Ghost site with one script tag in Code injection, no plugin. Covers Portal coexistence and the ghost_foot gotcha.

Track Podcast and YouTube Signups Without a Clickable Link

A listener hears your URL in a car and types it three days later. Here is how to tag podcast and YouTube signups when there is no link to put UTM params on.

Segment Contacts by Source Without Misreading Your Numbers

Filter and export OperatorStack contacts by source. The source field records the highest-intent action a person took, not the channel that sent them.

Debug a Slow Landing Page With Real Visitor Data

A site-wide performance score hides the one page that is slow. Here is the triage order that finds it, and the three ways real-user data misleads you.

Review AI Chat Transcripts: Find What Your Bot Got Wrong

The unanswered questions counter flags five hardcoded refusal phrases, not wrong answers. Here is how to read AI chat transcripts and catch confident mistakes.

Sync Contacts to Your Email Tool on a Nightly Schedule

OperatorStack has no ESP integration and no outbound webhook. Here is the watermark loop that pushes only new contacts into Loops or Mailchimp each night.

How Long to Run an A/B Test Before You Call a Winner

Work out the sample size and the stopping rule before you start your test, so a two-week lead that is really noise does not become a shipped decision.

Clean Your Email List Before Launch: 6 Checks to Run

Before your launch email goes out, run six checks on your contact export: case-variant duplicates, plus-address collisions, role addresses, and source drift.

AI Landing Page Copy: Let Your Own Data Pick the Rewrite

OperatorStack's AI Advisor will not write your hero line. Here is how its Analytics, Chat, and Messages cards pick which page to rewrite and what words to use.

AI Chat to Human Handoff: What Changes When You Take Over

Taking over an AI chat stops the model mid-conversation, files your replies as its own, and starts a timer. Here is what actually changes at the seam.

Squarespace Waitlist: Add Signups With Code Injection

Add a waitlist with referral tracking to Squarespace using Code Injection. Requires a Business plan, and the widget will not render in the editor.

Send Waitlist Signups to a Webhook in Real Time

Fire a webhook the moment someone joins your waitlist. Covers the joinWaitlist() chain, why the drop-in widget cannot do it, and hiding the URL behind a relay.

Pre-Launch Priorities: What to Fix First This Week

Nine AI Advisor cards, six free hours, one week to launch. Here is the ordering rule that turns a dashboard full of advice into a list you can actually work.

AI Chat Guardrails: Limit What Your Assistant Answers

A custom system prompt replaces OperatorStack's default one, hard rules included. Scope your AI chat assistant without losing the guardrails.

How to Trigger a Waitlist Modal From Any Button

Open a waitlist modal from any button on your page. Covers the native dialog pattern, the one-time widget scan that breaks naive setups, and the SDK route.

Landing Page Drop Off: Find the Page Losing Your Signups

Find your landing page drop off by sorting the Pages report on conversion rate, not views. The math and the two quirks that change what it means.

Pricing Page A/B Test: How to Test Price Before Launch

Run a pricing page A/B test with no checkout behind it. Swap price points, track plan clicks with trackEvent, and read the winner in Custom Events.

Stop Form Spam Without reCAPTCHA or a Server

Stop form spam with a honeypot field and a submit-timing gate. No reCAPTCHA, no third-party script, no backend. Works on static and no-code sites.

Nuxt Waitlist: How to Add Signups to a Nuxt App

Add an OperatorStack waitlist to Nuxt. Covers the nuxt.config.ts script tag, the import.meta.client guard, and the hydration timing gotcha.

Migrate Waitlist to a New Tool Without Losing Referrals

Migrate a waitlist in two passes: import emails first, then rebuild who referred whom. Keeps referral credit and old share links working.

Which Pages Drive Signups: Attribution by Path and Referrer

Find which pages drive signups with one trackEvent() call at conversion time, then read the per-path and per-referrer breakdown in your Events tab.

Track UTM Parameters Without Google Analytics

Tag your campaign links, capture the UTM params with OperatorStack.trackEvent(), and read a per-campaign breakdown in the Events tab. No GA4 needed.

Monitor Core Web Vitals Without Running PageSpeed by Hand

PageSpeed gives you one lab score from one bot. OperatorStack tracks LCP, INP, CLS, FCP, and TTFB from your real visitors, automatically.

Framer Waitlist: Add Email Signup With Custom Code

Add an OperatorStack waitlist to Framer with a Custom Code script and a Code Component. No Zapier, no CMS hacks, works on staging and custom domains.

SvelteKit Waitlist: Add Signups With One Script Tag

Add a waitlist to a SvelteKit app with one script tag in app.html, a runes form that clears the SSR window error, and route tracking that works.

v0 Waitlist: Add Email Capture to a v0-Generated App

Add a waitlist, analytics, and referrals to a v0 Next.js app with one script tag. Covers the App Router pattern and the preview-vs-deployed gotcha.

How to Add a Waitlist to a Vue App

Add a waitlist to a Vite or Vue CLI app. Covers the index.html script tag, a Composition API form with ref(), and Vue Router page tracking.

Webflow Waitlist: Add Signups With Custom Code, No Zapier

Add an OperatorStack waitlist to Webflow with Custom Code and a native Div block. No Zapier, no CMS hacks, works on staging and custom domains.

WordPress Waitlist: Add a Signup Form Without a Plugin

Add a waitlist with referral tracking to any WordPress site using the functions.php method that survives theme updates and never gets stripped.

Live Chat Without Intercom: Take Over Your AI Chat Conversations

Add live chat without Intercom. OperatorStack's Live Chat is a toggle on your existing AI chat: take over any conversation, then hand it back.

React Waitlist: Add Signups to a Vite or Create React App

Add a waitlist to a Vite or Create React App project with one script tag, a useState form component, and automatic React Router page tracking.

Shopify Waitlist: Collect Emails Before Your Store Launches

Add a pre-launch waitlist with referral tracking to a Shopify store, including the password-page quirk that breaks most script-tag integrations.

AI Startup Waitlist: Capture Signups and Qualify Use Cases Before Launch

An AI startup waitlist that only collects emails tells you nothing. Capture each signup's use case alongside the email, with no backend required.

JavaScript Error Tracking Without Sentry: Set Up in Minutes

Catch uncaught exceptions and promise rejections with OperatorStack's built-in error tracking. No separate script tag, no per-seat Sentry pricing.

Mobile App Waitlist: Capture Pre-Launch Signups by Platform

Build a mobile app waitlist that splits signups by iOS and Android before you have an app to submit. One script tag, no App Store account required.

Free Trial Waitlist: Gate and Qualify Your Beta Users

A free trial waitlist filters out tire-kickers and lets you onboard beta users in batches. Set one up with one script tag and no backend.

AI Chat Lead Qualification: Screen Visitors Before a Call

Configure OperatorStack's AI chat to qualify visitors before they book a call. System prompt rules route high-intent leads and skip the browsers.

Landing Page Conversion Rate Without Google Analytics

Track your landing page conversion rate without Google Analytics, cookie banners, or Goals setup. One script tag counts visitors and signups.

Product Hunt Waitlist: How to Warm Up Your Launch in 30 Days

Build a warm audience before your Product Hunt launch. Collect signups, grow them with referrals, and email the list the morning you go live.

AI Chat Lead Capture: Turn Visitor Questions into Contacts

AI chat lead capture with two built-in tools: save_contact stores an email as a unified contact, waitlist_signup signs the visitor up mid-conversation.

How to Train an AI Chatbot on Your Website Content

Train an AI chatbot on your website in minutes. OperatorStack crawls up to 20 pages, builds a knowledge base, and auto-generates an FAQ. No manual uploads.

Carrd Waitlist: Add Email Signup With One HTML Embed

Add a waitlist with referral tracking to a Carrd site in 5 minutes. The script and widget div must share one HTML element, because Carrd iframes each block.

Custom Events for Product Analytics: Track What Matters Before Launch

Track custom events with OperatorStack.trackEvent(). Page views tell you visitors came; custom events tell you what they actually did before launch.

Waitlist A/B Testing Without Extra Tools

Run waitlist A/B tests using UTM params and custom event tracking already in your OperatorStack embed. No third-party testing tools required.

Export Waitlist Data: Download Your Signups as a CSV

Export your OperatorStack waitlist to CSV in two clicks from the dashboard. Get email, name, referral code, referral count, and signup date, with import notes for Mailchimp, Loops, and Beehiiv.

How to Use Forms for Customer Research Before Launch

Run structured customer research with a landing page form before you write a line of product code. Collect responses, iterate on questions, and build a contact list at the same time.

Personalize Your Chat Widget: AI Chat Segments by Visitor

Personalize your chat widget per visitor with the OperatorStack SDK: page-based suppression, signed-up user detection, and traffic source targeting.

OperatorStack Astro Integration: Waitlist, Analytics, and Forms on Any Astro Site

Add OperatorStack to an Astro site using the correct is:inline script pattern. Covers widget placement, custom SDK forms in islands, and PUBLIC_ environment variables.

Forms Without a Backend: Accept Submissions on Any Static or No-Code Site

Accept form submissions without a backend. POST to OperatorStack's public endpoint from Framer, Lovable, Bolt.new, or plain HTML, no server code.

Track Which Blog Posts Drive the Most Signups

Your Analytics tab shows page views per blog post. Here is how to go further -- tag CTAs with custom events so you know which posts actually convert visitors into waitlist signups.

Next.js Waitlist: App Router Setup With One Script Tag

Add a waitlist to a Next.js app with next/script and the SDK. Covers App Router layout setup, client component forms, SSR guards, and Pages Router.

Track Referral Sources on Your Landing Page

Track referral sources on any landing page with one script tag: automatic UTM and ?ref= detection, per-source signup counts, and SDK event tagging.

Bolt.new Analytics: Add Cookie-Free Tracking to Your Site in 2 Minutes

Bolt.new ships with zero analytics by default. Add privacy-friendly, cookie-free tracking to any Bolt.new project with one script tag -- no consent banner, no Google Analytics setup.

Mailchimp Alternative for Waitlists: Collect Emails Without Mailchimp

Skip Mailchimp for your pre-launch list. Collect emails on any landing page with one script tag, plus referral tracking and a unified contact list. Free to start.

Lovable Waitlist: Add Email Signup to Your Lovable App in 5 Minutes

Add a waitlist with referral tracking to any Lovable-built landing page in 5 minutes. One script tag, zero backend code, zero extra npm installs.

Static HTML Landing Page: Add Analytics, Forms, and Chat with One Script Tag

Turn a plain static HTML landing page into a full pre-launch stack: analytics, lead capture, AI chat, and referral tracking, wired up with a single script tag and zero backend code.

How to Add an AI Chat Widget to Your Landing Page

Set up an AI chat widget that answers visitor questions using your site content and captures leads automatically. One script tag, no chatbot builder.

Cookieless Analytics: Add Page Tracking Without a Cookie Banner

Add privacy-friendly, cookieless analytics to any landing page with one script tag. No cookie banner, no consent popup, no GDPR headache. Setup in under 5 minutes.

Custom Forms Without a Form Builder: Schema-on-Write for Any Website

Skip the drag-and-drop form builder. POST JSON to OperatorStack's form endpoint and field types are inferred automatically. No backend, no field configuration, works with plain HTML or the SDK.

How to Set Up a SaaS Waitlist in Under 5 Minutes

Set up a waitlist for your SaaS in under 5 minutes with no backend code. Step-by-step guide to OperatorStack's waitlist widget with built-in referral tracking, analytics, and a unified contact list.

Waitlist Share Links: Add Social Sharing to Your Thank-You Page

Add ready-to-use waitlist share links for Twitter/X, LinkedIn, WhatsApp, email, and copy-link with OperatorStack's getShareLinks SDK method.