LeaseLens

Custom Software

Client:

Commercial Real Estate Firm, UAE

Scope:

Real Estate

Year:

2026

OVERVIEW

We built an AI lease abstraction tool that turned a 4 hour manual review process into a 30 second upload, saving the client over 60 hours of paralegal work every month.

The Problem

Every lease that came in (whether new, renewed, or transferred) had to be manually read by the paralegal, who would then create a structured summary in a Google Sheet. The summary covered things like rent schedule, escalation clauses, renewal options, termination terms, and recovery costs.

The process had three problems that compounded as the portfolio grew:

It was slow. Each lease took 3 to 5 hours to abstract properly. With 15 to 20 new or renewed leases per month, that was up to 100 hours of paralegal time, billed externally.

It was inconsistent. Different paralegals abstracted differently. Important clauses got missed. The team once discovered a $40,000 termination penalty buried on page 27 of a lease, three weeks after they had already verbally committed to letting the tenant exit early.

It did not scale. The head of leasing wanted to grow the portfolio to 500+ leases over 18 months. The current process would have required hiring two full time paralegals, which the firm was not prepared to do.

The team had looked at off the shelf solutions (Leverton, LeaseAccelerator, Spacewell) and ruled them out. They were either too expensive ($30K+ per year), built for US lease formats, or required a 6 month implementation. None of them spoke "UAE commercial lease."

What They Wanted

The brief was direct. Build something that:

  1. Accepts a PDF lease and returns a structured summary in under a minute.

  2. Handles UAE specific lease formats and clauses.

  3. Flags risks the team should review before signing.

  4. Stores everything in a searchable database.

  5. Costs less than hiring one paralegal for a year.

They had 6 weeks before the next portfolio expansion phase. They needed it shipped, not pitched.

How We Approached It

We ran a 3 day discovery sprint with the head of leasing and the paralegal. We sat with them as they abstracted three real leases end to end, watching what they actually did, not what they said they did. That session shaped the entire build.

A few decisions came out of it:

We did not try to replace the paralegal. We tried to replace the boring 80%. The first draft of the abstraction would be AI generated. The paralegal would review and approve. This kept a human in the loop for legal liability and improved the AI's accuracy over time.

We trained on the firm's own historical leases. We took 40 of their previously abstracted leases and used them as few shot examples in our prompts. This gave the AI a sense of what "good" looked like in this firm's specific context.

We used Claude for extraction, not GPT. Claude handled long document context (some leases were 60+ pages) better and produced more structured, consistent output for legal text.

We built it as an internal tool, not a SaaS. No multi tenant architecture, no billing, no marketing site. Just a clean dashboard the team could log into. This cut build time by 60%.

The Build

Stack: React, TypeScript, Tailwind, Supabase (auth, storage, database), Claude API for extraction, pdf.js for parsing.

Core features shipped:

  • Drag and drop PDF upload with batch processing

  • AI extraction of 18 standard fields (rent, escalations, term, renewal options, termination, recovery costs, security deposit, permitted use, exclusivity, etc.)

  • Risk flagging system that highlighted unusual clauses or missing standard terms

  • Searchable lease library with filters by property, tenant, expiry date, and risk level

  • Side by side review interface showing the original lease next to the extracted data, with one click corrections

  • Export to Excel for accounting handoff

  • Audit trail showing who reviewed what and when

What we deliberately did not build:

  • No mobile app (the team only worked from desktop)

  • No third party integrations (Phase 2)

  • No tenant facing portal (out of scope)

  • No automated rent collection (RentRoll territory)

Every "no" saved a week. The team agreed on the cuts in week one and never asked us to add them back.

The Results

After 90 days of usage:

Time per lease abstraction: 3 to 5 hours → 8 minutes (review only, since AI handles the draft)

Paralegal hours per month: 100 → 12

Annual external paralegal cost: ~$72,000 → ~$9,000 (a $63,000 saving)

Lease processing throughput: 15 to 20 per month → 60+ per month (capacity, not actual volume)

Risk catches in first 90 days: 4 leases flagged with terms the team had not noticed in the original manual review. One of them was a $28,000 escalation cap they would have missed.

Build cost: $11,500 fixed price.

Payback period: Under 3 months.

What the Client Said

"We expected a tool. We got an actual workflow change. The team uses it every day and we have not hired the paralegal we thought we would need to hire this year." — Head of Leasing, [Client Confidential]

What We Learned

Three things from this build that shape how we approach AI projects now:

Domain context beats model choice. The accuracy jump between "generic prompt" and "prompt grounded in 40 real client leases" was bigger than any model upgrade. Spend the time on the data, not just the model.

Keep humans in the loop for anything legal or financial. Not because the AI is wrong often, but because when it is wrong, the cost is high. The review step is the product, not a workaround.

Productized SaaS is not always the answer. This client did not need a $99/month subscription. They needed a tool that fit their workflow exactly. Sometimes the right product is one you build once and own forever.