Data Products: Ready-Made Geodata Extracts for Analysis
Exporting an entire map isn't always what you need. Sometimes you only want schools in a district, or a city's road network, or all water bodies in a region. For such tasks, osm2cdr provides Data Products — ready-made thematic geodata extracts from OpenStreetMap.
What Are Data Products
Data Products are pre-filtered and structured geographic datasets. Instead of downloading an entire map and filtering objects yourself, you get a ready-made dataset with a specific theme.
osm2cdr offers 288 products: - 274 extracts — thematic datasets - 8 visual products — art maps and posters - 6 widgets — embeddable components
This article focuses on extracts — the main type of Data Products.
Extract Categories
Points of Interest (POI)
POI is the largest category. It includes everything mapped in OpenStreetMap as point or polygon objects:
Education: - Schools (amenity=school) - Kindergartens (amenity=kindergarten) - Universities and colleges (amenity=university, amenity=college) - Libraries (amenity=library)
Healthcare: - Hospitals (amenity=hospital) - Clinics (amenity=clinic) - Pharmacies (amenity=pharmacy) - Dentists (amenity=dentist)
Retail: - Supermarkets (shop=supermarket) - Shopping malls (shop=mall) - Restaurants and cafes (amenity=restaurant, amenity=cafe) - Gas stations (amenity=fuel)
Transport: - Bus stops (highway=bus_stop) - Metro stations (station=subway) - Parking lots (amenity=parking) - Bicycle parking (amenity=bicycle_parking)
Culture and Recreation: - Museums (tourism=museum) - Theaters (amenity=theatre) - Parks (leisure=park) - Sports facilities (leisure=pitch)
Buildings
The buildings extract contains polygons of all structures in the selected area:
- All buildings — full set with type, floors, material
- Residential — building=residential, building=apartments
- Commercial — building=commercial, building=retail
- Industrial — building=industrial, building=warehouse
Each building includes OSM attributes: building:levels (floors), building:material, roof:shape, addr:* (address).
Road Network
- All roads — complete road network (highway=*)
- Highways — highway=motorway, highway=trunk
- City streets — highway=primary, secondary, tertiary, residential
- Pedestrian — highway=footway, highway=pedestrian, highway=path
- Cycling — highway=cycleway, cycleway=*
Water Bodies
- Rivers and streams — waterway=river, waterway=stream
- Lakes and reservoirs — natural=water, water=lake
- Canals — waterway=canal
- Coastline — natural=coastline
Natural Areas
- Forests — natural=wood, landuse=forest
- Meadows — landuse=meadow, natural=grassland
- Wetlands — natural=wetland
- Beaches — natural=beach
Administrative Boundaries
- Countries — admin_level=2
- Regions — admin_level=4
- Districts — admin_level=6
- Municipalities — admin_level=8
Export Formats
Each extract is available in several formats:
| Format | Description | Best For |
|---|---|---|
| GeoJSON | Standard geodata format | Developers, web maps |
| CSV | Table with coordinates | Analysts, Excel, Google Sheets |
| XLSX | Excel with coordinates | Business users |
| Shapefile | Classic GIS format | GIS specialists, QGIS, ArcGIS |
| GeoPackage | Modern GIS format | QGIS, mobile apps |
How to Download an Extract
Via Web Interface
- Open osm2cdr.ru
- Select an area on the map (rectangle or polygon)
- Go to the "Data Products" section
- Choose a category and specific extract
- Select format (GeoJSON, CSV, XLSX)
- Click "Download"
Via API
import requests
API_URL = "https://osm2cdr.ru/api"
headers = {"X-API-Key": "ocd_your_key"}
# Download all schools in an area
payload = {
"product_id": "education_schools",
"bbox": {"xmin": 37.58, "ymin": 55.74, "xmax": 37.65, "ymax": 55.76},
"format": "geojson",
"limit": 10000
}
response = requests.post(f"{API_URL}/data/extract", json=payload, headers=headers)
data = response.json()
print(data["feature_count"], "features")
The product id comes from the catalog: GET /api/data/catalog lists products by category and GET /api/data/search?q=school searches by name and tags. Small selections arrive inline in the data field, large ones as a link in download_url.
Practical Use Cases
Walkability Analysis
Task: determine whether all residents of a neighborhood have a school within 800 meters.
- Download the "Schools" extract as GeoJSON
- Download the "Residential Buildings" extract as GeoJSON
- In QGIS, create an 800m buffer around each school
- Intersect buffers with residential buildings
- Buildings outside buffers are "underserved" areas
Transport Infrastructure Assessment
Task: calculate the density of public transport stops.
import geopandas as gpd
stops = gpd.read_file("transit_stops.geojson")
area_km2 = 25 # area size
density = len(stops) / area_km2
print(f"Density: {density:.1f} stops/km2")
# Urban standard: > 4 stops/km2
Green Space Inventory
Task: calculate the percentage of green areas in a city.
- Download "Parks and Green Areas" extract (GeoJSON)
- Load into QGIS
- Calculate total area
- Divide by total territory area
import geopandas as gpd
green = gpd.read_file("green_areas.geojson")
green = green.to_crs("EPSG:32637") # UTM for meters
total_green_m2 = green.geometry.area.sum()
total_green_km2 = total_green_m2 / 1_000_000
print(f"Green areas: {total_green_km2:.2f} km2")
Scoring: Automated Area Assessment
Besides extracts, osm2cdr offers 10 scoring engines for automated area assessment:
| Index | What It Measures | Scale |
|---|---|---|
| Walk Score | Walkability | 0-100 |
| Green Score | Green coverage | 0-100 |
| Transit Score | Transit accessibility | 0-100 |
| Safety Score | Safety | 0-100 |
| Education Score | Educational infrastructure | 0-100 |
| Health Score | Healthcare infrastructure | 0-100 |
| Commerce Score | Commercial infrastructure | 0-100 |
| Culture Score | Cultural infrastructure | 0-100 |
| Connectivity Score | Road network connectivity | 0-100 |
| Livability Index | Composite index | 0-100 |
These indices are calculated automatically from OSM data and are available for any point worldwide.
Data Quality
Data comes directly from OpenStreetMap. Quality depends on mapper activity in each region:
- Europe, Russia (major cities) — high coverage, up-to-date data
- Asia, Latin America — uneven coverage
- Africa — coverage mainly in major cities
Remember: OSM is a crowdsourced project. Data may be incomplete or outdated. For critical tasks, verification is recommended.
Conclusion
Data Products let you quickly obtain structured geodata on a specific theme without spending time filtering raw OSM data. The 274 extracts cover major categories of urban infrastructure, natural features, and administrative boundaries. Combined with 10 scoring indices, they provide a powerful tool for territorial analytics.