Spot
A natural language interface for querying the OpenStreetMap database to find locations which meet the search criteria described by the user.
URL
Description

Spot provides an interface for searching OpenStreetMap using everyday language as input (The Spot authors in their paper "SPOT: Bridging Natural Language and Geospatial Search for Investigative Journalists" state: "Although not specifically fine-tuned in languages other than English, the model appears to be able to interpret queries in a variety of languages, although this was not further tested.").
OpenStreetMap (OSM) labels a very large number of both natural and man-made features, e.g. buildings, infrastructure, bodies of water. Click the arrow for more on OSM...
These features are labelled according to OSM's own detailed classification system, e.g. town hall, lake, pylon, railway, ... and they can be used as search terms to express users' search criteria.
Spot is one amongst a range of OSM search tools which exists to allow users to query OpenStreetMap.
Query-Building Methods: These tools all run a search of OpenStreetMap in the same way, but they use different methods to build the user's search query:
some involve writing the query in a formal language, e.g. OverpassTurbo
some use a graphical interface to build the query, e.g. Bellingcat OpenStreetmap Search
Spot is characterised by the use of natural language to express the users' search query, and this is a relatively new approach.
Location Descriptors: The Spot user can describe a location search in terms of :
groupings of OSM map features, e.g. a pharmacy AND a traffic light
their relative distance from one another, e.g. within 70m of one another
the location of a geographical search area, e.g. in Cologne
e.g. Enter "Find a pharmacy and a traffic light and a bus stop and a bridge within 70m in Cologne" and, in response, Spot will return a map showing those candidate groups of features whenever they meet the user's distance criteria within the given geographical search area.
A Common OSINV Use Case for Spot...
...involves the user describing an image which they want to geolocate, and using Spot to generate and visually inspect potential solution locations around a particular geographic region like a named city. This example on the right from a social media platform shows a fountain and a tower block and a church labelled as being in London, UK. Features in the image are shown next to items providing scale, e.g. trees, and help estimate the distance between them.


So the user can write a natural language query like "Find a church within 100m of a building with 10 stories or more and water in the City of London" and Spot returns a map of the City of London, with all the churches which have tower blocks and water within 100m (see on the left). See Spot's Output Result Map below to learn how to use Spot to check these locations using StreetView photography.
What Spot Does
Spot works in 4 stages, from natural language input to streetview comparison of outputs.
1) Natural Language Query Input
Spot takes natural language prompts as input from the user, i.e. sentences written in everyday language, and converts these sentences into query language code with a formal structure (which is displayed to the user in a separate box in the interface) called Overpass Query Language.
2) Run Overpass Query on the OpenStreetMap Database
Spot uses the query language code to perform a search of a specified area on OpenStreetMap (by building an Overpass query and running it with the Overpass API).
This stage of the Spot service uses exactly the same process as the other OSM search tools.
3) Display Solution Features on a Map
Spot displays all the features which satisfy the user's input search on a map.
Spot does not sort and group features which relate to different candidate location solutions, so if there is more than one potential solution (which is often the case):
the existence of multiple candidate location solutions may not be apparent to the user
the number of candidate location solutions may well not to be apparent to the user
which discovered features belong to which proposed candidate locations may not be to discernible to the user
4) Offer A Choice of StreetView Options for Each Solution Feature
For each feature marked on the output map, Spot offers the user the option to open the location in any one of the largest three mapping services (Google, Yandex, and Bing) and additionally provides the option to directly view Google's street view information (mainly user-supplied ground-level photography) of the location, which is invaluable for geolocation purposes.
USE OF 'AI' TECHNOLOGY IN SPOT IS LIMITED TO CONVERTING THE LANGUAGE OF THE SEARCH QUERY INTO CODE, I.E. STAGE 1 ONLY
Limited AI Used: Spot's use of AI is limited to conversion of the user's natural language search into the formal Overpass Query Language which can be used to query OpenStreetMap. This conversion is done using a Large Language Model or LLM. The Overpass query is run by Spot via the Overpass API in exactly the same way as all the other OSM interface tools.
Search Is Not Using AI: The quality and speed of the search is not impacted by the Large Language Model AI technology in Spot.
AI Uses Most of the Search Time: N.B. Tests run by these authors on city searches in August and December 2025 suggest that between 72% and 94% of the time Spot takes to complete a search is used to run the Natural Language to Overpass Query Language conversion, NOT the Overpass query of OpenStreetMap itself.
The Interface
Spot's landing page includes a modal window (a pop-up) where example queries are continuously typed out word by word to guide the user on what their input should look like.

The Spot interface uses text boxes for input data, set over a background map for result display, and an additional Street View pop up window.

THE SEARCH PARAMETERS SUBWINDOW
Here, you can edit the OSM tags assigned to each feature in the search location. OSM tags define features of map elements which “add meaning to geographic objects.”
According to the TagInfo site for OSM tags, “there is no fixed list of those tags. New tags can be invented and used as needed. Everybody can come up with a new tag and add it to new or existing objects.”
A tag is made of two items: a key and a value. A key describes the category or type of feature. A value “provides detail for the key-specified feature." For example, an OSM key, “waterway”, can have multiple values that define this key. Some of them include a stream, ditch, river, drain, canal, and dam, among others. These can be adjusted depending on the needs of the search.
This feature is similar to Bellingcat’s OpenStreetMap search tool, which uses a custom setting for adding features, enabling adjustments via the OSM key and value.
SEARCH PARAMETERS EDITING SCHEMA

To confirm which result matches our required location, one must sift through all the available possibilities on the map.
Data Input, Output and Formats
Natural language description of a location to be found - includes geographical location (not just rectangular areas of interest but also irregularly-shaped regions, e.g. "The City of London") entities at the location, their relative proximity and the geographic search area.
OR
Overpass Turbo query search parameters - references entities with the appropriate OSM tags, describes their relative proximity with distances and provides the geographic search area.
Spot provides the facility to edit the search parameters, once input via the natural language text input box. The editing window is shown below:

Location map marking all features in candidate solutions which satisfy the search criteria, but not marking those groups individually, giving the number of candidate solutions for the search, or providing an approximate location for viewpoints which could include them all.
Note that Spot very clearly marks the overall search area for the query on its output map, and includes it in the map legend, which avoids confusion.
Geolocation of photograph/video imagery
Determination of the purpose, nature or further details of an entity seen in an image at a known location, e.g. the tall building is a place of worship.
NB Locations can be input as:
Proper Place Names of search regions, e.g. a city, or Geographic co-ordinates or a rectangular area of interest defined by the visible map region displayed in the Spot interface when pressing the "Search Current Area" button on the interface.
Enter a natural language sentence in the search box
OR
Use the search parameters box to adjust existing search features and their relative distances via a part text, part graphic subwindow.

The user can input the location part of the search in three ways, and these often return different results:
1) Enter the location in the search box on the top right hand of the screen (either as place name or co-ordinates) - the search will be conducted on a rectangle centred around a point representing the location.
2) Enter the location in natural language as part of the text query entered into the "Your search" box in the top left of the screen - the search will look for a polygon of geographic map boundaries and search within that.
3) Set the search region as the rectangular map area showing in the interface by pressing the "Search Current Area" button in the centre top of the screen.
Note that attempts to use different methods to define the same search area may produce different results in practice.
Spot’s Output Result Map
Using the City of London example mentioned above, “Find a church within 100m of a building with 10 stories or more and water in the City of London.”...

...the Spot output map displays all the features (churches, water, 10 storey buildings) which fit the search criteria, see below:

Clicking on a specific feature from one of the results shows its details, including a link to its OSM ID. This link opens a new tab to its location on the OpenStreetMap website, where you can find this feature (entity) and explore further. In this case, clicking on the church (highlighted in red) indicates that it's called "St-Giles-without-Cripplegate", its “denomination” is “Anglican” and was “rebuilt” in “1906.” Click on the OSM ID link for more details.
Cicking on a particular feature pops up...

...ID and detail output from OpenStreetMap

Spot does not directly identify specific locations which meet the input search criteria (unlike other tools, e.g. Bellingcat OpenStreetMap Search). Instead, it identifies all those features which belong to any and all locations which meet the search criteria, and draws them together on the same map. Therefore if there is more than one candidate location which meets the search criteria, it may not be possible to distinguish one from another, particularly if they are geographically close.
SPOT'S OUTPUT MAP DISPLAYS CANDIDATE FEATURES, NOT LOCATIONS
Spot delivers a map marked with all the features (Spot calls them Entities) which meet the search criteria, but not the actual associated locations. [Where there is only one candidate location, this is not an issue]. In queries with multiple solution locations, the single map without associations between features and candidate locations makes comparison with StreetView photography more difficult.
EXAMPLE OUTPUT WHERE FEATURES ARE MARKED ON THE MAP, BUT NOT GROUPED INTO SOLUTION LOCATIONS
CANDIDATE LOCATIONS MAPPED TO GROUPED FEATURES
If the features which meet the search criteria are grouped into candidate locations, this makes examination of multiple candidate locations (and cross-checking with other imagery) possible. Bellingcat OSM Search tool delivers this type of result, with a separate map for each candidate location. Spot does not output specific locations,or map them to located image features.
EXAMPLE OUTPUT WHERE FEATURES ARE GROUPED INTO SOLUTION LOCATIONS
A very useful and original time-saving feature in Spot, is the option to view any feature listed on the map legend using a variety of mapping services: Google Maps, Bing, and Yandex. Most importantly, direct access to Google StreeView is provided to support location verification through multiple mapping services. See example insert picture labelled Google Street View in the right hand image below.
Spot source imagery and Google StreetView can be compared side by side on screen:

Cost
Only sign up is required to use the tool.
Level of difficulty
Requirements
Any web browser and a sign-up through GitHub or Google are required to use the tool.
Limitations
All tools which query OpenStreetMap share the limitations which the structure of the OpenStreetMap tagging scheme imposes. Knowledge of the relationship between different but connected tagging categories is needed to perform efficient searches where one tag is deemed to be a subset of another, e.g. if the stream tag is a subset of river tag, if the river tag is a subset of the water tag. Searching with the tag 'stream' will return a smaller set of results than 'river', and likewise 'river' will return a smaller set of results than 'water'. Knowing which tag to use for a search affects the number and quality of search results returned, and therefore the speed of the overall search.
The format of Spot's output is imprecise relative to other tools which clearly group the features supporting each different solution location proposed in response to the user's query e.g. Bellingcat OpenStreetMap Search. Spot puts all the features supporting each solution location onto the same output map, without counting the number of different solution locations and indicating the supporting features for each one. So Spot does not answer the question "How many different locations satisfy my criteria in the given search area?"
Spot's valuable integrated street view access operates at the location of each feature on the solution map. Given that usually all the features mentioned in a query will be visible in the source image which is being geolocated, the view at a feature location is not likely to be a match. e.g. street view imagery taken at the central co-ordinates of the Eiffel Tower is unlikely to include images where the Eiffel Tower is clearly visible.
Spot traps certain conditions when input is difficult to intepret. Users can expect to see the following messages when this happens. Sometimes refreshing the browser and/or slightly rephrasing the query may overcome issues:




Behaviour of the LLM which converts the natural language to Overpass Turbo query language does not always produce identical results for the same query and very small (apparently semantically identical) changes in the input text can yield different solution results. Note in the example below that the particular phrasing of the query has resulted in Spot identifying two, rather than three, search features. The three relevant features are 1 "pylon", 2 "public transport" and 3 "water" but spot has only recognised two: "pylon" and "public transport near water". See how this is shown in the Map Legend - this is very likely to affect the results returned.

Our own tests showed that some queries may take time to retrieve results, since search time increases with the size of the search area, the number of search terms involved and the complexity of the logical combinations of search terms used in the query.
Spot is based on crowdsourced OpenStreet Map Data. Anything not found in OSM’s database will not be returned in results (but this does not mean that other results do not exist, they might just not have been added to OSM).
Results may not always be accurate and should be double-checked against other mapping tools like Google Maps, Yandex Maps, Bing Maps, including street-view photography.
Ethical Considerations
Spot’s Trusted AI principles page (see expandable reference below) states that “The user prompts that are entered in the Spot application are being used to re-train the model on real user queries to improve the user relevance of the AI model.” Furthermore, the same page says, “User control -- no publicly anonymous available access but certain monitoring of users will be done via login functionality.” Therefore, entering any information in the query or users’ login credentials may potentially end up revealing information about the individual or the investigation to the SPOT team.
In their Legal & Privacy Statement (see expandable reference below), the tool provider says that the data collected is usually kept for 30 days, after which it is deleted. However, it also reiterates that “under exceptional circumstances, we need them for a longer period for the above-mentioned purposes. In such a case, we erase the data as soon as they're no longer required.”
Spot also uses third-party services like Nominatim, Maptiler, Mapbox, Versatiles, OSM Tiles, Google Street View and MongoDB to make the application work when a user enters a search prompt. Make sure to check their Legal & Privacy Statement to understand how the data is processed.
Guides and articles
Spot offers a introductory tutorial on how to use the tool on its website:
There is also a more detailed video on Prompting:
And a video on viewing and interpreting Spot results:
Similar Tools
Bellingcat OpenStreetMap Search provides a graphical interface to support the user in building a query of OpenStreetMap data, helping users geolocate an image. The user interface allows one to search a defined location area for structures and objects within a specified maximum distance from each other, as visible in a photo. It is a much-simplified (and consequently restricted) interface version of the Overpass Turbo query language for OpenStreetMap
Like Spot, this tool:
exclusively searches the Open StreetMap database.
compiles an Overpass Turbo query from the user's input in order to run the search.
greatly restricts the potential format of the search query for the purposes of simplification: search for items which are within a given distance of one another inside a specified map region
presents output to the user in map format
UNlike Spot, this tool:
gives candidate location results as the geographical co-ordinates of one or more specific points on a map, whereas Spot does not return separate locations, but rather a single map containing all referenced search terms on the map which meet the search criteria, without grouping them per location.
provides a graphical interface for search term entry,
e.g. drag and drop labels to select search objects, numerical sliders to input distance and drop down selection lists for search operators and custom terms, whereas Spot uses a 'natural language' text input interface in the first instance.
Overpass Turbo provides a web based data mining tool for OpenStreetMap. For OSINV purposes, it is often used to filter location data. It is a complex query language, but is supported by a Query Wizard, similar in some ways to the Bellingcat OSM Search tool in that the Wizard simplifies query construction via a graphical interface.
Like Spot, this tool:
exclusively searches the Open StreetMap database.
compiles an Overpass Turbo query from the user's input in order to run the search.
greatly restricts the potential format of the search query for the purposes of simplification: search for items which are within a given distance of one another inside a specified map region
presents output to the user in map format
Candidate location results are given as the geographical co-ordinates of one or more specific points on a map, whereas Spot does not return separate locations, but rather a single map containing all referenced search terms on the map which meet the search criteria, without grouping them per location.
EarthKit is an Earth Sciences platform which has a number of functions which can be used for geolocation, one of which is "Overpass Query"
Like Spot, this tool feature:
claims to use a natural language processing interface to convert user descriptions of a location into an Overpass Turbo query.
allows users to view StreetMap imagery at/near locations returned by the search.
UNlike Spot, this tool:
provides a range of additional features, e.g. Geoestimation, Satellite Geolocalization, which support validation of results.
Tool provider
The tool was developed by DW Innovation, Germany.
Advertising Trackers
The tool uses “cookieless tracking”. Although the “tracking” feature can be disabled on the “Legal & Privacy Statement” page, users may want to consider taking precautions, such as using VPNs and browser extensions, to block tracking and prevent the potential revealing of their location.
Sophie Tedling and Anisa Shabir:
Last updated
Was this helpful?

