One morning's inbox, handled.
This is a working system, not a video. Pick a message from the synthetic inbox below — or paste your own wording — and watch it become a structured record with a reply ready for approval. Every stage shows the rule that produced it.
Everything here is invented. The agency, properties, tenants, landlords, phone numbers and certificate dates are all synthetic test data. No real customer information is used, stored or sent anywhere — the whole thing runs in your browser and calls no external service.
- 8messages
- 111.8 minhandled by hand
- 16.5 minto review and approve
- 5held for a person
- 1critical compliance flag
Handling times are this demo's own assumptions about a fully logged process, shown per step further down. They are an illustration, not a measurement of any real agency.
Sample inbox
Or try your own
Processed in your browser. Nothing is uploaded. Please do not paste real customer details.
BeforeWhat arrives
- From
- Sarah Jones <s.jones.demo@example.com>
- Subject
- Two bed flat on Station Road
I'm interested in viewing the two-bedroom flat on Station Road that's listed on Rightmove. Would next Tuesday afternoon be possible at all? I finish work at 3 so anything after that would be great.
My name is Sarah Jones and my number is 07700 900412 if it's easier to call.
Thanks,
Sarah
A person reads this, works out what it is, finds the property, checks whether anything is outstanding, updates the system, decides who deals with it and writes back.
AfterWhat comes out
What is it?
Weighted keyword rules, not a model. Every score is traceable.
Viewing request
92% confidence. Below 70% it is queued for review rather than acted on.
- viewing
- portal source
- prospective tenant phrasing
What is in it?
Pattern matching with validation. Empty beats wrong.
- Name
- Sarah Jones
- s.jones.demo@example.com
- Phone
- +447700900412 (from "07700 900412")
- Postcode
- Not found
- Requested time
- Tue 25 Aug, afternoon (from "next Tuesday")
- Reported issue
- Not a fault report
Fields are validated, not guessed. A UK number is normalised to +44 format; anything unrecognised is left empty rather than filled with something wrong.
Which property?
Scored against the portfolio. Ties are refused, not broken.
STA-14B — Flat B, 14 Station Road
- Area
- Harlesden, NW10 4UB
- Type
- 2 bed flat, £1,850 pcm
- Status
- available
- Management
- Full management
- Landlord
- M. Okonkwo
- Tenant
- Vacant
Matched at 55% on street name (station), 2 bedroom.
How urgent?
Agency service policy expressed as rules you can change.
P3 commercial queue
Target first response: within 8 working hours.
- Specific viewing slot requested — reply before the slot lapses
Anything expiring?
Certificates and deadlines on the matched property.
-
warning
Gas safety record (CP12) expires in 16 days
Due 2026-09-02. Book the renewal now — this visit is an opportunity to combine appointments.
This is the part a person reading an inbox has no reason to notice. It is a date comparison, so it is done with rules, never a model.
What goes in the system?
The exact record an integration would create.
{
"source": "email",
"messageId": "msg-01",
"receivedAt": "2026-08-17T08:12:00Z",
"category": "viewing_request",
"categoryConfidence": 0.92,
"priority": "P3",
"track": "commercial",
"propertyRef": "STA-14B",
"propertyAddress": "Flat B, 14 Station Road, Harlesden, NW10 4UB",
"contactName": "Sarah Jones",
"contactEmail": "s.jones.demo@example.com",
"contactPhone": "+447700900412",
"summary": "Two bed flat on Station Road",
"requestedSlots": [
{
"date": "2026-08-25",
"asWritten": "next Tuesday",
"partOfDay": "afternoon"
}
],
"complianceCodes": [
"gas_safety_expiring"
],
"requiresHumanReview": false,
"reviewReasons": []
}What do we say?
Prepared from a template. Approved by a person.
Subject: Viewing — Flat B, 14 Station Road
Thanks for your interest in Flat B, 14 Station Road, Harlesden (2 bedroom flat, £1,850 pcm).
I can offer Tuesday 25 August, 1:00pm–5:00pm. Does that work for you?
So I can confirm the appointment, could you let me know how many people will be viewing and your intended move-in date?
Kind regards,
Northfield Residential Lettings
What happens next?
Concrete actions with an owner and a deadline.
- Hold viewing slot Tuesday 25 August (afternoon)
- Create applicant record and add to matching alerts
- Book renewal: Gas safety record (CP12) expires in 16 days
Does a person need to look?
The safety gate. It errs towards stopping.
Ready for a quick approval
Nothing here is consequential enough to hold. A person still reads the draft before it sends.
What did it save?
Estimated handling time, before and after.
| Step | By hand | Assisted |
|---|---|---|
| Read and understand the enquiry | 1.5 min | 0.5 min |
| Find the property and check availability | 2.5 min | 0 min |
| Create the applicant record | 4 min | 0.5 min |
| Check the diary and propose a slot | 3 min | 0.5 min |
| Write and send the reply | 4 min | 1 min |
| Check certificate and deadline exposure | 3 min | 0 min |
About 15.5 minutes back on this one message. These per-step timings are this demo's assumptions, not a measurement of your business — the Efficiency Review replaces them with a timed sample of your own work.
What this demo is honest about
No model is deciding anything
Classification, priority, property matching and compliance are plain rules. That is deliberate: those decisions route emergencies and instruct contractors, so they have to be reproducible and explainable. A language model is only useful here for rephrasing a draft that is already correct.
It refuses to guess
Try an address that is nearly right. It will tell you it cannot identify the property rather than pick the closest one. Most of the value in a system like this comes from knowing when to stop.
Your build would look different
The categories, priorities and service targets here are invented for the demo. Yours come from your own rules and your own historic messages during the Efficiency Review.
The timings are assumptions
Every minute figure on this page is an estimate of how long a fully logged manual process takes. In a real engagement we time a sample of your actual work instead, before anything is built.
Want to see this run on your own messages?
Send me twenty of last week's enquiries with the names removed and I will show you what this looks like against your real mix of work, before you commit to anything.