NNile Builds AI
← Blog
Legal AI

I Built the Demand Letter Tool. Here's What It Actually Produces.

A section-by-section walkthrough of what the AI demand letter tool outputs, what each part is doing, and where an attorney needs to step in before sending.

I am not an attorney. I built this tool. That puts me in a specific position: I know exactly what the AI is doing at every step, but I cannot tell you whether the output is legally sufficient for your jurisdiction or your client.

What I can tell you is what each section of the output is doing, where the tool is confident, and where I built in flags because I knew the AI would need human review. That is the walkthrough below.

The scenario: rear-end collision, soft tissue injury, clear liability, $15,000 in medical specials, Texas.


What the tool produces

The output has five sections. Each one is doing something different and carries a different level of trust.

Demand letter output sections


Section 1: Facts of the incident

The facts section is the most reliable part of the output. The model is pulling directly from the documents you uploaded: police report, intake notes, whatever you gave it. It is assembling, not inventing.

What to check here: dates, names, and the sequence of events. The AI will reproduce what is in the documents. If the documents have a discrepancy (intake says March 12, police report says March 15), the model will usually pick one without flagging the conflict. That is your job.

The [Source: police report · p.2] tags tell you exactly where each fact came from. If a tag is missing, the claim has no source.


Section 2: Liability

This is where the tool is deliberately conservative. I wrote the prompt to use language like "the evidence supports" and "the record indicates" rather than making direct assertions. That was intentional.

The reason: the model does not know your jurisdiction, your judge, or the specific insurer on the other side. Overconfident liability language in a demand letter can signal inexperience. I defaulted to measured language and left the tone adjustment to the attorney.

If your case has clear, documented liability and you want stronger language, this is the section to rewrite. The structure is there. The word choices are a starting point.


Section 3: Injuries and treatment

The treatment section pulls from the medical records you uploaded. It lists providers, diagnoses, dates of treatment, and total specials.

Two things the model handles well here: it organizes the treatment chronologically and it distinguishes between completed treatment and ongoing treatment. If treatment is ongoing, it flags the specials as a partial figure and adds a note that future treatment costs are not included.

Two things to verify: the total specials figure and any gap in treatment. If the client had a break in treatment for more than 30 days, the AI will include the gap in the timeline. That is accurate. But it will not explain it. The explanation of why the gap happened (cost, work schedule, feeling better before worsening) is something only the attorney and client know. Add it before sending.


Section 4: The demand figure

The model produces a demand figure. For a $15,000 specials soft tissue case with clear liability, the output will typically come in somewhere between $30,000 and $45,000.

Here is the honest part: I do not know if that number is right for your case. The tool uses a multiplier approach based on injury type and liability strength. It does not know the specific insurer, the venue reputation, the client's job, or how sympathetic the medical records read. The attorney does.

Use the figure as a reference point. If it looks low, there is probably a factor the tool did not have. If it looks high, same thing. The number is a starting place, not a position.


Section 5: Review markers

Every output includes two types of markers:

[Source: filename · section] means the claim is tied to a specific document. Verify the source is accurate and the citation matches the actual file.

[UNVERIFIED — attorney review required] means the model generated a claim it could not anchor to a document. Either find the source or remove the claim. Do not send a demand letter with an UNVERIFIED marker still in it.

The UNVERIFIED markers are the most important part of the output. They tell you exactly where the tool ran out of information. In my testing, they show up most often on pain and suffering descriptions and future treatment estimates. Those are two areas where the documents rarely give the model enough to work with.


Where I know the tool is weak

Multi-defendant cases. The template assumes one defendant. If liability is split or there are multiple parties, the structure breaks down.

Jurisdiction-specific formatting. Some states have specific pre-suit requirements. The tool produces a neutral demand letter. Verify the format against your state's rules before sending.

Soft tissue cases with thin records. If the medical documentation is sparse, the treatment section will be sparse. The AI will not invent records. What you give it is what you get.

The demand figure on high-value cases. The multiplier approach works reasonably well for soft tissue and fracture cases. For TBI, spinal surgery, or wrongful death, the variables that move value are too case-specific for a general prompt to handle well. Use the output as a starting point and price the case yourself.


Try it on a real scenario

Run the scenario below to see the full output including all five sections and the review markers. The demo uses the Torres matter from the intake pipeline post.

▶ Demand Letter GeneratorMock data — no API calls
1 Parse matter facts
2 Draft letter body
3 Add source citations
4 Run review pass
Matter Facts

Or upload your own case documents and run it on a real file:

▶ Generate from your case documents5 free runs/day · no account needed
Case documents
Upload police report, medical records, wage verification, etc. (.pdf, .docx, .txt)
1 Extract case facts
2 Draft letter
3 Resolve citations
Free · 5 runs/day
Want to talk?
I'm building NileLegal — a product that runs these pipelines automatically, without the API key setup. If you want to see it on your actual case files, have questions about the pipeline, or want to discuss a custom build, book a call.
Book a callSee demo
← OlderEstimate Your Personal Injury Case Value with AI
Newer →I Built the Intake Pipeline. Here's What It Actually Produces.