FAQs#

Service Speeds#

What can affect speeds from Property?#

  1. The location of the client server.

    The distance between our server to yours will make a difference in overall speed. See here for our current server location list: https://www.melissa.com/company/server-locations-uptime

  2. The current load of our public cloud servers.

    We maintain and make available a large amount of processing capacity. However, all things being equal, the more usage at any given time will decrease overall speed during that time.

  3. Data Input Type.

    Freeform inputs can take longer to process than fielded inputs. MAK inputs will be the fastest, as it is a global identifier.

  4. Data Quality.

    If data is erroneous or malformed Melissa will attempt to correct it which can slightly increase response times.

  5. Number of Output Columns Selected.

    Requesting more response columns can result in slightly slower response times due to additional database lookups.

  6. Endpoint.

    LookupDeeds and LookupHomesByOwner can be slightly faster or slower than LookupProperty depending on the request configuration and the source data being looked up.

Throughput Speeds#

When to use real-time vs. batch processing#

  • Real-Time (Single Request)

    • Customer onboarding

    • CRM data entry

    • Checkout or form entry

    • Single record lookups

  • Batch

    • Processing a spreadsheet or database

    • Processing historical data

    • Scheduled processing

    • ETL transformations

What speeds can you expect?#

Real-Time Speeds#

Response times can vary, but the majority of requests should fall between 50 – 200 ms.

Batch Speeds#
Single-Threaded#

A single-threaded batch process is recommended when:

  • Fast development is a priority.

  • Processing small to medium-sized lists (150,000 records or less).

Expected processing speed is:

  • LookupProperty: 30,000 – 72,000 records per hour.

  • LookupDeeds: 25,000 – 50,000 records per hour.

  • LookupHomesByOwner: 25,000 – 50,000 records per hour.

Multi-Threaded#

Multi-threading involves sending multiple requests to the web server simultaneously and handling responses as they are returned. This approach can significantly improve performance by reducing the overall time required for processing.

A multi-threaded batch process is recommended when:

  • Processing large volumes of records quickly.

  • Handling large lists (250,000+ records).

We recommend starting with 10 threads to avoid rate limiting errors.

Expected processing speed is:

  • LookupProperty: 300,000 – 720,000 records per hour.

  • LookupDeeds: 250,000 – 500,000 records per hour.

  • LookupHomesByOwner: 250,000 – 500,00 records per hour.

Note

A single-threaded process remains a viable option for processing larger lists, though it may take longer compared to a multi-threaded approach.

Scaling and Rate Limiting#

Melissa utilizes dynamic scaling to improve throughput speeds during peak usage periods. This behavior ensures that our web services can adjust to changes in traffic and consistently provide optimal performance regardless of demand.

To maintain service stability and prevent excessive load, Melissa enforces rate limiting based on request volume and frequency. For more information, please refer to our rate limiting page: Rate Limiting.

Data Accuracy#

Why does your service report some fields incorrectly? I know that those fields should have different values.#

The nature of property data means that we rely on 3,000+ counties in the US to update their data and provide it to us. While we update our database weekly with any updates provided to us, we are beholden to the schedule of each individual office and cannot perform the updates before they provide this data.

In addition, not every office will report this accurately, and we may inherit the errors within the web service.

Data Append Rates#

How often can we expect certain fields to be populated (what is the append rate)?#

While we have some general statistics for append rates, certain property attributes are filled out more accurately and consistently than others. Append rates can vary greatly by county. These rates are available by request.

Data Update Frequency#

How often is the data updated?#

The data is updated weekly with whatever updates we receive, but the frequency of new data can vary greatly depending on:

  • If the individual counties update their data and provide it

  • If there are any quality issues identified with the updates from the county

Generally speaking, tax assessments may occur as frequently as twice-annually, or they may not even have a specific interval. Many counties only perform tax assessments when properties are sold, when there is a significant reduction in property value, or improvements are made (if reported by the owner) to the property.

Estimated Value#

How are the EstimatedValue fields calculated?#

Our EstimatedValue fields are based on an algorithm that correlates multiple accepted AVM models to create a statistically accurate AVM value.

This statistical model accounts for items such as:

  • Property Types (residential, commercial, vacant land, etc)

  • Property Characteristics (square footage, number of bedrooms and bathrooms, lot size, property age, etc)

  • Historical data and trends

  • Public records and tax/assessment data

  • Comparables (properties with similar attributes in neighboring areas)

The Tax fields are the latest values from the county assessor’s office (tax assessments).

  • Values from tax assessments can be quite a bit lower than the EstimatedValue.

  • EstimatedValue should be used in most cases, unless there is a specific requirement to get the assessed value from the county.