Getting started

LeaseRenewal ranks expiring leases by break-even arithmetic — it shows you which renewals are most at risk and where the proposed increase costs more than a vacancy would.

  1. 1 Export your expiring leases from your PMS as CSV. Your file should have columns for: unit ID, current monthly rent, proposed monthly rent, tenure in months, unit type (optional), and expiry date (optional).
  2. 2 Go to the App page and paste the data into the text area, or upload the CSV file directly.
  3. 3 Adjust the turn cost estimate if needed (default: one month's current rent). This is how many months of rent a vacancy costs your property — including lost rent, make-ready costs, and marketing.
  4. 4 Click "Compute worklist" and review the ranked results. Each lease shows its break-even months, net gain or loss, and a flag if the increase never pays for itself within the lease term.

Important: Your data is processed in memory and discarded after each session. Nothing is stored, logged, or saved. There are no accounts or login.

Frequently asked questions

How is the break-even month calculated?

Break-even months = turn cost estimate ÷ monthly increase amount. For example, if your turn cost is one month's rent ($1,500) and the proposed increase is $75/month, the increase pays for the turnover after 20 months. If the lease term is only 12 months, the increase never breaks even — that lease is flagged.

What does a "flagged" lease mean?

A flag means the proposed increase does not recover the cost of turning the unit before the lease ends. The arithmetic: total increase revenue over the lease term is less than the estimated turn cost. These are the leases where holding the resident at the current rent may be financially better than pushing the increase and risking a vacancy.

Can I export my results?

There is no export feature. The results are displayed on screen only. If you need a permanent record, you can copy the data from the screen manually. This is a known limitation of the current architecture — the tool processes data in memory and discards it; there is no server-side storage to generate a file from, and no email to send one.

Can the tool predict whether a resident will renew?

No. LeaseRenewal does not make predictions about individual behaviour. It performs arithmetic: it compares the proposed rent increase against the cost of a vacancy. There is no model, no historical data, no resident-scoring. Every number on screen is a deterministic calculation from the inputs you provide.

Does it integrate with Yardi, RealPage, AppFolio, or other PMS?

No. There are no PMS integrations. You must export your lease data from your PMS as a CSV file and paste or upload it manually. This is a known limitation — see the limitations section below.

What happens to my data after I use the tool?

It is discarded immediately. LeaseRenewal runs on a Cloudflare Worker with no persistent storage — no database, no cache, no logs of request bodies. Each session is completely independent. Nothing is stored between visits, and we do not use cookies, analytics, or tracking.

Known limitations

LeaseRenewal is honest about what it is and is not. The following capabilities do not exist in this product, and we will not imply they do.

Contact us

If you need help using LeaseRenewal, have found a bug, or have a question not answered above, reach out by email. A human reads every message.

Support email

leaserenewal@agen2ic.ai

We aim to respond within 1–2 business days. Please include a description of the issue and, if applicable, the steps you followed before the problem occurred.

What to include in your message

For the fastest response, include: (a) what you were trying to do, (b) what you expected to happen, and (c) what actually happened (including any error messages). If the issue is about a specific lease data set, a made-up example of the data shape is more helpful than your actual rent roll.

Note: This product has no legal entity, postal address, or jurisdiction registered yet. If you require a formal legal notice or service of process, you must contact the operator through whatever channel they have established separately.