I'm a big fan of Komoot, but I was missing a way to batch export my planned routes. I have about 350 routes on there, so downloading them manually wasn't an option.

After some fiddling around and reverse-engineering their API, I came up with a tool to do this. You can find it on GitHub:

https://github.com/pieterclaerhout/export-komoot

Usage is prettry straightforward:

Usage of ./export-komoot:
-concurrency int
The number of simultaneous downloads (default 16)
-email string
Your Komoot email address
-filter string
Filter on the given name
-format string
The format to export as: gpx or fit (default "gpx")
-no-incremental
If specified, all data is redownloaded
-password string
Your Komoot password
-to string
The path to export to

It does a full download, knows how to do an incremental download and allows you to specify if you want to export .gpx or .fit files. Since it's written in Go, I couldn't resist in adding concurrency for the downloads to make it really fast.

On my machine, it does a full download of all my 347 routes in about 8.5 seconds. That's about 40 routes per second…