All templates

Lead intake and routing form

Multi-step intake form with scoring, Slack notifications, and a reviewer queue. Plug into your existing CRM.

TanStack server fnsSupabaseSlack

What is in the box

  • Multi-step form with conditional fields
  • Lead scoring rules you edit in a config file
  • Slack notifications routed by territory or product
  • Reviewer queue with claim, dismiss, and assign actions
  • Webhook out to HubSpot, Salesforce, or your CRM of choice
  • Spam protection without Captcha

Most lead forms are a single page of fifteen fields that nobody fills out and nobody scores. The leads that do come through land in a spreadsheet and get fought over in Slack.

This template fixes both ends. The form is multi-step and conditional so qualified leads complete in under two minutes. The backend scores, routes, and queues so the right rep claims the right lead inside an hour.

Why multi-step beats one-page

Conversion data is consistent: multi-step forms with progress beat single-page forms for high-intent submissions. The visitor sees three short steps and finishes. The visitor sees fifteen fields and bounces.

The template ships with three steps by default: who, what, and how to reach them. You can add steps, but the default is the right starting point.

Scoring that earns its weight

Lead scoring is overrated in most stacks because it tries to do too much. The template scores on three signals: company size, intent (which page they came from), and existing customer status. Three signals are enough to route correctly. More signals create false precision.

The rules live in a single config file. Marketing edits it directly. No code deploys for a scoring tweak.

Routing without a CRM rewrite

The router fires Slack and writes to the lead inbox. From there, you can leave it (the queue is the workflow) or wire the webhook to HubSpot, Salesforce, or whatever lives downstream. The template ships sample payloads for both major CRMs.

The reason: most teams already have a CRM. The lead intake stack is what feeds it, not what replaces it.

The reviewer queue

The queue is the part that prevents lost leads. Every submission lands with a status and an owner. Reps claim from the queue. Unclaimed leads escalate after an SLA. The queue lives at /backstage/leads in the template.

This is the single most underrated piece of any intake stack. Without it, Slack becomes the source of truth, which means the lead lives in whoever last pinged about it.

How to get the template

We share the template with teams that book a discovery call. We will look at your current intake stack and tell you which pieces this template replaces and which it complements.

Book a discovery call.

Included with the template

  • TanStack Start route for the public form
  • Server function for validation, scoring, and routing
  • Supabase table for leads with status workflow
  • Reviewer dashboard at /backstage/leads
  • Slack webhook helper
  • Sample webhook payloads for HubSpot and Salesforce

Frequently asked questions

Does this replace HubSpot or Salesforce?+

No. It feeds them. The intake stack handles the messy public-facing capture and the first-hour routing. The CRM is the system of record from there.

Spam protection?+

The template uses a combination of honeypot, time-on-page, and a server-side rate limit. Captcha is intentionally not the default because it kills high-intent conversions. Captcha can be flipped on if your form starts attracting bot traffic.

Can the form embed on a marketing site?+

Yes. The form ships with an embed helper so you can drop it into Webflow, Framer, WordPress, or any other site as an iframe. Submissions still route through the same backend.

More templates

Got an idea? We can ship it next week.

30-minute discovery call. We tell you what's possible, what it costs, and when it ships.