# How LeasePilot Actually Works: A Technical Overview Blog | LeasePilot [Blog](/blog)Technology # How LeasePilot Actually Works: A Technical Overview How LeasePilot actually works: layered data, rule-based clause assembly, and why we chose this architecture over generation. ![Lior Kedmi](/_next/image?url=%2Fleadership%2Flior-kedmi.jpg&w=3840&q=75&dpl=dpl_2umEzFMLLmFZHhmrz8MoJu6VB8Uh) Lior Kedmi CTO March 6, 202410 min readCopy link TL;DR For technical evaluators doing due diligence: here's how our system actually works. Layered document architecture, deterministic assembly, and the engineering philosophy behind a decade of development. § 01 ## [For the Technical Evaluator](#for-the-technical-evaluator) If you're evaluating lease automation technology, you've probably seen demos and heard pitches. This post explains, from an engineering perspective, how LeasePilot actually works, the architecture, the design decisions, and the reasoning behind them. § 02 ## [The Core Problem](#the-core-problem) A commercial lease is a complex document with several challenging characteristics: 1. **Interdependencies**: Values in one place affect values elsewhere. Base rent appears in the lease body, the rent schedule, and various calculations. Change it once, update it everywhere. 1. **Conditional logic**: Different scenarios require different language. A California retail lease needs provisions that a Texas industrial lease doesn't. A deal with percentage rent has sections that a flat-rent deal omits. 1. **Calculations**: Rent escalations, pro-rata shares, operating expense estimates, these involve actual math that must be correct. 1. **Compliance requirements**: State-specific disclosures, local regulations, property-type requirements. Miss one and you have a compliance gap. 1. **Institutional standards**: Every organization has preferred language, fallback positions, non-negotiable terms. These need to be enforced consistently. Traditional approaches (Word templates, generic document automation) struggle with these characteristics. We built an architecture specifically designed to handle them. § 03 ## [The Layered Data Model](#the-layered-data-model) The foundation of the system is separating lease data into distinct layers: ### Layer 1: Your Lease Forms Your lease forms represent years of legal refinement. In LeasePilot, these are encoded as structured objects, not Word files. Each clause is a discrete unit with references to the actual language, metadata about when to include it, variant options for different scenarios, and fallback positions for negotiation. Think of it like HTML referencing a CSS file. The structure says "put the rent clause here." Your clause language determines what that clause actually says. This separation means you can update clause language without touching structure, and update structure without touching clauses. ### Layer 2: Your Clause Language Your clauses, the language your attorneys have refined through years of negotiation and disputes, are the building blocks. Each clause includes: - **Content**: Your actual text, with placeholders for variable data - **Variants**: Alternative versions for different scenarios (standard, aggressive, tenant-friendly) - **Conditions**: Logic determining when to include the clause - **Metadata**: Version history, approval status, usage notes Clauses can have multiple variants. A CAM clause might have versions for gross lease, NNN lease, and modified gross, each selected automatically based on deal structure. This is the kind of logic LeasePilot can encode for your specific forms and deal patterns. ### Layer 3: Building Data Property information that persists across all leases for that building: - Legal description and address - Square footage (rentable, usable, common area factors) - Building specifications - Landlord entity information - Property-specific rules or requirements This data is entered once per property and flows into every lease for that building. ### Layer 4: State/Jurisdiction Rules Compliance requirements organized by jurisdiction: - Required disclosures (seismic, environmental, tenant rights) - Mandatory provisions - Prohibited terms - Filing requirements When a lease is generated for a property in California, California rules apply automatically. No attorney needs to remember which state needs which disclosure. ### Layer 5: Deal Terms The business terms for this specific transaction: - Parties (tenant name, contact information, entity type) - Space (suite, RSF, permitted use) - Economics (rent, escalations, TI allowance, free rent) - Term (commencement, expiration, options) - Special provisions negotiated for this deal Deal terms are structured data, not free text. This enables calculations and ensures values flow consistently throughout the document. § 04 ## [The Assembly Engine](#the-assembly-engine) Given these layers, how does a lease get created? ### Step 1: Context Resolution The system determines what context applies: - Which building? Load building data - Which state? Load jurisdiction rules - What property type? Apply property-type logic - What deal structure? Determine applicable clauses ### Step 2: Clause Selection For each position in the document, the system evaluates which clause variant to use: \`\`\` IF deal.leaseType = "NNN" AND building.state = "CA" THEN use clause "cam-nnn-california-v3" ELSE IF deal.leaseType = "NNN" THEN use clause "cam-nnn-standard-v3" ELSE IF deal.leaseType = "Gross" THEN use clause "cam-gross-standard-v2" END \`\`\` These rules are configured during onboarding to reflect each customer's standards and decision logic. ### Step 3: Data Population Once clauses are selected, variable data populates: - Deal terms insert into their placeholders - Building data populates property descriptions - Calculated values compute and insert ### Step 4: Calculation Execution Computational elements generate: - Rent schedules based on base rent, escalation type, and term - Pro-rata share based on premises RSF and building RSF - Operating expense estimates based on expense structure Calculations execute against structured data, not parsed text. The system knows the base rent is $50.00 PSF because it's stored as a number, not because it extracted "$50.00" from a text string. ### Step 5: Document Rendering The assembled content renders into the output format: - Page layout and formatting - Header/footer generation - Table of contents - Exhibit compilation The output is a complete, formatted document ready for review and negotiation. § 05 ## [Deterministic Output](#deterministic-output) A critical property: **the same inputs always produce the same output**. This is where the architecture diverges fundamentally from AI-generated documents. AI is probabilistic, it produces variable results from the same prompt. Lease calculations must be deterministic. Clause selection must be predictable. There is no room for "the AI decided" in a binding legal document. If you generate a lease today and generate the same lease tomorrow with identical inputs, you get identical output. This enables: - **Auditing**: What version was sent to the tenant? Regenerate with the same inputs and know exactly what they received. - **Comparison**: What changed between draft versions? The differences reflect actual input changes, not random variation. - **Testing**: Changes to clauses or logic can be validated systematically. § 06 ## [The Amendment Model](#the-amendment-model) Leases don't end at execution. Amendments modify them over time. In LeasePilot, an amendment is a structured delta: - Which provisions change - What the new values are - Which version of the original lease it modifies Because we have structured data for both the original lease and the amendment, we can: - Track cumulative changes across multiple amendments - Generate consolidated lease documents reflecting all modifications - Identify which provisions differ from current standards § 07 ## [Integration Architecture](#integration-architecture) Lease data doesn't exist in isolation. It connects to: **Property Management Systems** (Yardi, MRI, Entrata): - Building data synchronization - Lease abstraction export - Rent roll reconciliation **CRM Systems** (Salesforce, Dynamics): - Deal pipeline integration - Tenant information sync - Activity tracking **Document Management**: - Version storage - Execution tracking - Document retrieval The system was designed for integration from the start. Structured data is inherently more portable than Word documents. § 08 ## [What We Don't Do](#what-we-dont-do) Equally important is what we intentionally excluded: **No AI text generation**: We automate language selection, not language generation. Every word in the output was written and approved by your attorneys. Your language, automated. **No black-box processing**: The assembly process is transparent. You can trace why any clause was included, what rules applied, what data populated. **No document parsing as a source of truth**: We don't rely on extracting data from Word documents. Structured data is authoritative. Documents are outputs, not inputs. **No one-size-fits-all forms**: The system is built around each customer's standards, your forms, your language, your deal logic. Not a generic set of templates everyone shares. § 09 ## [The Technical Trade-offs](#the-technical-trade-offs) Every architecture involves trade-offs: **Upfront configuration**: During onboarding, we encode your clause libraries, rules, and deal logic. This takes effort, typically around six weeks to go live — with about four weeks of active work with your team. The first two weeks are an internal deep dive on your templates before we take any of your team's time. That investment pays off over hundreds of transactions. **System complexity**: A layered, rule-based system is more complex than a Word template. That complexity lives in the platform so your team doesn't deal with it, but it's there. **Rigidity where appropriate**: The system enforces structure. You can't just type free-form text anywhere. This is intentional, it's how consistency is maintained, but it requires adapting workflow. **Integration work**: Connecting to external systems requires implementation effort. Structured data makes this possible; it doesn't make it automatic. § 10 ## [Why This Architecture](#why-this-architecture) Ten years ago, we faced a choice: build a simple system that worked adequately, or build a complex system that worked correctly. We chose complexity in the platform to enable simplicity in the workflow. The attorney using LeasePilot doesn't think about layers, rules, or assembly engines. They enter deal terms and get a lease. The architecture is invisible to them. But that architecture is why the lease is consistent, compliant, and correct. It's why updates propagate automatically. It's why the system scales to thousands of transactions. Simple tools have hidden complexity, it just lives in the user's workflow instead of the system. We made the opposite trade. * * * That's how LeasePilot actually works. Layered data model, rule-based clause selection, deterministic assembly, structured integrations. Not magic, engineering. Built over a decade to solve the specific challenges of commercial lease drafting at scale. Questions about the architecture? [Get in touch](/company/contact). § Adjacent reading ## More from the ledger [§ 01DEC 18, 2024 Technology ### Supporting Any Complexity in Lease Documents Lior Kedmi9 MIN READ Read →](/blog/supporting-any-complexity-in-lease-documents) [§ 02SEP 16, 2024 Technology ### How We Deconstruct a Lease to Reconstruct It Better Lior Kedmi8 MIN READ Read →](/blog/how-we-deconstruct-lease-to-reconstruct-it-better) [§ 03FEB 06, 2025 Technology ### Why Generic Document Automation Failed CRE Legal Teams David Saltman7 MIN READ Read →](/blog/why-generic-document-automation-failed-cre) § See it in practice ## Reading about it is one thing. Watching it happen is another. See LeasePilot draft a lease in your team’s own templates, with your clauses and your defaults. [Schedule a Demo](/demo)