Real-estate software development is an exciting field of knowledge in the IT industry. It refers to a unique business structure, neatly organized data and lots of third-party services. This IT domain provides software developers with a variety of interesting technical problems. There are engineers who specialize only in real-estate IT solutions and never run out of issues that encourage their professional growth.
Types of real estate business
Let’s start from the business side of the real-estate industry. All software always starts from a real-world problem that needs to be solved. In real estate, problems are usually related to facilitating business and sometimes - to helping homeowners.
I would break real estate platforms into the following categories:
- software for agents (or marketplaces like StreetEasy);
- platforms for real-estate investors (companies and individuals);
- tools for homeowners: calculators, reports, FSBO software (FSBO stands for “for sale by owner”).
When looking for an average cost of a custom real estate application, project owners need to start from defining the problem they want to solve. Also, it is reasonable to think about a marketing strategy: in what cities/states the platform will be launched, how it will get new users, etc. These issues will definitely affect the development cost.
What are multiple listings services (MLS)?
The first two categories of software usually require MLS integration. If you run real-estate business, you know what MLS is. If you do not know what it is, here is a brief overview.
MLS stands for “multiple listings service”. Listings are records of properties for sale (or for rent) in a public database. A multiple listing service stores a database of listings, allows to browse them and usually makes it accessible via an API. To be a valid MLS, it should implement Real Estate Transaction Standard (RETS).
Basically, a multiple listings service is a huge database of properties that can be downloaded by authorized real estate agents. The agents can share part of those listings on their website according to policies known as Internet Data Exchange. This is why listings are sometimes referred to as IDX listings.
One should differentiate listings from buildings. Buildings may contain many listings (or no listings at all). There are separate services that store spatial data for buildings. An example of such a service is Pluto.
MLS usually calls for paid membership because huge databases require high bandwidth. It is possible to use free solutions, but paid solutions are usually faster, bigger and contain more valuable information.
How to integrate MLS
If your real estate website requires MLS integration, here are some problems your developers have to solve.
1. Create a database for listings.
The database will contain a standard set of fields - state, city, address, description, number of rooms, etc. - yet adjusted to your needs. If you are developing a business-to-business software, you will need accounts for companies or individuals, an ability to browse listings, find them by certain criteria, add them to their accounts, and so on.
2. Choose a multi-listing service - like Zillow, Trulia, DiverseSolutions, etc.
It is assumed that you plan marketing the project in your city or state. Make sure that the desired MLS contains valuable information. We would not recommend dissipating your energy on all possible geographic areas in your country.
3. Register an account in the MLS and start integrating it.
Sometimes the integration will require an agreement with the vendor. The agreement will allow you to get the data in the format you want. This is often cheaper than paying a development company for processing the data upon downloading.
4. Do you remember what we have said about the size of MLS databases? They are huge.
It means that downloading the data is an expensive procedure (and this is one of the reasons why we recommend starting a project from importing listings for one state only). The best way to do it is to download a full feed once per day and partial feeds every 15-30 minutes.
A full feed may run to 1.5Gb. This amount of information plus attachments requires significant processing time, so you cannot import it often. Partial feeds are much smaller as they contain only changes made to the listings over the day. However, even partial feeds may contain redundant information. Sometimes agents change prices in their listings by a few dollars every now and then, so you may want to disregard records where the price has changed by $50 or less.
5. If you have several MLS sources, be aware that they may contain the same listings.
It happens when an original listing is shared among multiple databases. You might think that the same listings mean the same data across all sources - and most of the time this is true. But if the original listing is updated, all databases update their records - but not all of them do it at the same time. Your real estate web app will receive contradictory information from a few sources. So, the developer will need to write some logic for resolving conflicts.
6. The format of street addresses in a feed may vary from record to record.
In this case, the developer will have to create a logic to normalize the addresses.
7. If the project assumes geocoding, you will need geocoordinates of buildings.
MLS feeds do not necessarily contain this information. If this is the case, you will need to sign up to another service (such as Pluto) and get another feed with buildings and their spatial data.
Be aware that not all buildings are geocoded. Sometimes you will need another paid API - like Bing or Google - to generate latitude and longitude for a street address. If you have 1 million records, this procedure will take significant time. Everything is time-consuming when you have 1 million records. So again, consider launching the product in your city first, then spread it to a larger area.
8. You may also need information about deals not open to the public.
This feature is not too common to commercial real estate platforms, but if this is one of your key features, you will need another third-party service - like Acris - to be integrated.
Cost of MLS integration
As you can see, there are several factors that have influence on a real estate website cost. MLS integration may look like a simple feature, but it requires many aspects to be taken care of if you want your project to do something valuable rather than just to be online.
Developing a prototype that integrates MLS and shows agents’ listings in their area can be as simple as 1 month of work (about $16,000). A prototype is a good type of project to step in the market.
A calibrated web app that processes valuable data in the right time assumes about 6 months ($96,000).
Flow for investors: adding a real estate CRM
Let’s talk about the second category of real estate projects - platforms for real-estate investors. This is a kind of business where an investor can search for a home that may be bought, repaired, cleared from a debt and then sold at a higher price. People with a good eye and gifted hands can do a lot in this business.
However, there is something else besides a good eye and gifted hands that they need to run this business. They need an easy way to find a suitable house.
This business defines a set of real-world problems and appropriate solutions that can be covered by a software. A project for real estate investors is usually a customer relationship management system (CRM).
Sometimes it may be referred to as real estate ERP, but I don’t think this is a legit term taking into consideration the number of operations that should be part of an ERP system. A management software for real estate usually automates property management, customer relationship and accounting.
A real estate CRM would definitely have an MLS integrated (unless houses for all potential deals are entered into the CRM system manually). But a CRM also assumes accounts for users, a certain deal pipeline and maybe some value-added features.
According to common practices in software development, the flow of the stage can be presented in the form of user stories - natural language descriptions of features, written from the perspective of an end user. A simple real estate CRM flow may be described by the following set of user stories:
- As a company admin, I can create an account (account is a profile of an investor - either a company or an individual).
- As a superadmin, I can sign in to the admin area and view and update investors registered.
- As a company admin, I can create and delete users.
- As a company admin, I can create contacts.
- As a company admin, I can create statuses for deals.
- As a user, I can sign in and update my profile.
- As a user, I can browse contacts and update contact details.
- As a user, I can view properties (let’s say that properties are already imported from a certain MLS).
- As a user, I can filter properties by category, city, street address.
- As a user, I can find properties by geo-coordinates.
- As a user, I can see property details. The details should contain a map.
- As a user, I can create a deal linked to a property.
- As a user, I can change deal status.
- As a user, I can see deals by statuses in a table view.
- As a user, I can close a deal.
Cost of workflow
When you calculate a real estate website cost, do not take into consideration just big features like MLS integration, but also the workflow that should be developed. A workflow is the most delicate and proprietary part of every custom project and it often requires more care than plain technical stuff.
The flow described above is basic compared to what seasoned real estate platforms have. It can be implemented within 6-8 weeks, which means $20,000 - $25,000 for the features plus $16,000 - $20,000 more if you need your real estate website to go with a custom graphic design.
If the system should contain an accounting module, the estimate will depend on the number of accounts and reports. It would be safe to say that each account requires about 2 weeks worth of work ($8,000).
Tools for homeowners
The third category of real estate apps describes tools for non-professionals. A good example of such a project is ListingDoor that allows people to get all required information and printed materials if they want to sell their homes without hiring a professional broker. In other words, the project facilitates the FSBO process, recommends a price and teaches users the best way to present their homes.
Professionals value data over user interface. Non-professionals need a handy and attractive design. So, the price of tools for non-professionals will consist of the workflow (which requires a custom estimate), design (about $6,000) and value-added features.
Those value-added features can be:
- integrating email services;
- tasks, assignments and reminders;
- personalized settings and saved searches;
- import/export data from/to Excel;
- loans, skip tracing, lead generation, etc.
Cost of a unique real estate tool
Prices of real estate tools are as different as the tools themselves. A plain tax calculator would take a day of work. But it would not make a standalone project. More likely, it could be part of a bigger real estate platform that provides a solution to a real-world problem, has a unique flow and a graphic design.
When we talk about successful projects like that, we can mention that they all have started from a minimum viable release and grown bigger afterwards. The first stage usually takes 2-3 months, which is $32,000 - $48,000.
Eventually, the cost will depend on peculiarities of the workflow and specifics of your project. If you need a personal estimate for your custom real estate website, do not hesitate to contact us. Direct communication and an individual estimate are always more indicative than bare numbers calculated for a generic real estate platform.