Industry Guide

Legal Client Intake Form: Qualify Leads Before Consultation

February 2026 · 14 min read

Law firms get a lot of inquiries. Most aren't cases you can take. Some are outside your practice area. Some have no case at all. Some can't afford you. You find this out after a 30-minute consultation that generated zero revenue.

A good intake form solves this before you pick up the phone. Practice area, case basics, timeline, urgency - you know what you're dealing with before the conversation starts. Bad-fit cases filter themselves out because they don't want to answer real questions. The ones who complete the form are ready to hire.

We'll build a form that handles multiple practice areas: personal injury, family law, criminal defense, and more. Each path asks different questions, but they all end with qualified leads and enough context for a productive first call.

Start with Practice Area

The first question is obvious: what kind of legal help do you need? This determines everything that follows.

const intakeSection = form.addSubform('intake', {
    title: 'How Can We Help?'
});

intakeSection.addRow(row => {
    row.addDropdown('practiceArea', {
        label: 'What type of legal matter do you need help with?',
        options: [
            { id: 'personal-injury', name: 'Personal Injury' },
            { id: 'family', name: 'Family Law' },
            { id: 'criminal', name: 'Criminal Defense' },
            { id: 'business', name: 'Business Law' },
            { id: 'estate', name: 'Estate Planning' },
            { id: 'real-estate', name: 'Real Estate' },
            { id: 'immigration', name: 'Immigration' },
            { id: 'employment', name: 'Employment Law' },
            { id: 'bankruptcy', name: 'Bankruptcy' },
            { id: 'other', name: 'Other' }
        ],
        isRequired: true
    });
});

intakeSection.addRow(row => {
    row.addTextbox('otherMatter', {
        label: 'Please describe your legal matter',
        isVisible: () => practiceArea.value() === 'other',
        isRequired: () => practiceArea.value() === 'other'
    });
});

Don't list every possible sub-specialty. "Personal Injury" is enough - you'll get specifics in the next section. Overwhelming people with 30 options at the first step kills completion rates.

Pro tip

Include "Other" with a follow-up text field. Some clients won't know how to categorize their issue. "My landlord is harassing me" could be landlord-tenant, civil rights, or something else. Let them explain.

Personal Injury Cases

PI intake is about establishing the basics: what happened, when, where, and is there a viable claim? You need to know enough to spot good cases without practicing law through a web form.

const injurySection = form.addSubform('injury', {
    title: 'Injury Details',
    isVisible: () => practiceArea.value() === 'personal-injury'
});

injurySection.addRow(row => {
    row.addDropdown('injuryType', {
        label: 'Type of Incident',
        options: [
            { id: 'auto', name: 'Car Accident' },
            { id: 'truck', name: 'Truck Accident' },
            { id: 'motorcycle', name: 'Motorcycle Accident' },
            { id: 'slip-fall', name: 'Slip and Fall' },
            { id: 'medical', name: 'Medical Malpractice' },
            { id: 'workplace', name: 'Workplace Injury' },
            { id: 'product', name: 'Product Liability' },
            { id: 'dog-bite', name: 'Dog Bite' },
            { id: 'other', name: 'Other' }
        ],
        isRequired: () => practiceArea.value() === 'personal-injury'
    });
});

injurySection.addRow(row => {
    row.addDatepicker('incidentDate', {
        label: 'Date of Incident',
        maxDate: () => new Date().toISOString()
    });
    row.addTextbox('incidentLocation', {
        label: 'Location (City, State)',
        placeholder: 'e.g., Los Angeles, CA'
    });
});

injurySection.addRow(row => {
    row.addRadioButton('atFault', {
        label: 'Were you at fault for the incident?',
        options: [
            { id: 'no', name: 'No' },
            { id: 'partial', name: 'Partially' },
            { id: 'unsure', name: 'Not sure' }
        ],
        orientation: 'horizontal'
    });
});

The "at fault" question is sensitive but necessary. Pure comparative negligence states handle partial fault differently than contributory negligence states. "Not sure" is a valid answer - it means you'll need to investigate.

Injury Details

injurySection.addRow(row => {
    row.addChips('injuries', {
        label: 'Type of Injuries',
        options: [
            { id: 'broken-bones', name: 'Broken Bones' },
            { id: 'soft-tissue', name: 'Soft Tissue' },
            { id: 'head', name: 'Head/Brain Injury' },
            { id: 'spinal', name: 'Spinal Injury' },
            { id: 'internal', name: 'Internal Injuries' },
            { id: 'burns', name: 'Burns' },
            { id: 'emotional', name: 'Emotional Distress' }
        ]
    });
});

injurySection.addRow(row => {
    row.addRadioButton('medicalTreatment', {
        label: 'Have you received medical treatment?',
        options: [
            { id: 'yes-ongoing', name: 'Yes, still treating' },
            { id: 'yes-complete', name: 'Yes, treatment complete' },
            { id: 'no', name: 'No treatment yet' }
        ],
        orientation: 'vertical'
    });
});

injurySection.addRow(row => {
    row.addRadioButton('hasAttorney', {
        label: 'Do you currently have an attorney for this matter?',
        options: [
            { id: 'no', name: 'No' },
            { id: 'yes-unhappy', name: 'Yes, but looking to switch' },
            { id: 'yes-second', name: 'Yes, seeking second opinion' }
        ],
        orientation: 'vertical'
    });
});

Medical treatment status tells you case value and timing. Someone still in treatment is ongoing. Someone who finished treatment and healed completely has a different case than someone with permanent disability.

The "already have an attorney" question catches two scenarios: clients who are unhappy with current counsel (potential acquisition) and clients seeking a second opinion (might still sign with you).

Family Law Cases

Family law intake focuses on case type and complexity factors. Divorce with kids and assets is very different from a simple dissolution.

const familySection = form.addSubform('family', {
    title: 'Family Law Details',
    isVisible: () => practiceArea.value() === 'family'
});

familySection.addRow(row => {
    row.addDropdown('familyMatter', {
        label: 'Type of Matter',
        options: [
            { id: 'divorce', name: 'Divorce' },
            { id: 'custody', name: 'Child Custody' },
            { id: 'support', name: 'Child/Spousal Support' },
            { id: 'adoption', name: 'Adoption' },
            { id: 'prenup', name: 'Prenuptial Agreement' },
            { id: 'domestic-violence', name: 'Domestic Violence/Protective Order' },
            { id: 'paternity', name: 'Paternity' },
            { id: 'modification', name: 'Modification of Existing Order' }
        ],
        isRequired: () => practiceArea.value() === 'family'
    });
});

familySection.addRow(row => {
    row.addRadioButton('marriageLength', {
        label: 'Length of Marriage',
        options: [
            { id: 'under-5', name: 'Under 5 years' },
            { id: '5-10', name: '5-10 years' },
            { id: '10-20', name: '10-20 years' },
            { id: '20+', name: '20+ years' },
            { id: 'na', name: 'Not applicable' }
        ],
        orientation: 'horizontal',
        isVisible: () => ['divorce', 'custody', 'support'].includes(familyMatter.value() ?? '')
    });
});

familySection.addRow(row => {
    row.addRadioButton('children', {
        label: 'Are minor children involved?',
        options: [
            { id: 'yes', name: 'Yes' },
            { id: 'no', name: 'No' }
        ],
        orientation: 'horizontal',
        isVisible: () => ['divorce', 'custody', 'support'].includes(familyMatter.value() ?? '')
    });
    row.addInteger('childCount', {
        label: 'How many?',
        min: 1,
        max: 10,
        isVisible: () => children.value() === 'yes'
    });
});

Marriage length affects everything from property division to spousal support calculations. Under 5 years is usually simpler. 20+ years likely involves retirement accounts, long-term support, and more complex property issues.

Children change the entire case. Custody, support, parenting plans - a childless divorce can be paperwork. A custody dispute is litigation.

Criminal Defense Cases

Criminal intake is often urgent. Someone arrested last night needs help today, not next week. Your form should capture this urgency and route accordingly.

const criminalSection = form.addSubform('criminal', {
    title: 'Case Information',
    isVisible: () => practiceArea.value() === 'criminal'
});

criminalSection.addRow(row => {
    row.addDropdown('chargeType', {
        label: 'Type of Charge',
        options: [
            { id: 'dui', name: 'DUI/DWI' },
            { id: 'drug', name: 'Drug Offense' },
            { id: 'theft', name: 'Theft/Burglary' },
            { id: 'assault', name: 'Assault/Battery' },
            { id: 'domestic', name: 'Domestic Violence' },
            { id: 'white-collar', name: 'White Collar Crime' },
            { id: 'traffic', name: 'Traffic Offense' },
            { id: 'federal', name: 'Federal Charge' },
            { id: 'other', name: 'Other' }
        ],
        isRequired: () => practiceArea.value() === 'criminal'
    });
});

criminalSection.addRow(row => {
    row.addRadioButton('caseStatus', {
        label: 'Current Status',
        options: [
            { id: 'arrested', name: 'Recently arrested' },
            { id: 'charged', name: 'Charges filed' },
            { id: 'court', name: 'Court date scheduled' },
            { id: 'investigation', name: 'Under investigation' },
            { id: 'warrant', name: 'Warrant issued' }
        ],
        orientation: 'vertical'
    });
});

criminalSection.addRow(row => {
    row.addDatepicker('courtDate', {
        label: 'Next Court Date (if known)',
        minDate: () => new Date().toISOString(),
        isVisible: () => caseStatus.value() === 'court'
    });
});

criminalSection.addRow(row => {
    row.addRadioButton('priorRecord', {
        label: 'Any prior criminal history?',
        options: [
            { id: 'none', name: 'None' },
            { id: 'minor', name: 'Minor offenses only' },
            { id: 'felony', name: 'Prior felony' }
        ],
        orientation: 'horizontal'
    });
});

Case status tells you everything about timing. "Recently arrested" with a bail hearing tomorrow needs immediate attention. "Under investigation" can wait for a scheduled consultation.

Prior record affects strategy, potential sentences, and case complexity. First-time offenders often get better outcomes. Prior felonies change the calculus entirely.

Urgency Assessment

Different practice areas have different urgency drivers. Criminal cases have court dates. PI cases have statutes of limitations. Family law might have emergency custody issues.

const urgencySection = form.addSubform('urgency', {
    title: 'Timeline & Urgency'
});

// Dynamic urgency based on practice area
const getUrgencyOptions = () => {
    const area = practiceArea.value();
    if (area === 'criminal') {
        return [
            { id: 'emergency', name: 'Emergency - arrested/court today' },
            { id: 'urgent', name: 'Urgent - court date within 1 week' },
            { id: 'soon', name: 'Court date within 30 days' },
            { id: 'normal', name: 'No immediate deadline' }
        ];
    }
    if (area === 'personal-injury') {
        return [
            { id: 'urgent', name: 'Statute of limitations approaching' },
            { id: 'soon', name: 'Need representation soon' },
            { id: 'normal', name: 'No immediate deadline' }
        ];
    }
    return [
        { id: 'emergency', name: 'Emergency/immediate need' },
        { id: 'urgent', name: 'Within 1 week' },
        { id: 'soon', name: 'Within 1 month' },
        { id: 'normal', name: 'No rush' }
    ];
};

urgencySection.addRow(row => {
    row.addRadioButton('urgency', {
        label: 'How urgent is your matter?',
        options: getUrgencyOptions,
        orientation: 'vertical'
    });
});

Dynamic urgency options based on practice area make the question more relevant. "Statute of limitations approaching" means something to a PI client. "Court date within 1 week" matters for criminal.

See more intake form examples in our gallery.

Conflict Checking

Before you can talk to a potential client, you need to check for conflicts. Get the adverse party name upfront so you can run the check before calling.

// Hidden field for conflict check
const conflictSection = form.addSubform('conflict', {
    title: 'Parties Involved',
    isVisible: () => ['personal-injury', 'family', 'business'].includes(practiceArea.value() ?? '')
});

conflictSection.addRow(row => {
    row.addTextbox('adverseParty', {
        label: 'Name of other party (if known)',
        placeholder: 'e.g., defendant, spouse, opposing party',
        helpText: 'This helps us check for conflicts of interest before consultation.'
    });
});

conflictSection.addRow(row => {
    row.addTextbox('insuranceCompany', {
        label: 'Insurance company involved (if any)',
        isVisible: () => practiceArea.value() === 'personal-injury'
    });
});

Insurance company info matters for PI cases - you might already be representing someone else against the same insurer in a way that creates conflict.

Contact Information

By this point, anyone still filling out the form has a real legal issue. They've told you what kind of case it is, the key details, and how urgent it is. Now get their contact info.

const contactSection = form.addSubform('contact', {
    title: 'Your Contact Information'
});

contactSection.addRow(row => {
    row.addTextbox('firstName', {
        label: 'First Name',
        isRequired: true
    });
    row.addTextbox('lastName', {
        label: 'Last Name',
        isRequired: true
    });
});

contactSection.addRow(row => {
    row.addPhone('phone', {
        label: 'Phone Number',
        isRequired: true
    });
    row.addEmail('email', {
        label: 'Email Address',
        isRequired: true
    });
});

contactSection.addRow(row => {
    row.addDropdown('preferredContact', {
        label: 'Preferred Contact Method',
        options: [
            { id: 'phone', name: 'Phone Call' },
            { id: 'text', name: 'Text Message' },
            { id: 'email', name: 'Email' }
        ],
        defaultValue: 'phone'
    });
    row.addDropdown('bestTime', {
        label: 'Best Time to Reach You',
        options: [
            { id: 'morning', name: 'Morning (9am-12pm)' },
            { id: 'afternoon', name: 'Afternoon (12pm-5pm)' },
            { id: 'evening', name: 'Evening (5pm-8pm)' },
            { id: 'anytime', name: 'Anytime' }
        ]
    });
});

Best time to reach them matters more for legal than most industries. Someone dealing with a criminal case or domestic issue might not want calls at their workplace. Respect their preferences.

Additional Details and Description

Give them space to tell their story. Structured questions capture facts, but the narrative often contains details that determine case quality.

const additionalSection = form.addSubform('additional', {
    title: 'Additional Information'
});

additionalSection.addRow(row => {
    row.addTextbox('caseDescription', {
        label: 'Please briefly describe your situation',
        multiline: true,
        rows: 4,
        placeholder: 'Include any details you think are important...',
        helpText: 'This information is confidential and protected by attorney-client privilege.'
    });
});

additionalSection.addRow(row => {
    row.addDropdown('howFound', {
        label: 'How did you hear about us?',
        options: [
            { id: 'google', name: 'Google Search' },
            { id: 'referral', name: 'Friend/Family Referral' },
            { id: 'attorney', name: 'Attorney Referral' },
            { id: 'social', name: 'Social Media' },
            { id: 'ad', name: 'Advertisement' },
            { id: 'bar', name: 'Bar Association' },
            { id: 'other', name: 'Other' }
        ]
    });
});

"How did you hear about us" isn't just marketing - referral sources matter for law firms. A referral from another attorney suggests a qualified case. A Google search might need more vetting.

Disclaimers and Consent

Legal ethics require you to be clear: filling out a form doesn't create an attorney-client relationship. But you still have confidentiality obligations.

form.addRow(row => {
    row.addCheckbox('disclaimer', {
        label: 'I understand that submitting this form does not create an attorney-client relationship. I consent to being contacted about my inquiry.',
        isRequired: true
    });
});

form.addRow(row => {
    row.addTextPanel('confidentiality', {
        computedValue: () => `All information submitted through this form is treated as confidential.
By submitting this form, you are not forming an attorney-client relationship,
but your information is protected by our privacy policy and ethical obligations.`,
        customStyles: {
            'font-size': '12px',
            'color': '#666',
            'margin-top': '15px'
        }
    });
});

Required checkbox for consent creates a record that they understood and agreed. This protects you if there's later confusion about the relationship.

Why Detailed Intake Works for Law Firms

Short forms get more submissions. Long forms get better cases. For legal services, the math clearly favors detailed intake.

A 15-field form might convert at 3% instead of 8%. But those 3% are real cases with real legal issues from people ready to hire. The extra 5% from a short form includes:

  • People with no case at all ("I'm just mad at my neighbor")
  • Cases outside your practice area
  • Cases you can't take due to conflicts
  • People who can't afford your fees
  • Tire-kickers shopping for free advice

Every one of those is a wasted consultation if you don't filter them first. At $200-500/hour for attorney time, the detailed form pays for itself.

After the Submission

Immediate confirmation referencing their specific matter builds confidence: "Thank you for contacting us about your personal injury case. Based on the details you provided, someone from our team will reach out within 2 hours."

Run the conflict check before calling. Nothing wastes time like a 20-minute conversation ending with "sorry, we have a conflict."

Route by practice area and urgency. Criminal cases with imminent court dates go straight to a criminal attorney. Estate planning inquiries can wait for the next business day.

For PI cases, have someone call within an hour. These clients are often talking to multiple firms, and the first one to respond often wins.

Practice Area Specific Tips

Personal Injury

Time is your friend and enemy. You want cases filed before statutes run, but you also want maximum medical treatment documented. Ask about injury severity and treatment status to gauge case value.

Family Law

Emotions run high. Keep questions factual, not judgmental. "Are minor children involved?" not "Is your spouse trying to take the kids?" The facts matter for case assessment; the framing matters for client comfort.

Criminal Defense

Speed matters most here. Someone arrested Friday night needs help before Monday's arraignment. Flag urgent cases for immediate follow-up, even outside business hours.

Estate Planning

Lower urgency, longer timeline. These clients are planning ahead, not reacting to a crisis. You can afford to schedule consultations a few days out.

Common Mistakes

Asking for case details before practice area. Show relevant questions based on what kind of case it is. Criminal defendants don't need to see personal injury questions.

No urgency assessment. Someone with a court date tomorrow should not be in the same queue as someone thinking about estate planning someday.

Skipping conflict check info. Get adverse party names upfront. Otherwise your first call might end with "sorry, we can't help."

No disclaimer checkbox. You need clear evidence they understood this isn't an attorney-client relationship yet. CYA.

Common Questions

Should I ask about ability to pay in the intake form?

It depends on your practice. For contingency cases (PI), payment ability isn't relevant. For hourly work, asking about budget expectations can help - but be careful not to sound money-focused before you've established value. Some firms wait for the consultation to discuss fees.

How do I handle after-hours urgent submissions?

Set expectations clearly. If you can't guarantee response until business hours, say so. For practices with true emergencies (criminal, domestic violence), consider a phone number for urgent matters. Auto-responses should acknowledge receipt immediately.

Should different practice areas have separate forms?

One form with conditional logic usually works better than multiple separate forms. You get a single URL to promote, and clients who aren't sure of their practice area can still submit. The conditional sections show only relevant questions.

How detailed should case descriptions be?

Enough to assess viability, not enough to replace a consultation. You want to know 'car accident, not at fault, currently treating for back injury' - not a 10-page narrative. Long-form text boxes can be optional for those who want to share more.

Ready to Build Your Legal Intake Form?

Start capturing qualified cases with forms that filter for viability and urgency.