In this guide · 7 sections
Short answer
A maintenance app needs a tenant form with photos, a job list with status (new, assigned, in progress, done), contractor assignment with notifications, and a history per unit. Use a form and spreadsheet for a few units, a no-code tool for more, or a custom app if it must link to billing.
What a maintenance request system needs to do
Whether you manage five rooms, a few shophouses or an MCST, the workflow is the same: a tenant reports a problem, someone decides who fixes it, the contractor does the work, and everyone knows when it is closed.
| Stage | What the system records | Who sees it |
|---|---|---|
| Report | Unit, category (plumbing, aircon, electrical), description, photos, urgency, access times | Tenant, manager |
| Triage | Priority, whether the landlord or tenant pays, approval if above a cost limit | Manager, owner |
| Assign | Contractor, appointment slot, notes on access | Manager, contractor, tenant (time only) |
| Work | Status updates, parts, quote and invoice | Manager, contractor |
| Close | Completion photos, tenant confirmation, cost | Tenant, manager, owner |
Two features make the biggest difference in practice: an automatic reference number sent to the tenant, and a status they can check without messaging you.
Build options compared
Pick the simplest option that will still work in a year. Moving jobs between tools later is tedious.
Form and spreadsheet
1 to 10 units- Google Forms or Microsoft Forms with photo upload
- Responses land in a sheet you filter by status
- Free with existing Workspace or Microsoft 365
- No contractor view or automatic updates
Best for: Individual landlords with a few units.
No-code app (AppSheet, Power Apps, Airtable)
Growing portfolio- App on phones for tenants, staff and contractors
- Status changes trigger emails or notifications
- Per-user pricing
- Someone must maintain it
Best for: Property managers with tens of units and a few contractors.
Custom web app
- Built around your exact process
- Can connect to Xero, QuickBooks or rental billing
- Higher upfront cost
- You own the code and data
Best for: Managers who want maintenance, rent and owner reporting in one system.
Our comparison of Airtable, AppSheet and Power Apps covers the no-code tools in more detail, and custom web app development in Singapore explains what a custom build involves.
What AppSheet costs (October 2026)
AppSheet is Google's no-code app builder and a common choice if you already use Google Workspace. Its pricing page lists, as of October 2026:
| Plan | Price per user per month | Notes |
|---|---|---|
| Free (testing) | US$0 | Build and test with up to 10 users before deploying |
| Starter | US$5 | Basic app and automation features, spreadsheets and AppSheet database |
| Core | US$10 | Included in most paid Google Workspace plans; advanced automation and security controls |
| Enterprise Plus | US$20 | Databases, APIs, governance controls; requires a Workspace administrator to sign up |
Per-user pricing adds up if every tenant needs an account. Many managers instead let tenants report through a public form, and give app accounts only to staff and regular contractors.
Setting up the request flow step by step
Whichever tool you use, set it up in this order so the process works before you invite tenants.
Define categories and urgency levels
For example: emergency (water leak, no power, lock-out), urgent (aircon, toilet), routine (paint, fittings). Write the response time you aim for next to each.
Build the tenant form
Unit, name, phone, category, description, up to 3 photos, preferred access times. Keep it short enough to finish on a phone.
Add status and assignment
Statuses: new, assigned, scheduled, in progress, awaiting tenant, done. Each job has one owner.
Set notifications
Tenant gets a reference number on submission and a message when the job is scheduled and done. Contractor gets the job details and access time.
Add completion proof
Contractor uploads an after photo and the cost; the tenant confirms or reopens the job.
Review monthly
Look at open jobs, average days to close and repeat problems by unit. Repeat leaks usually mean the fix did not work.
Tenant data and the PDPA
Tenants' names, phone numbers, unit numbers and photos taken inside their homes are personal data, so the Personal Data Protection Act applies to your maintenance system as much as to your tenancy files.
- Purpose: tell tenants on the form that you use their details to handle the repair and contact them about it.
- Contractors: share only the name, phone, unit and access time they need, and only for their jobs. Avoid sending a full tenant list to a contractor WhatsApp group.
- Photos: ask tenants to photograph the fault, not people or personal belongings.
- Access: staff and contractors get individual logins, removed when they stop working with you.
- Retention: keep job history as long as you need it for the property and any warranty or dispute, then delete or anonymise tenant details.
If you also run an MCST or condo website, our guide to MCST websites and e-voting covers resident data in that context, and room rental websites and URA rules covers landlords letting rooms.
Do it yourself or get help?
A form and spreadsheet is a sensible weekend project for a landlord with a handful of units. A no-code app is manageable if someone on your team enjoys building it and will maintain it. A custom app makes sense when maintenance should link to rent collection, owner statements or accounting.
Maintenance system basics
IT Sorted is a Singapore-based team of developers with over 10 years of experience. Our Custom Business App (from S$4,900) builds one connected system around how you work, with logins and roles for staff, contractors and, if needed, tenants, connections to Xero, QuickBooks or Zoho Books, and modules delivered in stages so you test each one. It runs in the browser on phones and is hosted in your own account; the code and data are yours.
Frequently asked questions
A form with photo upload that feeds a spreadsheet, such as Google Forms with Google Sheets or Microsoft Forms with Excel. Add a status column and an owner column, and filter by open jobs each day. It works well for a handful of units but has no contractor view or automatic updates to tenants.
AppSheet's pricing page lists Starter at US$5 and Core at US$10 per user per month, with Core included in most paid Google Workspace plans, and Enterprise Plus at US$20, as of October 2026. You can build and test free with up to 10 users. Using a public form for tenants keeps the number of paid users down.
You need to tell tenants why you collect their details, such as handling the repair and contacting them, and use the data only for that. Put a short notice on the request form linked to your privacy policy. Share only what contractors need and delete tenant details when they are no longer needed. This is general information, not legal advice.
Yes, but limited to their own jobs. Give each contractor an individual login that shows the jobs assigned to them, the access details and the tenant's contact number for that job only. This keeps updates and completion photos in one place and avoids sharing tenant lists in group chats.
When maintenance needs to connect to other parts of your business, for example recharging repair costs on tenant invoices, owner statements, or syncing with Xero or QuickBooks, or when per-user no-code licences become expensive. For a few units, a form and spreadsheet or a no-code tool is usually enough.