This is a summary view of OpenAddresses data. {{ counts.addresses|nice_integer }} addresses were processed {{ last_modified.strftime('%A, %b %d, %Y') }}. Out of {{ counts.sources }} total sources, {{ counts.processed }} were completed. {{ counts.sources - counts.cached }} sources failed cache, {{ counts.cached - counts.processed }} cached but not processed. To help complete more sources, look for “missing conform” below and add a conform object based on the included sample data.

The latest summary can always be found at data.openaddresses.io.
A plain text version of data on this page can be found at state.txt.

{% set first_processed = False %} {% for state in states %} {% if not first_processed and state.processed %} {% set first_processed = True %} {% elif first_processed %} {% set first_processed = False %} {% endif %} {% endfor %}
Name Type Cached? Processed? Problems
{{ state.shortname }} {{ state.type }} {% if state.cache %} {{ state.cache_date }} {% elif state.cache_date %} {{ state.cache_date }} {% else %} – {% endif %} {% if state.processed %} csv {% else %} – {% endif %} {% set suggest_conform = False %} {% if not state.processed %} {% if state.skip %} source says to skip {% elif not state.cache %} cache failed ( log ) {% elif not state.conform %} source is missing conform {% set suggest_conform = True %} {% else %} unknown ( log ) {% endif %} {% elif not state['coverage complete'] %} source has incomplete coverage {% endif %} {% if state.sample and state.sample_data %} {% else %} No sample data ( log ) {% endif %}