← back to map

Methodology

How this map of New York City houses of worship was built — sources, limits, and what it does and doesn't show.

Data source

Every point on the map comes from OpenStreetMap (OSM), queried through the Overpass API on 2026-05-11. The query pulls every feature tagged amenity=place_of_worship inside the New York City administrative boundary (OSM relation 175905):

[out:json][timeout:180];
area(3600175905)->.nyc;
(
  node["amenity"="place_of_worship"](area.nyc);
  way["amenity"="place_of_worship"](area.nyc);
  relation["amenity"="place_of_worship"](area.nyc);
);
out center tags;

That returned 2,847 features inside the five boroughs. (An earlier version of this map used a bounding box and pulled in ~1,300 sites from Newark, Jersey City, Hackensack, Yonkers, and Nassau County — those have been removed.)

Classification

OSM tags each place of worship with a religion value (e.g., christian, jewish, muslim) and, optionally, a denomination (e.g., catholic, baptist, orthodox). The processing script (process.py) maps those raw values to eight top-level groups — Christian, Jewish, Muslim, Buddhist, Hindu, Sikh, Other, Unknown/unspecified — and to a curated list of denomination labels.

Notable classification choices:

What this map is

What this map is not

Known limitations of OSM tagging

Reproducing this map

Three files: overpass-query.txt (the Overpass query), process.py (classification + reduction), and index.html (the Leaflet front end). Run:

curl -X POST -d @overpass-query.txt https://overpass-api.de/api/interpreter -o raw.json
python3 process.py     # writes data.json
# then serve the folder over HTTP

Better sources for specific traditions

← back to map