GeoPin’s geolocation accuracy depends entirely on the quality and coverage of its reference imagery. When you upload a photo, we match it against millions of street-level images with known GPS coordinates. Those reference images do not come from a single source — they come from more than eight, each with different strengths. Understanding where these images come from, and why we use a multi-source approach, explains a lot about how GeoPin works and why it works well.
Mapillary: the primary source
Mapillary is the world’s largest open street imagery platform. Founded in Malmo in 2013 and acquired by Meta in 2020, it hosts billions of images contributed by volunteers, mapping organisations and municipal agencies. Contributors capture imagery with smartphones, action cameras or dashcams, with each image automatically tagged with GPS coordinates, compass heading and timestamp.
For GeoPin, Mapillary’s strengths are clear:
Coverage density. Major Dutch cities have extensive Mapillary coverage, often with multiple captures of the same location at different dates and from different angles.
API quality. Mapillary’s Graph API provides structured access to image metadata and thumbnails, making it practical to index imagery systematically across the entire bounding box of the Netherlands.
Licence. Mapillary imagery is available under CC-BY-SA, which permits use in derivative works like GeoPin’s reference index as long as attribution is maintained.
However, relying on a single source introduces risks. Coverage gaps exist — some neighbourhoods, rural roads and new developments may have limited Mapillary imagery. A single platform’s policies, API availability or licence terms can change. This is why GeoPin takes a multi-source approach.
KartaView: the OpenStreetMap companion
KartaView, formerly OpenStreetCam, is closely associated with the OpenStreetMap community. Its Dutch coverage is thinner than Mapillary’s in absolute numbers, but it fills specific gaps. OSM contributors often photograph underrepresented areas — rural routes, new housing developments and industrial zones. These are precisely the locations where supplementary reference imagery is most valuable.
KartaView imagery is CC-BY-SA licensed. We crawl it alongside Mapillary, with deduplication on source and image ID.
Panoramax: the federated alternative
Panoramax takes a federated approach — multiple servers running compatible software, all discoverable via a shared API. Initiated by France’s IGN, it uses standard OGC/STAC APIs, making it interoperable with existing geospatial tooling.
Dutch Panoramax coverage is growing as government agencies contribute official survey imagery. Municipal authorities publishing street-level imagery through Panoramax instances provide high-quality, systematic coverage that complements the volunteer-contributed images.
Mapilio: independent coverage
Mapilio is an independent platform building coverage across Europe and Turkey, with imagery available under CC-BY-SA terms. Dutch coverage is more limited, but every additional source contributes images that may not exist anywhere else. In geolocation, marginal coverage improvements in underserved areas are disproportionately valuable — the jump from zero reference images to even a handful can mean the difference between no match and a reliable match.
Amsterdam Open Panorama: municipal precision
Amsterdam Open Panorama is qualitatively different from the other sources. These are official images from the City of Amsterdam, captured systematically as part of municipal operations. Coverage extends across Amsterdam itself plus Almere and Amstelveen.
What makes this source special is the methodology. Municipal survey vehicles capture 360-degree panoramic imagery along predetermined routes, ensuring consistent coverage of every street. The images are high-resolution, systematically geotagged with professional GPS equipment, and published as open data through Amsterdam’s data portal.
For Amsterdam — one of the most queried locations in our system — this source provides a reliability guarantee. Even if all volunteer platforms had coverage gaps in certain Amsterdam neighbourhoods, the municipal panoramas ensure comprehensive baseline coverage across the city.
The multi-source pipeline
Our indexing pipeline, documented in our data ingestion scripts, crawls the entire bounding box of the Netherlands (roughly 3.37 to 7.21 degrees longitude, 50.75 to 53.47 degrees latitude) in a grid of approximately 2-kilometre cells. For each cell, we query all five imagery sources, collect metadata and merge the results.
After deduplication — removing exact duplicates where the same image ID appears in multiple queries — we process each unique image through our CosPlace embedding pipeline. The resulting 512-dimensional vectors are uploaded to Cloudflare Vectorize, with metadata including source, coordinates, capture date and compass heading stored in Cloudflare D1.
The total number of indexed images across all sources runs into the millions. Mapillary contributes the largest share, but the other four sources collectively add substantial coverage, particularly in areas where Mapillary alone would leave gaps.
Why multiple sources matter
Using multiple imagery sources is not just about volume — it is about resilience and quality:
Temporal diversity. Different sources capture the same location at different times. This gives us seasonal variation (summer versus winter appearance) and temporal coverage (recent photos alongside older ones that may match historical search images).
Angle diversity. A Mapillary contributor on a bicycle captures a different perspective from a KartaView contributor in a car or an Amsterdam municipal survey vehicle at standard height. Multiple angles improve the chance that our reference set contains a viewpoint similar to the search image.
Redundancy. If one platform experiences API downtime during our weekly index update, coverage from the other four sources ensures our index remains complete.
Cross-source validation. When multiple independent sources have imagery at the same location and our embedding matches across sources, confidence in the result increases. Cross-source agreement is a signal of reliability.
Open data, open approach
All of GeoPin’s reference imagery comes from openly licensed sources. Users deserve to know that our reference data is ethically sourced — captured in public spaces by willing contributors or government agencies, and published under licences that permit this kind of use.
We maintain source attribution for all sources in our metadata and encourage users to consider contributing to these platforms. Every new photo uploaded to Mapillary, KartaView, Panoramax or Mapilio potentially improves geolocation accuracy for everyone. GeoPin exists because thousands of contributors chose to share their photos openly. We build on their work, and we aim to do it well.