We are regularly asked what's the best way to cycle from Amsterdam to Haarlem - and back. Here is the most pleasant bike-friendly route. As it is one of Holland's busiest urban areas this is a functional route, not a route for sightseeing.
The historic town of Haarlem and the surrounding coastal area are well worth a visit. Haarlem is only 25 km from the centre of Amsterdam, so within easy cycling distance if you want to get there the Dutch way: by bike. But be warned, the area between Amsterdam and Haarlem is one of Holland's busiest areas, with suburbs, industrial estates, motorways and main airport. We have tried to find you the most pleasant bike-friendly route through this less pretty part of Holland.
Haarlem Dunes Cycle Route
Are you looking for a picturesque countryside cycle route with touristic highlights? Then we recommend our must-do Haarlem Dunes Cycle Route (40 or 29 km). This route combines the historic centre of Haarlem with windmills, typical Dutch polders, one of Holland's best dunes nature reserves and the popular seaside resort of Zandvoort.
If you cycle from Amsterdam to Haarlem via Halfweg and Haarlemmerliede, you can pick up our Haarlem Dunes Cycle Route in Penningsveer. When you get to Grote Markt in Haarlem, you can pick up the route back to Amsterdam via Badhoevedoep. If you don't want to cycle all the way from Amsterdam to Haarlem and back, there is a regular train service you can use (bikes allowed outside rush hour). See: Getting around Holland by rail.
For more cycle routes in the Amsterdam region, go our overview of day trips.
Amsterdam to Haarlem - via Halfweg and Haarlemmerliede
|Distance:||23 km (1h30)|
|Starting point:||Amsterdam Centraal train station |
- Bicycle rental
- Car parking
|Route:||This route follows the numbered cycle network.|
|GPS:||Download this route as a GPX file|
Haarlem to Amsterdam - via Badhoevedorp
|Distance:||26 km (1h45)|
|Starting point:||Haarlem, Grote Markt|
|Route:||This route follows the numbered cycle network for the most part.|
|GPS:||Download this route as a GPX file.|