Skip to content
Datasmarts
Menu

Client-reported: 100 questions to 33 consultations in 2.5 weeks

a US law firm

33 in 100Client-reported approximate figures: visitor questions that became booked consultations, in the first 2.5 weeks after launch
15of those booked consultations were attended, client-reported and approximate
5became signed matters at roughly $5,000 each in the first 2.5 weeks, client-reported and approximate
20 to 90 secondsto return a one to three page overview to the visitor

Challenge

The firm’s website took questions and did nothing with them. Somebody with a real problem would land on it at eleven at night, find a contact form, and either fill it in and wait or leave. The ones who left were the ones the firm never heard about.

The obvious fix is an assistant that answers the question, and the answer itself is what stops most firms shipping one. Telling a member of the public that they qualify for something, or that their matter will succeed, is the practice of law. A system that does it once, in any language, is a liability rather than a source of work. Everything in the build follows from that.

Approach

We separated the two things a good answer does at once: explain what the options are, and decide which one applies. Explaining is information, and software can do it. Deciding is legal judgment, it belongs to the attorney, and we built the system so it cannot drift into that seat.

The attorney wrote the behaviour rules. We built the system that enforces and verifies them, rather than writing a prompt and hoping. The pipeline applies those rules as checks instead of asking the model to remember them, and a separate test tier grades every change against them. That is what let him put his name on it.

Solution

A single-shot question, answered in public. A visitor asks one question, with no account, in their own language. A cheap model screens it, an expensive model writes the answer with live web search for current source material, and a one to three page overview arrives in the browser in 20 to 90 seconds. It closes with a consultation offer routed to the firm’s calendar.

A compliance layer enforced in the system. The response never determines eligibility and never predicts an outcome. It names any complication the visitor discloses up front and in plain terms, rather than softening it into more comfortable phrasing. The system admits it when a question does not carry enough to answer, and routes to a consultation instead of assuming facts and building on them. Every response closes with the firm’s disclaimer, translated when the answer is not in English.

A fourth test tier that grades the rules, not the code. Unit, integration and end-to-end tests say the pipeline works. None of them say the answer was safe. So each scenario pairs a fixture with an ideal response the attorney wrote himself: deterministic checks cover the rules he made non-negotiable, and an LLM judge scores the rest against his version. It runs outside the per-commit suite, so the tests that run on every push spend no model budget, and the pipeline logs each run against the prompt that produced it.

A curation loop that captures the attorney’s judgment. He reviews candidate answers in an internal review application, rates them and annotates them. The system embeds the ones he selects, retrieves them against the live visitor’s question, and injects them as examples. The model is never retrained. The selected answers feed retrieval instead, which keeps his judgment readable rather than baked into weights nobody can inspect. The client drew that line before the work started.

Results

Client-reported, from the first 2.5 weeks after launch at a practice we do not name. The figures are the client’s own and approximate.

  • Roughly 100 visitor questions answered, of which about 33 became booked consultations.
  • About 15 of those consultations were attended, and about 5 became signed matters at roughly $5,000 each.
  • A question-to-booking rate near one in three, which is the number the platform exists to move.

Two honest notes. These are the client’s figures rather than our own instrumentation, and 2.5 weeks is a short window, so a rate measured over a longer one would probably look different. And the gap between booked and attended is real: about half the people who booked a consultation did not attend it. That is a scheduling problem the assistant does not solve, and we are not going to claim it does.

What made it hard

Proving the rules held was harder than writing them. A rule like “never predict an outcome” is easy to put in a prompt and impossible to verify by reading code. The fourth test tier is what closed that gap. Without it every prompt change is an unmeasured risk to the one property that makes the system publishable, and the failure surfaces in front of a member of the public rather than in a test run.

The second problem was time. A generation that can take a minute and a half cannot hold a connection open and cannot block a request. The pipeline claims each job atomically, which stops two workers taking the same one, pushes the finished answer to the browser instead of making it wait on a socket, and sweeps for jobs that were claimed and never finished. A visitor who closes the tab and comes back still gets an answer.

The live path, and the loop that feeds it

  • The live path

    1. One question

      Typed by a visitor with no account, in their own language

    2. Screening

      A cheap model decides whether the question can be answered at all

    3. Generation

      An expensive model writes the answer with live web search for current material

    4. Compliance checks

      The rules the attorney wrote, applied by the pipeline rather than asked of the model

    5. Overview and offer

      One to three pages pushed to the browser, closing with a routed consultation offer

  • The judgment loop

    1. Candidate answers

      Several generated per question, at pinned settings, kept genuinely different

    2. Attorney review

      Rated and annotated in an internal application

    3. Retrieved as examples

      The selected answers are embedded and pulled back into the live path

The model is never retrained. The loop feeds retrieval, which keeps the attorney in the seat that decides what a good answer looks like.

The pipeline screens a visitor question, answers it against current source material, checks it against the rules the attorney wrote, and returns an overview that ends in a routed consultation offer. A separate loop turns the answers he rated highest into examples the live path retrieves.

Next case study

$77M

political TV ad spend tracked and attributed, an approximate total

Turning FCC filings into an estimated $77M of political ad spend

a US political advisory practice

Read the case study

Your process is on this list in some form

The reading that costs a person a day a week, the report nobody wants to compile, the questions that interrupt the same manager. Tell us which one is yours and we will tell you whether it is worth automating.