Custom IDX Solutions and Data feeds, understanding limitations


I thought I would outline our custom IDX process, as well as some limitations with data feeds, in the hopes to clarify some misconceptions and also hopefully address some points of frustration for certain IDX users.

Lets start at the beginning, the IDX feed

When a new customer signs up to have Real Estate Webmasters develop a custom IDX for them, the first thing we must do is gain access to the raw data feed provided by their MLS board. We are happy to educate and assist clients in accessing this raw data feed, but in the end, it is not REW that makes application for the feed, it is the broker.

The usual process:

  1. Broker contacts MLS board, requests a data feed
  2. MLS board sends contract / application forms for the broker, the agent (Where applicable) and the vendor (Real Estate Webmasters) to sign
  3. Once all documents are signed and approved by the MLS board and all fees for data are paid (REW does not resell MSL data, it is the client's responsibility (Broker or agent) to cover any fees required by the MLS board) access is then granted to REW for the data account for that particular client.

Now these feeds are provided in many different formats, ftp push, ftp pull, xml, RETS and several other combinations and configurations.

Parsing and updating data:

The feeds we are provided (And method of delivery) are always different from board to board. Thus each time we receive a data feed the first task for the REW programming team is to write a parsing script in order to take a typically sloppy data file, interpret it, and constuct a data base schema based on the data fields provided. Once we have parsed this data file, we now have the ability to populate our database. At this point we also have learned how the MLS system works in terms of accessing updates to the data, thus we create what is commonly referred to as a chron script to automate the process of updating new listings and getting rid of listings no longer offered by the system.

This entire process "typically" takes between 5-10 hours of programming time. However there are some systems that are so incredibly inefficient or poorly constructed that figuring out their convoluted delivery systems can take up to 25-30 hours. *Thankfully these convoluted systems are few and far between, and REW does provide a reduction in hours (Basically we write them off as R&D hours that can be recouped by future offerings, thus those 25-30 hours will typically be split between client cost and REW (The additional 15-25 that is)

Now is a good time to ask your "Is this included in feed" questions

Questions you need to ask are:

  • Are addresses included in the data feed? If no addresses are provided in the data feed, then your custom IDX will not have mapping available.
  • Are there multiple photos available in the field? This doesn't really effect the IDX production, it is just good to know ahead of time so that you aren't diappointed when your IDX is completed and you only have 1 photo per listing. If their is only one photo provided in your data feed, you can check with your MLS board to see if there are options to recieve multiple photos (Sometimes this is an additional fee) and sometimes there are alternate feeds.

If there is a second feed, you must decide whether you want to stick with your current feed with it's limitations or go through the discovery process with the new feed (This means basically a new job, you are still responsible for previous coding hours for first feed, but if you request a second alternate feed or combination of feeds, this is considered an additional work order.)

Most of the time, there is only one feed available so the of changing feeds or (if you want to get even more complicated) combining them is not an option and you must deal with the limitations of your data feed as it is outside of the control of REW, we cannot create results for data we are not provided. (Please see section at bottom of this article title "What can I do if my data feed sucks" for more information)

Ok so your database is created, your chron is working what is next?

The next task for the REW programming team is to create a "Non skinned" basic search solution. (Skinning refers to the design work that is applied once a custom IDX is completed to make it look pretty and fit with your website design)

This basic search is comprised of basically 5 sections:

  1. Basic Search
  2. Basic Listings
  3. Basic Details
  4. Basic Map Search (Where applicable)
  5. Basic Lead Management

Basic Search

A basic search page is the page where your visitors go to in order to enter their criteria for properties. This basic search typically includes selection options for: Area, property type, minimum and maximum price, bedrooms, bathrooms. An example of a basic search page is viewable at 

Basic Listings

A basic listings display is the results page you see after hitting "search" on the basic search page. Typically this page will be a clickable thumbnail of the property and a light version of the propery details: Price, Area, Beds, Baths, MSL # and a view details link.

Basic Details page:

This is a more detailed look at the property. Here we display the main photo in larger format (And mupliple photos if available) along with any other information requested for display by the client as long as that data is available in the data feed. This details page will also have links for save to favorites, calculate payments, inquire about property, and map property (Not available for feeds that do not contain addresses)

Basic Map Search

The basic search is where users can go to a Google map and search for properties based on area, property type, min and max price beds and baths. Users set their criteria and hit "update map" and a selection of available properties will display on a Google map (Note we limit the amount of properties displayed on the map due ot the fact that the more properties you want to display on a Google map, the longer it takes to load. We advise no more than 100 properties to be mapped at a time.

Basic Lead Management

Our basic lead managment deals with how the IDX system captures leads and what is done with those leads once they are submitted. By default, our lead capture will email the lead directly to the email the client provides as well as save that lead to the lead managment system in the backend of the clients REW website. (Note much more can be done at this point, such as having the system feed third party CRM programs ala top producer, but this programming time is additional and is not considered "basic" lead management integration.

What can I do if my data feed sucks?

Really the only thing you can do is take it up with your MLS board and their technology provider or department. REW is certainly willing to look at programmatic solutions to try to help reduce deficencies, but remember, we bill by the hour and every hour our programmers work trying to figure out a solution for you at your request is completely billable. This can be very expensive (Even more expensive than your original IDX) and even after exhaustive programmatic efforts the team may come to you with "We have explored every possible angle and option, and what you are requesting is not possible at this time due to limitations of your data feed. This can be very expensive and frustrating. Clients some times come back to us with: I didn't acheive the end result I wanted or envisioned, so why should I pay for the time? I get a little miffed when clients say this to us as we are a fee for service agency, we bill for our work by the hour (And incidentally we also have to pay our staff by the hour) so if a client is going to ask the staff to work for them researching and attempting a workaround (That sometimes will prove impossible) they must expect to pay for it. We will tell the client before hand "This will be billable time" it is up to the client once again to either accept the current limitation imposed by their feed or approve extra (Billable) time to research and attempt work arounds. Unless you have an unlimited budget, or there is a very obvious initial solution that will at least improve your IDX limitation, I do not suggest you do this as once again, we bill be the hour and this can get very expensive.  




Enjoy this post? Why not share with friends or add a comment of your own?


Great post - saved me an email to you guys. I'm getting closer to getting an IDX feed and you're near the top of my short list for getting this sucker integrated into my site.

Morgan Carey

Oh god, Im not done yet! This thing needs crazy editing!

Sam Dodd

Very imformative post. Are you guys working on making your IDX's so they all index in the SE's?


Interesting article... I think it is also important to understand, that when looking at mapping capabilities, that even if you do have a good data feed, with complete addresses, not all properties will map correctly. I was surprised to find out that on average only about 70% of the listing in our idx feed were able to geocode successfuly.

Morgan Carey

Yeah, that is the limitation of using an outside vendor such as Google for Geocoding, however good luck trying to come up with something better, Google has millions backing thier product, so if they can't do it noone can. A lot of it also has to do with Data entry, if addresses are not entered correctly on the MLS side, Google could be perfect and would still not map correctly as they can also only work with the data they are given.

Morgan Carey

Sam, our IDX's are already search engine friendly out of the box, all details pages are mod_rewritten. Take Calums IDX (Member above) Here is an example of a cached details page with a search engine friendly URL

Joshua Keen

"such as having the system feed third party CRM programs ala top producer, but this programming time is additional" Is it possible to have the IDX registration feed directly to Top Producer without using a Top Producer contact form?


Good question I'd like to know the same.


Yes. It is possible to have leads from the IDX registration form go directly into TP. I believe that there is also a way to use a custom contact form.

Robert Eckert

Yes, very informative indeed. It all pends on the data feed and what the agent wants on their site. I believe that this will be one of my next projects. Thank you for the introduction, I was looking everywhere for this type of information.

Keith Lutz

Excellent post, I wish I had found this weeks ago. As a suggestion, when a newbie comes on board, your sales staff, or program contact should include a link to this. I had no idea about IDX, and have alot better understanding after reading this article.

Morgan Carey

Yes I am pretty sure you can send it to TP without having to use their forms.


Morgan just stumbled across this.. thanks for the great post.


Hey Morgan, so what is the difference between a Google map search with the basic "option" and a customized one that Marc Rasmussen has?

Morgan Carey

Actually Marc's is about as basic as it gets :)


There is something wrong with the comments page and the security code. I submitted this question in the forum as every time I tried to submit it here, I got an error message that the code didn't match. I did, since my comment was posted. :)

Share your thoughts…