Category support in Nominatim

OpenStreetMap / Nominatim · GSoC 2026 contributor · May to August 2026

Nominatim answers “where is this?” for OpenStreetMap, but it had no real idea what a shop=bakery is. Over the summer I built a category model for it, backfilled it across a planet-sized database without stopping search, and wired it into queries.

Merged pull requests

  • #4106 Add ltree categories column for multi-tag OSM object support
  • #4146 Use ltree categories column instead of place_classtype tables
  • #4152 Fix 500 error on category search without matching results
  • #4163 Remove the place_classtype tables
  • #4164 Add category filters to the search API
  • #4166 Update the documentation for the category series

Writing about it

2026