Leestly
A marketplace for home cleaning. Pick what needs doing, see the price before you book, and pay only after the work is done. Live on the App Store.
August 20, 2026 · 4 min read · Updated August 23, 2026

Photograph by İNZİLE DAL
Booking a cleaner usually means a phone call, a vague quote, and finding out the real price afterwards. Leestly replaces that with a marketplace: choose what needs doing, see the price upfront, and book a trusted local cleaner in about a minute.
Leestly and Leestly Pro are live on the App Store — one app for people booking a clean, one for the cleaners doing the work. iPhone for now; Android is a waitlist. Launching city by city.
How a booking works
You pick the rooms and the type of clean, say whether there are pets and how we get in, and choose a time — or ask for someone as soon as possible. The price appears before you commit to anything.
Payment is held at booking and captured after the clean, never before. The card is authorised when you book; the money moves once the job is finished. If nobody can take the job, nothing is charged at all.
Behind that is a matching engine that scores available cleaners on distance, rating, experience and availability, then sends the job out as a live offer with a countdown. If it isn't taken it goes to the next cleaner, up to seven times before the order expires.
The cleaner's side
Leestly Pro is built around a principle that is easy to state and harder to hold: cleaners see their pay before accepting, and declining a job does not count against them.
A cleaner sets their area, their working days and their availability, then gets offers they can take or ignore. On the job there's a per-room checklist the client can watch progress against. Earnings appear after completion and are paid out through Stripe Connect once the hold period ends.
Every cleaner completes identity verification before taking jobs.
Priced against a market we measured first
Setting prices for both sides meant finding out what the market already does. That turned into a piece of research of its own: what UK cleaners are paid according to official wage data, what clients pay according to the companies' own price guides, and what the platforms in between take.
→ What UK cleaning pays, and what it charges
It also turned up a gap nobody had filled. An hourly rate is meaningless without hours, and as far as we can establish, no one has ever published how long it takes to clean a room — not the industry standards bodies, not the national time-use surveys, and not the platforms sitting on the data.
→ Nobody has measured how long it takes to clean a room
Booking from inside an AI assistant
Leestly runs a remote MCP server, so you can book a cleaning from inside Claude or ChatGPT without leaving the conversation — nine tools, three of which work without an account.
The rule that shaped it: money never moves in the chat. The assistant hands back a Stripe hosted checkout link, the card is authorised there, and it's captured after the clean — the same rule as the app, with no shortcut for the convenient path. Getting there meant writing our own OAuth 2.1 server and keeping the assistant's access in a separate namespace from your phone's session.
→ An OAuth server so an AI can book a cleaning
How it's built
The client app is Swift and SwiftUI targeting iOS 26, written with no backwards-compatibility branches and no view models — plain observable state across twenty-three Swift packages. It is a full rewrite: the original React Native client was frozen and replaced from scratch, deliberately, and it still sits in the tree as a behavioural reference. Leestly Pro is React Native and Expo; the Android client is being written again in Kotlin and Compose.
The backend is Node and TypeScript on Fly.io, with MongoDB, Socket.IO for live offers, Redis for rate limits and distributed locks, and Stripe for everything involving money.
Two decisions worth naming. Pricing has exactly one choke point — the quote a card shows and the quote at checkout come from the same function, because "showed £X, charged £Y" is a trust problem rather than a rounding one. And media is private by default: ID documents, claim photos, chat images and voice notes upload as authenticated and are served through short-lived signed URLs, re-issued on every render. Avatars are the one deliberate exception.
Where it goes
The apps are out. The next work is depth rather than surface: more cities, the Android client, and pushing on the connector — asking for a household chore in plain language is a better interface than any form we could design, and it is close to working properly.
Leestly has its own site, terms and privacy policy at leestly.com. Get the apps: Leestly for booking a clean, Leestly Pro for doing the work.