Managing my family's rentals from 1,500 km away
I was working in Bangalore. My family owned rental properties in Ranchi.
For a long time, I believed rentals were passive income. Buy the property, find the tenant, collect the rent, repeat every eleven months. Simple.
Then I started actually running the properties from 1,500 kilometres away.
Every month began the same way: my mother would call to say she wasn't sure if the second-floor tenant had paid. I'd open a spreadsheet I hadn't updated since the last fire drill, try to remember whether the Ground Floor's rent was ₹7,500 or ₹8,000 this year, then go into WhatsApp and scroll two thousand messages back to find the last “Rs. 7500 sent” screenshot.
This is the moment I want to describe. Because I think everyone who has ever tried to manage rentals in India recognises it.
The Excel that was never right
We had a spreadsheet. It was three tabs — Rent, Deposits, Bills — kept by whoever remembered to update it that month. Which is to say: no one.
By month four, the rent tab had five entries all marked Paid and one row that said Check with Mama. By month six, half the deposit numbers didn't match the agreement PDFs sitting in a Google Drive folder that no one had opened since 2022.
I tried to fix this three separate times. First with a fancier Excel template. Then with Notion. Then with a different Notion. Each attempt worked for exactly the month I built it and then decayed.
The pattern is very clear in retrospect. A spreadsheet is a system-of-record only if someone is going to update it. If the person who updates it lives in a different city from the property, the system-of-record isn't a spreadsheet. It's their memory.
The WhatsApp thread that ate the truth
The actual system-of-record for our family's rentals was a WhatsApp group with three tenants and my mother. Rent was paid there. Repairs were requested there. Disputes were argued there.
When a payment landed, someone screenshotted the PhonePe confirmation and posted it. That screenshot was the proof of payment.
You can guess how this ended.
Two years in, one of the tenants disputed a rent charge. We went to look up the payment. The screenshot from that month was gone — WhatsApp had exported the media because someone's storage was full, and the message had been redacted to “This message was deleted by the sender.” The sender was the tenant.
We didn't have a copy of a rent receipt. We had a memory of a WhatsApp screenshot.
The bill for that dispute, incidentally, was about three months of my time, one dinner argument, and a ₹4,000 discount we accepted to make it end.
The utility argument that never got resolved
Our electricity meter is shared between two tenants. Every month, one of them gets the paper bill from the state electricity board, we do the math, we split, we notify.
Or that's the theory.
In practice the math is: total consumption × ₹6.50 per unit + fixed charges of ₹92 per meter — but wait, we have two meters, so fixed × 2. Then split by the ratio of Anita's units to Ramesh's units, which was 44 to 128 this month, and then round.
By the time you're done, one tenant thinks they're being overcharged and the other tenant thinks the landlord is pocketing the difference. Neither of them are wrong to feel that way. Neither of them can check the math themselves without asking to see the bill, which nobody wants to send because it also has the landlord's name and account number on it.
The fix is not a better calculator. The fix is showing the arithmetic. As soon as you show the meter reading, the per-unit rate, and consumption × rate = amount, the argument evaporates. Every tenant sees the same number, the same math, the same source.
I couldn't find a single Indian rental tool that did this. So it went on the roadmap.
The legal quote that broke me
The moment I decided to actually build KARVM was a phone call.
One of our tenants had been on notice period for two months and refused to move out. My mother had been trying to send a legal notice for six weeks. The advocate had said: three weeks minimum, ₹15,000. I called three other advocates. Same estimates. Nobody could give me a draft to review in less time or less money than that.
The reason isn't that lawyers are extractive. It's that drafting a proper court-format notice — with the right sections cited from the Jharkhand Buildings (Lease, Rent and Eviction) Control Act, framed carefully so nothing overreaches, with the notice period clock started correctly — takes real skill. Three weeks is honest work.
But three weeks is also two more months of rent lost.
I started reading rental case law. I started reading the actual state acts. I started reading, weirdly, a lot of AI-drafted contracts on GitHub to see what LLMs could and couldn't do with legal text.
There's a version of this story where I say: I realised AI could do this. That's not quite the truth. What I realised was that AI could do the first draft in twenty minutes, and an advocate could review that draft in half an hour, and the total would be ₹3,000 and one day instead of ₹15,000 and three weeks. The trust of the final review still had to come from a human. But the work of the draft could be compressed by an order of magnitude.
This is the moat. Not “AI legal notices” as a slogan. AI as the drafting layer, a human as the ratifying layer, done in an afternoon.
The insight that made it a product
Halfway through building the first version, I noticed something.
Every feature I was adding — the rent ledger, the digital agreement, the utility split, the notice drafter — solved a specific past pain. The Excel that decayed became a database. The WhatsApp screenshot became a receipt PDF. The utility math became an itemised table. The ₹15,000 quote became a draft.
But each of those features shared a property: they took an action that had happened anyway and made it visible for both sides.
The rent got paid — but now both landlord and tenant see the same receipt.
The reminder got sent — but now both know exactly what was said.
The repair got recorded — but now the record exists a year later, when someone claims it didn't.
I started calling this the visibility layer. Not on the marketing site — in my head, while I built. Every feature was a way of taking one specific action and making it visible.
That's when the karma idea landed. Karma doesn't mean fate. In Sanskrit it just means action. And in a rental, the trust between landlord and tenant is not built by the contract. It's built by the actions that happen after the contract. If you make those actions visible — every payment, every reminder, every act of care — the trust doesn't need to be promised. It builds itself.
The company got a new name a few months later.
Three things I wish I'd known
First: the spreadsheet is not the record.If you don't have a system that captures rent, receipts, and communications in one place, your record is whoever remembers the most. That person is going to be wrong at least once a year in a way that costs you money.
Second: the arithmetic is where trust dies. Utility splits, deposit deductions, maintenance costs — anywhere the tenant has to trust your math without seeing it, they lose faith in you. Show the math. Every time.
Third: legal is not slow, it's early.By the time you're paying ₹15,000 for a notice, you've usually already lost two months of rent. If you have a decent draft in your pocket the day the tenant first defaults, the negotiation is different. The point of the notice is often not to reach court — it's to make sure the negotiation happens at all.
KARVM is what I wish I'd had five years ago. It exists because I needed it.
If any of this sounds familiar to you, it might work for you too.