Intake Forms

Intake forms 101

Intake forms are the front door of BopSuite. A prospect lands on a public URL, fills in a few fields, and a matter (with a client + their responses) appears in your firm. Available on Practice plan and above.

When to use this

Intake forms are great when:

  • You have a website or LinkedIn profile and want a "Contact us" / "Free consultation" button
  • You're running ads and need a landing page for inquiries
  • A referral source wants to send you prospects with a structured form (better than email)
  • Your assistant currently re-types every email inquiry into your CRM — let the prospect type it once

If you only have 1-2 prospects a week, you can skip this and rely on email + manually creating matters. If you have 10+ a week, the form is a 10× time saver.

Building a form

Sidebar → Intake forms+ New intake form.

You're auto-redirected to the editor with a default form pre-filled (name, email, phone, "What can we help with?"). Customize:

Settings

  • Internal name — how the form shows up in your /intake-forms list. Example: "2026 Tax Free Consultation"
  • Public title — what the prospect sees as the heading. Example: "Get in touch — free 15-minute consultation"
  • Description — optional copy under the title. Useful for setting expectations ("We respond within 1 business day. By submitting this form, you agree to our Privacy Policy.")
  • Default vertical — Law / CPA / Other. Drives terminology on the resulting matter.
  • Default practice area — copied into the matter. Example: "Tax — 1040" or "Family Law — Divorce."
  • Default responsible — which firm member owns matters created from this form. Auto-assigned at conversion time.
  • Thank-you redirect — optional URL the prospect lands on after submitting. If empty, they see the built-in "Thanks!" panel.

Fields

Add as many as you want. Each field has:

  • Label — what the prospect sees ("Tell us about your situation")
  • Type — text / long text / email / phone / date / yes-no / multi-choice / file upload (file upload is "coming soon" placeholder for now)
  • Required — toggle
  • Description / helper text — optional one-liner under the field
  • Multi-choice options — comma-separated for dropdown fields

The default form is enough for most basic intakes. Add fields for things you actually need to triage — typical adds: "Have you worked with a lawyer/CPA before?", "What's your timeline?", "Approximate budget range," "How did you hear about us?"

Don't ask for sensitive info (SSN, full DOB, account numbers) on a public form. Those belong in a doc request after engagement.

Going live

Toggle the form to Live in the upper right. The status pill flips green.

Copy the public link from the editor (top of page) — looks like https://bopsuite.com/intake/<form-id>.

Sharing the link

Drop the URL anywhere prospects find you:

  • Your website's "Contact us" or "Schedule consultation" button
  • LinkedIn "About" section
  • Email signature
  • Yelp / Google Business profile
  • Networking event business card QR code

The page is mobile-friendly, branded with your firm's logo + accent color, and SSL-protected at bopsuite.com.

What happens when a prospect submits

Within 5 seconds:

  1. Submission lands in your /intake-forms list with the prospect's responses
  2. Auto-conversion: if the form has a name field captured, BopSuite:
    • Creates a clients row (or reuses one if email matches an existing client)
    • Creates a matters row with the default vertical + practice area + responsible user
    • Stamps the matter description with the prospect's intake responses (so you see them on the matter detail page)
  3. Ops-notify email — a "📩 New intake" email lands in your inbox with the prospect's name + email + phone, plus a link to the auto-created matter
  4. Status on the submission flips to converted

You open the matter, read the response, and proceed exactly as if you'd typed it yourself.

When auto-conversion is skipped

If the prospect didn't fill in the name field (rare — usually because you removed the required-name field for some reason), conversion is skipped and the submission lands as new. From the form's submission inbox → click Convert → matter is created manually.

Spam, bots, and re-signups

Three guards:

  1. Email + IP capture — every submission records IP and user agent. Mark obvious spam as Spam from the inbox; future submissions from same IP can be auto-flagged.
  2. Rate limiting — submissions per IP are throttled via Upstash Redis (configurable in src/lib/ratelimit.ts).
  3. Email-based dedup on conversion — a repeat submission from the same email reuses the existing client. So a prospect who submitted twice doesn't create two clients — just two matters tied to one client.

Multiple intake forms

Run as many simultaneously as you need:

  • "Free tax consultation" → CPA, Tax — 1040, responsible = senior partner
  • "Estate planning intake" → Law, Estate Planning, responsible = junior associate
  • "Real estate closing inquiry" → Law, Real Estate, responsible = paralegal team

Each gets its own URL and tracks submissions separately.

Pausing a form

Toggle to "Paused" in the editor. The public URL 404s; old submissions stay in your inbox.

Useful for seasonal forms (tax season, election cycle litigation campaign, etc.) — don't delete the form, just pause it.

What's next

Was this helpful?

Email us at hello@bopsuite.com with feedback or suggestions.