Contractable
A self-service platform for producing standard legal documents, designed for a non-lawyer who cannot judge a contract's wording on their own. The design makes the output visible while it is being written, frames each template in the user's own situation, and keeps finished documents in the user's hands. Each decision below is tied to the usability heuristic it serves.
Problem & Usability Gaps
Someone producing a routine contract without a lawyer cannot tell which clauses a document needs or whether the wording holds up. Read against the heuristics, the usual routes failed them: a downloaded template hid what each blank would turn into, so the result was only visible once it was finished; template lists were named in legal vocabulary rather than in the situation the user was in; and nothing explained what the process would ask of them before they started.
Design Decisions by Heuristic
Before & After by Heuristic
| Heuristic | Before | After | Change |
|---|---|---|---|
| Visibility | Wording unseen until download | Rendered live beside the form | Visible |
| Real-world | Templates in legal vocabulary | Split by business and personal, search first | Relatable |
| Guidance | No explanation before the form | Revision date, format and four steps up front | Explained |
| Control | One-time download | Documents, receipts and account settings kept | Retained |
"A form that hides its output asks the user to trust it; a form that writes the document in front of them lets the user check it. For someone without legal training, being able to check is the feature."
— Design rationale · ContractableDesign Learnings
Showing the output while it is being produced is the strongest form of system status: it replaces reassurance with something the user can verify.
Letting people choose by situation before they meet specialist vocabulary is a real-world match that a single list of document names cannot provide.
Each template page answers what a first-time user asks before committing to a form: what the document is, how long it runs and what the steps are. Answering those up front is help that costs the user nothing to read.



