Industry guide · Custom Software

Custom Property Management Software: What to Build When You Outgrow AppFolio and Buildium

The short answer

If you manage 800 or more doors and your team coordinates maintenance, turns, and owner questions through spreadsheets bolted onto AppFolio or Buildium, a custom operational layer usually pays for itself within two leasing seasons. Expect $40,000 to $90,000 for a focused first release shipping in 10 to 14 weeks, keeping your existing platform as the accounting ledger while the custom build takes over the workflows it was never designed to run.

What actually breaks in a property management company running on AppFolio and Buildium

Picture a 1,200-door operation: scattered single family rentals, a handful of 16-unit buildings, three property managers, two maintenance coordinators, and one office manager who quietly runs everything. AppFolio handles rent collection, trust accounting, and owner statements, and it does those jobs well. But the maintenance line rings 40 to 60 times a day, and almost none of what happens next lives in AppFolio. It lives in a shared inbox, a Google Sheet named WO TRACKER v7, and the memory of a coordinator who knows which plumber actually answers on Saturdays.

Buildium shops look the same one size down. After hours, an answering service forwards everything, including an 11pm text about a running toilet, to whoever drew the on-call short straw. Approvals above an owner's not-to-exceed limit happen over text message, then get reconstructed weeks later when the owner disputes an $850 invoice. Each coordinator tops out around 400 doors of maintenance load, so every 400 doors of growth means another salary, and the chaos scales with the headcount.

The pattern is consistent across every operator we have built for: the platform is a good ledger and a bad operating system. Rent flows fine. Work does not. Here are the five failures we see most, why the off-the-shelf tools cannot fix them, and what a custom build does instead.

Problem: maintenance intake is a phone number and a prayer

A tenant calls at 9pm about a leaking water heater. The answering service logs "plumbing issue" with no photos and no troubleshooting. The coordinator sees it at 8:30am, calls the tenant back, calls a plumber at 10, then discovers the repair quote is $850 against a $500 not-to-exceed clause in that owner's management agreement. Two days of email later, the water heater gets replaced and the tenant is furious.

AppFolio and Buildium both sell maintenance contact center add-ons, and they answer the phone competently. What they cannot do is run your rules, because your rules live in 300 different management agreements: this owner approves everything over $300, that one is hands-off to $1,000, this building always uses the flat-rate plumber. No configuration screen encodes that.

A custom build starts with guided intake: web and SMS flows that ask the tenant the questions your best coordinator would ask, collect photos, and classify urgency. It stores each management agreement's approval threshold as data, checks the estimate against it automatically, and pushes a one-tap approval to the owner's phone when it is exceeded. Dispatch routes by trade, zone, and current insurance status, and the completed work order syncs back into AppFolio so the ledger stays clean.

Problem: owner questions get answered with screenshots

An owner with 14 doors emails asking why maintenance ran $3,200 last month. A property manager spends 45 minutes pulling AppFolio reports, downloading invoices, and assembling an explanation email. Multiply that by every statement cycle. The stock owner portals show statements, not answers, and owners who feel blind eventually leave. An owner with 20 doors at an 8 percent fee on $1,800 rents is roughly $34,000 a year in management fees walking out the door over a reporting problem.

A custom owner portal answers the question before it is asked: per-property maintenance history with photos, invoice line items, and the approval record showing the owner said yes on March 12. Repairs tagged against capital expenditure so the year-end conversation with their accountant is painless. Lease expirations, delinquency status, and days-vacant, live rather than 30 days stale. The build reads from your platform's data, so statements still come from the system your state auditor recognizes.

Problem: turns run on a spreadsheet and take a week too long

Move-out on the 31st. Inspection on the 3rd, because that is when someone got to it. Scope written on the 8th, painter scheduled for the 12th, listing live on the 20th. On a $1,800 rent, every idle day costs the owner $60, and they notice. AppFolio and Buildium have task lists, but a task list is not a pipeline: nothing auto-creates the sequence from a move-out date, nothing knows the carpet cannot go in before the painter finishes, nothing flags that unit 4B has been in "awaiting scope" for six days.

A custom turn board is a dependency-aware pipeline. A notice-to-vacate spawns the whole sequence: inspection appointment, a room-by-room mobile inspection with required photos, a scope builder that turns findings into vendor bid requests, stage gates with deadline alerts, and a days-vacant counter on every property manager's dashboard. Operators tell us the visibility alone changes behavior before the automation does.

Problem: your numbers live in seven CSV exports

Monday morning, the operations manager exports delinquency, work order, and lease expiration reports, then pastes them into a master sheet to see performance per property manager. AppFolio restricts programmatic data access on its lower tiers, and Buildium's open API helps but returns their objects, not your metrics. Nobody's dashboard shows work order aging by vendor, maintenance spend per door by property age, or doors per coordinator, because those are cross-cutting questions the report builders were not built to ask.

The custom answer is a sync layer, not a rebuild: pull data on a schedule through whatever API access and report exports your tier allows, land it in a warehouse you own, and put dashboards on top. This is usually the cheapest module in the whole build and the one executives use daily.

Problem: vendor compliance is a folder of PDFs

Your coordinator dispatches a roofer whose general liability policy lapsed in March. Nobody knew, because the certificate of insurance is a PDF in a folder and the expiry date is a field nobody looks at. You find out during the injury claim. Off-the-shelf tools store the date; they do not enforce it.

A custom build makes compliance structural: vendor records with certificate, W-9, and license tracking, automated renewal requests to the vendor 30 days before expiry, lien waiver collection on jobs above a dollar threshold, and a hard block that makes it impossible to dispatch to a vendor with lapsed insurance. The block is one line of logic and it is worth the entire module.

What this costs and how long it takes

These bands come from Digital Heroes delivery experience across 2,000+ projects, not industry surveys. A focused first release, typically maintenance intake, rules-based triage, dispatch, and owner approvals synced to AppFolio or Buildium, runs $40,000 to $90,000 and ships in 10 to 14 weeks. A fuller platform adding the turn pipeline, owner portal, analytics warehouse, vendor compliance, and a mobile app for technicians lands between $100,000 and $250,000 over 6 to 9 months, released in stages so your team is using module one while module three is being built.

What pushes price up: attempting to replace trust accounting and payments (do not, in phase one), voice-based AI intake instead of SMS and web, HUD and Section 8 inspection workflows, multiple markets with different rule sets, and every additional system that must sync in both directions.

Build vs buy: when staying on AppFolio is the right call

Under roughly 500 doors, stay on the shelf. The per-unit math favors it: AppFolio's entry pricing lists at $1.40 per unit per month with a $298 monthly minimum, and Buildium's top tier lists around $375 a month, so even a mediocre fit costs less than a build. Try the higher tiers and the maintenance add-ons first, honestly, for six months.

The signals that it is time to build are operational, not emotional: you hire another coordinator for every 400 doors and margins do not improve, spreadsheets have become the actual system of record, owners are leaving over visibility, and your management agreements contain terms no configuration screen can express. Our position after building for this industry: never rip out AppFolio or Buildium first. Keep it as the ledger, build the operating layer around it, and revisit full replacement only past several thousand doors when the per-unit fees start funding the build on their own.

How to choose a developer for property management software

Four filters that separate real candidates from generic dev shops:

First, ask where trust accounting should live in phase one. The correct answer is "in AppFolio or Buildium, not in the build." Anyone eager to rebuild three-way reconciliation on day one has never sat through a state real estate commission audit and is quoting you a disaster.

Second, make them explain, specifically, how data gets in and out of your platform and tier: which objects Buildium's API exposes, what AppFolio restricts, what syncs hourly versus nightly via report export. Vague answers here become six-figure surprises later.

Third, require that they interview your maintenance coordinator before quoting. If the proposal does not mention not-to-exceed thresholds, vendor rotation, or the after-hours flow, they wrote you a generic ticketing system with your logo on it.

Fourth, get the contract right: you own the code, the database, and the cloud accounts in your company's name, payments tied to shipped milestones, and a first release scoped to a single workflow in under four months. A developer confident in this industry will agree to all of it without flinching.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. 48% of private companies cite integration with legacy systems or technical debt as a top obstacle to realizing the full value of their digital and AI investments (behind data quality/availability at 72% and gaps in AI fluency or technology talent/leadership at 53%). Source: Deloitte (2026) →
  2. McKinsey argues software developer productivity can be measured by combining system-level metrics (DORA and SPACE) with its own outcome-oriented approach, which it reports deploying across nearly 20 tech, finance, and pharmaceutical companies - a claim that sparked significant debate in the engineering community. Source: McKinsey & Company (2023) →
  3. A study (led by Prof. Pak-Lok Poon, published in Frontiers of Computer Science, 2024) reviewing decades of spreadsheet-quality research found that about 94% of spreadsheets used in business decision-making contain errors, illustrating the hidden risk of manual spreadsheet workarounds that custom software is built to replace. Source: Central Queensland University / phys.org (Prof. Pak-Lok Poon et al.) (2024) →
  4. Total US training expenditure rose 4.9% to $102.8 billion; learning management systems were used at 89% of organizations (90% of large, 97% of midsize, 84% of small companies), with average training at 40 hours per employee and $874 spent per learner. Source: Training Magazine (2025) →
Rohan Malhotra · Enterprise Software Consultant

Rohan advises mid-market and enterprise teams on ERP, CRM and custom software, and has led delivery on dozens of business-software builds.

Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom software cost for a property management company with 1,000 doors?
Most operators at that size start with a focused build in the $40,000 to $90,000 range covering maintenance intake, triage, dispatch, and owner approvals. A fuller platform with a turn pipeline, owner portal, and analytics typically runs $100,000 to $250,000 delivered in stages. These bands reflect Digital Heroes delivery experience across 2,000+ projects, not industry averages.
Should we replace AppFolio entirely or build on top of it?
Build on top of it. Keep AppFolio as the ledger of record for rent, trust accounting, and owner statements, and build the operational layer it cannot handle: maintenance rules, turn management, reporting. Full replacement only makes sense past several thousand doors, and only after the operational layer has proven itself for a year or more.
How long does it take to build a custom maintenance coordination system?
A focused first release ships in 10 to 14 weeks in Digital Heroes delivery experience: guided tenant intake, urgency triage, vendor dispatch, and owner approval workflows synced to your existing platform. Fuller platforms take 6 to 9 months but release module by module, so your coordinators are using the intake system while later phases are still in development.
Can custom software handle trust accounting and state compliance for property managers?
It can, but it should not in your first phase. Three-way reconciliation, trust account rules, and state real estate commission audits are exactly what AppFolio and Buildium already do well, and rebuilding them adds cost and regulatory risk with no operational upside. Keep the ledger on the shelf product and build the workflow layer around it.
How do we get our data out of AppFolio or Buildium for a custom build?
Buildium offers an open API that covers most core objects, while AppFolio restricts programmatic access depending on tier, so builds there often combine available API access with scheduled report exports landed in a data warehouse you own. A capable developer maps exactly which data syncs hourly versus nightly during discovery, before quoting. If they cannot answer that for your specific tier, keep looking.
Who owns the custom software after it is built?
You should own everything: the source code, the database, and the cloud hosting accounts registered in your company's name, with IP assignment written into the contract. Avoid arrangements where the developer hosts the product on their accounts or licenses it back to you. Ownership is what makes the build an asset you can sell with the company.
Is upgrading to AppFolio Plus or Buildium Premium cheaper than building custom software?
Almost always cheaper, and worth trying first for six months. Higher tiers add reporting and some workflow tools, but they cannot encode your management agreements, per-owner approval thresholds, or vendor dispatch rules. If you have maxed a top tier and your team still runs the operation from spreadsheets, that is the clearest signal the platform is not the problem you can configure your way out of.
At what door count does custom software make sense for a property management company?
Around 800 doors is where the math usually flips, because that is when coordination headcount starts scaling linearly with growth. Below roughly 500 doors, stay on AppFolio or Buildium and invest in process instead. The better test than door count: if you hire another maintenance coordinator for every 400 doors and margins stay flat, the workflow layer is the bottleneck.
Can custom software automate our after-hours maintenance calls?
Yes, and it is usually the highest-return module in the build. Guided SMS and web intake with photo capture and troubleshooting questions resolves or safely defers most after-hours requests without waking anyone, while true emergencies like active leaks or no heat escalate to the on-call rotation with full context attached. Your answering service either integrates with it or gets replaced by it.
How much should a small business expect to pay for custom software?
Across 2,000+ Digital Heroes projects, a small business system that replaces spreadsheets or one core workflow typically lands between $40,000 and $80,000, with more complex first versions running up to $150,000. The two levers that move the number most are integrations and user roles, not the team's hourly rate. Any quote under $15,000 for a full production system means the vendor has not understood your scope yet.
What happens if I stop paying for maintenance after launch?
Nothing breaks on day one, which is what makes it dangerous. Within 6 to 18 months, unpatched dependencies accumulate known vulnerabilities, an integrated API like Stripe ships a breaking change, and the first fix requires a developer to relearn a stale codebase at full price. Budget 15 to 20% of the build cost per year for upkeep; it is the difference between a $500 patch and a $15,000 emergency.
How many SaaS seats do we need before building custom becomes cheaper?
The crossover usually shows up between 20 and 50 seats on premium tiers. Salesforce Enterprise lists at $165 per user per month, so 40 users cost about $79,000 a year in subscriptions, which is real money against a custom system you would own outright. Run the comparison over three years: if subscription spend beats the build cost plus 15-20% annual maintenance, custom wins on price before you even count workflow fit.
Is it cheaper to customize Salesforce than to build a custom CRM from scratch?
If you use less than a third of what Salesforce does, a custom CRM is often cheaper by year three. Salesforce Enterprise lists at $165 per user per month, so 25 seats cost about $49,500 a year before admin and consultant fees, while a focused custom CRM runs $60,000 to $100,000 once plus 15 to 20% a year in maintenance. If you genuinely need Salesforce's ecosystem, reporting, and app marketplace, customizing it beats rebuilding it; the mistake is paying enterprise prices to use it as a glorified contact list.
How do we get years of data out of our old system and into the new one?
Treat migration as a planned sub-project: a field-mapping document, at least one dry run on a copy of your data, then a cutover with the old system kept read-only for 30 days as a safety net. On Digital Heroes projects it consumes 10 to 15% of the budget when the old system has an export, and more when data must be pulled out screen by screen. Ask any vendor to walk you through their last migration before you sign.
What is the biggest mistake first-time software buyers make?
Choosing the lowest quote without asking why it is the lowest. A bid 40% under the field usually gets there by skipping tests, documentation, and code review, which are invisible in a demo and brutal to pay for later; every stalled project Digital Heroes has been asked to rescue tells some version of that story. The second mistake is signing without a written scope, which reliably turns the winning cheap quote into 1.5x to 2x the price by launch.
Is a solo freelancer enough for my project, or do I really need an agency?
A solo freelancer is a fine choice for a well-defined build under roughly $15,000 to $20,000 with a limited lifespan: an internal calculator, a scripted integration, a prototype. Above $50,000, or for any system your business will depend on for years, you are buying continuity as much as code: enforced code review, cover when someone is ill, and support that outlasts one person's career plans. Price the risk of a single point of failure, not just the hourly rate.
What are the biggest mistakes first-time software buyers make?
Choosing the lowest bid, paying more than 30-40% upfront instead of on milestones, skipping a written specification, and having no maintenance plan for after launch. The most expensive of the four in Digital Heroes rescue projects is the missing spec: without written acceptance criteria, done becomes an argument instead of a checklist, and every disagreement resolves in the vendor's favor. Fix those four and you have avoided most of the ways these projects fail.
If we build for 20 users now, will the software cope with 500 later?
It should, without a rewrite, if it was built on a standard cloud stack; going from 20 to 500 users is mostly a hosting configuration change costing hundreds a month, not a second project. What actually breaks under growth is sloppier work: database queries never indexed for volume and features designed assuming one office's worth of data. Before signing, ask the vendor what happens to the system at ten times today's data, and listen for a specific answer.
How many people should be working on my software project?
A typical $40,000 to $150,000 build runs on three to five people: a technical lead, one or two developers, a designer, and someone owning QA and project communication, often as overlapping part-time roles. More bodies do not make software arrive faster; past a point they slow it down with coordination overhead. The question that matters more than headcount is whether one named senior engineer is accountable for the outcome.
Should I ask for a fixed price or pay the agency hourly?
Fixed price for the first version, hourly or retainer for what comes after launch. A fixed-scope, fixed-price V1 puts the estimation risk on the agency, which is exactly where you want it while trust is unproven; hourly billing on an unscoped greenfield build is a blank check. After launch, flip it, because maintenance and small features arrive unpredictably and fixed-pricing every ticket wastes everyone's time.
Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?