GOAT (Geo Open Accessibility Tool)
| GOAT (Geo Open Accessibility Tool) | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Author: | Plan4Better | |||||||||||||||||||
| License: | GNU GPL v3 (gratis (self-hosted);subscription (cloud, 14-day free trial)) | |||||||||||||||||||
| Platform: | Web | |||||||||||||||||||
| Status: | Active | |||||||||||||||||||
| Languages: | German and English
| |||||||||||||||||||
| Website: | https://www.plan4better.de/en/goat/ | |||||||||||||||||||
| Source code: | plan4better/goat GitHub | |||||||||||||||||||
| Programming languages: | TypeScript, Python, PostgreSQL, and DuckDB | |||||||||||||||||||
|
Open-source WebGIS for spatial analysis, accessibility analysis, dashboards and collaborative mapping in the browser. | ||||||||||||||||||||
| ||||||||||||||||||||
GOAT - Geo Open Accessibility Tool from Plan4Better
| Type of site | Open-source WebGIS (browser-based) |
| URL | https://goat.plan4better.de/ |
| Launched | 2019 |
| Operator | Plan4Better GmbH |
| Available in | English, German |
| Written in | TypeScript (Next.js, React, MapLibre GL JS), Python (FastAPI), |
Plan4Better is a company based in Munich, Germany, that emerged from the Technical University of Munich (TUM). Its team combines web development, GIS, planning and design. Its main product is GOAT (Geo Open Accessibility Tool), an open-source WebGIS that runs in the browser. Planners, researchers, mobility experts and public-sector organisations use it to bring their spatial data together, with a built-in catalogue of more than 30,000 datasets. They run accessibility analyses on it (catchment areas, routing, heatmaps and public transport quality classes for walking, cycling, public transport and car) alongside general GIS operations, and they automate recurring workflows, build dashboards and print-ready maps, and work on projects together in real time. GOAT is hosted in Germany as a subscription service and can also be self-hosted. It was initially developed at the Chair of Urban Structure and Transport Planning at the Technical University of Munich (TUM), with funding from the German Federal Ministry of Transport's mFUND programme (GOAT, GOAT 3.0). The source code is fully open source. GOAT is mainly built with OpenStreetMap (OSM) data, and its team works actively to improve OSM data.
Getting in touch
Here you can find different sources through which you can contact us, follow our latest news and participate in our project. You are very welcome!
About GOAT
What GOAT does
GOAT is a WebGIS that runs in the browser. It brings spatial data, analysis and collaboration together in one platform, so planning teams do not need to install desktop GIS or build their workflows from scratch.
- Data: import your own data, connect OGC services, or use a built-in catalogue of more than 30,000 datasets, many of them derived from OpenStreetMap.
- Accessibility analysis: catchment areas (isochrones), travel times and routing, heatmaps, and public transport quality classes based on the Swiss ÖV-Güteklassen method. All of them work for walking, cycling, public transport (GTFS) and car.
- GIS operations: spatial joins, filtering, aggregation, buffers, clipping and multi-criteria evaluation.
- Workflows: build recurring analyses once without code and reuse them across projects.
- Results: interactive dashboards, print-ready maps and public sharing.
- Collaboration: several users work on the same project at the same time, with roles and permissions.
Planning questions
Some of the questions GOAT is used to answer:
- How many residents can reach a doctor, school or supermarket within 15 minutes on foot or by bike, and where are the gaps?
- How well is each part of a city or region served by public transport?
- Which bus stops should be retrofitted for step-free access first?
- Where should new shared-mobility stations or bus stops go to serve as many people as possible?
- How well connected are potential housing sites?
- How do retail locations and their catchment areas relate to population?
Examples from practice are listed on Plan4Better's references page.
Projects
- Hamburg (LSBG): an automated multi-criteria analysis that prioritises bus stops for step-free retrofitting.
- Munich, Harthof: a shared mobility concept for the district, based on data and stakeholder participation.
- stattbau München: accessibility analyses for sustainable housing and settlement projects.
- Bonn: a retail planning tool with accessibility and local supply analyses, built into the city's Urban Data Platform.
- Augsburg: public transport quality classes and walkability of the street and path network.
- ÖV-Atlas 2026 (Agora Verkehrswende): public transport quality classes for the whole of Germany on the 100 m census grid.
- Greenpeace: a study of public transport quality at municipal level across Germany.
- Stadtklimadashboard (BBSR, IÖR): a dashboard for planning and evaluating climate adaptation in German municipalities.
- VerkehrsInfo BW (NVBW): Baden-Württemberg's public traffic and mobility information platform, rebuilt on GOAT.
Example maps
More maps made with GOAT are in the gallery, for example:
- 15-minute city score for every municipality and state in Germany
- Travel time to GPs in Stuttgart and where new practices should go
- Kindergarten accessibility in Berlin, combining distance and capacity
- Public transport quality classes in Jena
- Walking access to EV chargers in Hannover, kept current by automated workflows
- Municipal heat planning in Rheinbach: heat demand and retrofit priorities
- Vienna's street trees and where the shade runs out
Open source
GOAT is open source under the GPL-3.0 licence and is built on open standards and open-source software. The code is on GitHub, where contributions are welcome. GOAT can be self-hosted free of charge. Plan4Better also offers it as a subscription service hosted in Germany, with a 14-day free trial at goat.plan4better.de.
GOAT relies heavily on OpenStreetMap data. Better OSM data in a region means better analysis results there, which is why the team contributes to OSM itself (see below).
OpenStreetMap and GOAT
Using OpenStreetMap data for GOAT
GOAT can practically use all sorts of data, however, the current data operation technique focuses on the use of OSM data. OSM was used as the main source of data since it is the most widely known open geospatial data source. OSM is also a standardized data schema with ubiquitous availability. The automatic setup already supports custom land-use and population data hence other types of data can be effectively inserted into the database.
A combination of SQL and Python scripts are used for the preparation of data. Besides the extraction of Points-of-Interest (POIs), public transport stops and land-use, the setup also allows for disaggregation of population data with the use of administrative, land-use and OSM data. During the disaggregation operation, GOAT can process administrative data in varying resolutions. Generally, the better the OSM building data and the administrative data, the better the result of the disaggregation. OSM is an open geospatial data-set hence the quality of data and analysis depend on the activity of the local OSM community. Consequently, this allows and invites every person and entity interested in using tools like GOAT to improve the local OSM-data.
How do we improve OSM data?
A big part of our job is to improve the OSM data. Our goal is to have a model as close to real life infrastructure as possible.
In order to reach that goal we:
- add missing path-connections
- add missing Points-of-Interest
- verify the information of existing Points-of-Interests
- check the tags of the objects while we look over for quality of the infrastructure through field visits or using Mapillary
- organize mapping parties with students
- supervise Bachelor Thesis, Study Projects and Master Thesis that are related to improve Open Data
Our OSM-contributions are currently mainly around Munich, Freiburg, Görlitz, and Aachen but also many other cities in Germany. But as GOAT can be transferred to any region worldwide, contribution in further cities will follow every time GOAT is transferred.
Objects that we map
- Points-of-Interest (e.g. Supermarkets, Pharmacies, Schools, Kindergartens)
- Opening hours of different amenities
- Building Types
- Building Levels
- Land-use
- Street Attributes (e.g. Surface, Smoothness, Sidewalk-Availability, Maxspeed)
- Street Crossings
OSM Contributors / Plan4Better-Team
| Name | OSM Username | Mapillary Username |
| Elias Pajares | EliasPajares | eliaspajares |
| Ulrike Jehle | UJehle | ujehle |
| Majk Shkurti | ||
| Dilan Koyunoglu | DilanKoyunoglu |
On Mapillary all team members are part of the GOAT community
Data Team Guidelines
Hashtags
We try to mark all our mapping-Changesets with:
- goatffb for Fürstenfeldbruck
- goatfr for Freising
- goatmuc for Munich
- goatmvv for MVV-Region
- goatfreiburg for Freiburg-Region
- goataachen for Aachen-Region