GraphHopper

From OpenStreetMap Wiki
Jump to navigation Jump to search
View on OSM Apps Catalog  
GraphHopper
v · d 
Author: GraphHopper GmbH
License: Apache License 2.0
Platforms: Linux, macOS, and Windows
Version: 11.1 releases (2026-09-29)
Language:
English
Website: graphhopper.com
Source code: graphhopper/graphhopper GitHub
Programming language: Java

Routing server and Java library

Features
Feature Value
Map Display
Display map yes
Map data
?
Source offline
Rotate map
?
3D view
?
Shows website
?
Shows phone number
?
Shows operation hours
?
Routing
Routing yes
Create route manually
?
Calculate route
?
Create route via Waypoints
?
Routing profiles car
Turn restrictions
?
Calculate route without Internet (Offline routing) yes
Routing providers
?
Avoid traffic
?
Traffic Provider
?
Navigating
Navigate yes
Find location
?
Find nearby POIs
?
Navigate to point
?
Navigation with voice / Voice guidance
?
Keep on road
?
Lane guidance
?
Works without GPS yes
Navigate along predefined route
?
Tracking
?
Monitoring
?
Editing
?
Rendering
?
Accessibility
?

GraphHopper is a fast and memory efficient open source routing library and server written in Java. Designed for the server, desktop, as well as for mobile devices.

It can make use of different algorithms such as Dijkstra, A* and Contraction Hierarchies. Due to its Apache License it is a business friendly alternative to existing routing engines and Android navigation software.

Deployments

GraphHopper's official deployment at GraphHopper Maps exposes a number of profiles and options. The basic options are integrated into OSM's Web front end. Public transit routing is currently only available for local instances. For source code, see graphhopper/graphhopper-maps GitHub.

OpenHistoricalMap has deployed GraphHopper with custom profiles for historical routing.

See also