GraphHopper vs OSRM

A side-by-side comparison of two self-hosted maps & gis options — licensing, setup difficulty, resource needs, and what each one replaces.

Not the right match-up?
FeatureGraphHopperOSRM
CategoryMaps & GISMaps & GIS
LicenseApache-2.0BSD-2-Clause
LanguageJavaC++
Setup difficultyMediumHard
Min. RAM4,096 MB8,192 MB
Deploymentdocker, bare-metal, binarydocker, bare-metal
GitHub stars★ 6,619★ 7,955
First released20122012
ReplacesGoogle Directions APIGoogle Directions API

Why pick each one

Choose GraphHopper if…

  • Released under the Apache-2.0 license
  • First-class Docker support for quick deployment
  • Mature project with 6.6k GitHub stars
  • Written in Java
GraphHopper details

Choose OSRM if…

  • Released under the BSD-2-Clause license
  • First-class Docker support for quick deployment
  • Mature project with 8k GitHub stars
  • Written in C++
OSRM details

Frequently asked questions

Is GraphHopper or OSRM better?

Neither is universally better. OSRM has the larger community, while GraphHopper is simpler to set up (medium difficulty). Choose based on the comparison table above and your own setup.

Are GraphHopper and OSRM free and open-source?

Yes. GraphHopper is licensed under Apache-2.0 and OSRM under BSD-2-Clause. Both can be self-hosted at no software cost.

Can I run GraphHopper and OSRM with Docker?

GraphHopper: yes. OSRM: yes.

Related comparisons