Contract review is one of the clearest wins for AI in a legal workflow. The task is pattern-heavy, the inputs are text, and the stakes of a second pair of eyes are high. But "send the whole PDF to a model and ask what's wrong" is a recipe for a hallucinated risk memo. The technique that works is narrower and more deliberate.
Scope the review before you prompt
Decide, in one sentence, what you are asking the model to do. "Flag any clause that shifts liability to my client beyond the scope of work" is a model-ready request. "Review this contract" is not — the model has no way to know what good looks like for you.
Tip
Your first prompt should almost always be a short brief: jurisdiction, client role (buyer/seller/licensee), deal size, and the two or three risks you care most about. Everything downstream gets better.
Extract, then analyse
Ask the model for a structured extract first — party names, governing law, term, auto-renewal, payment terms, liability cap, termination triggers — before asking it to opine. An extract is a verifiable artifact: you can spot-check each field against the source in seconds. An opinion given before extraction hides errors in prose.
Compare against a known-good template
If you have a template or a prior executed agreement that reflects your firm's standard position, supply it. "Compare the attached contract against our template and list every material deviation" is a task AI does well and humans do slowly. Reviewing the diff is still your job.
What to keep the human in the loop on
- Anything involving regulatory classification (GDPR, HIPAA, export controls).
- Numeric thresholds where a single digit changes the deal (caps, thresholds, penalty clauses).
- Cross-references — "as defined in Schedule 2" that don't resolve. Models miss these more than you'd expect.
What to ship next
Once the extract-and-diff loop is reliable, move up the stack: drafting fallback positions, generating redlines with justifications, and producing a short client-facing summary from the review. Each of those is a distinct prompt, not a bigger one.