The cheapest and fastest trains from Amsterdam to Haarlem
Cheapest price
$7
Average price
$7
Fastest journey
13 m
Average duration
14 m
Trains per day
147
Distance
17 km
The best way to find a cheap train ticket from Amsterdam to Haarlem is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Amsterdam to Haarlem will cost around $7 if you buy it on the day, but the cheapest tickets can be found for only $7.
Of the 147 trains that leave Amsterdam for Haarlem on Sat, Jun 20, 147 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, Jun 20 the direct trains cover the 17 km distance in an average of 14 m but if you time it right, some trains will get you there in just 13 m .
On Sat, Jun 20 the slowest trains will take 15 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
21218:20 AM0h15Amsterdam Centraal8:35 AMHaarlem station$71One-way0 transfers
21259:20 AM0h15Amsterdam Centraal9:35 AMHaarlem station$71One-way0 transfers
22238:36 AM0h15Amsterdam Centraal8:51 AMHaarlem station$71One-way0 transfers
21238:50 AM0h15Amsterdam Centraal9:05 AMHaarlem station$71One-way0 transfers
232910:06 AM0h15Amsterdam Centraal10:21 AMHaarlem station$71One-way0 transfers
214522:46 AM0h13Amsterdam Centraal2:59 AMHaarlem station$71One-way0 transfers
214563:49 AM0h13Amsterdam Centraal4:02 AMHaarlem station$71One-way0 transfers
21218:20 AM0h15Amsterdam Centraal8:35 AMHaarlem station$71One-way0 transfers
21259:20 AM0h15Amsterdam Centraal9:35 AMHaarlem station$71One-way0 transfers
22238:36 AM0h15Amsterdam Centraal8:51 AMHaarlem station$71One-way0 transfers
Travel Information
Compare bus and train for Amsterdam to Haarlem
Omio recommends booking the train as it is the most popular option from Amsterdam to Haarlem among Omio's users. If you are prioritising price take the bus with prices starting from $6. For those with little time consider booking a train which can get you there in 19m. The ticket price range depends on the travel mode: a bus costs an average of $6, and a train costs an average of $7.
Distance: 10 miles (17 km)
Compare train with
Most popular Train | Bus | Driving |
|---|---|---|
$7 Average price | $6 Average price Cheapest | $4 Average price (fuel + tolls) |
49m Average total duration Fastest 19m Onboard + 30m Additional time* | 1h 0m Average total duration 30m Onboard + 30m Additional time* | 34m Average total duration (door-to-door) |
![]() Most popular train company | ![]() Most popular bus company | Your own car or car rental |
Direct Options | Direct Options | Direct Options |
This is compared to other travel options from Amsterdam to Haarlem:
A bus is $1 (€0.94) less than a train for this route with tickets for a train from Amsterdam to Haarlem costing on average $7 (€6).
Other travel options to Haarlem take longer:
Bus takes on average 30m.
You'll arrive about 15m sooner (19m by train vs 34m by car). Tickets start at around $7 (€6) compared to roughly $4 (€4) in fuel and tolls — so you're paying a bit more, but getting hours of your day back, a city-centre arrival, and the freedom to work or relax instead of drive.
Direct services run with NS International | IC Brussel, Intercity, Nederlandse Spoorwegen (NS).
Driving makes more sense if you're travelling as a group (where fuel costs split several ways), want to stop along the way, or need a car once you arrive.
Live departures
Amsterdam to Haarlem train times
The table below shows live departures for Amsterdam to Haarlem trains for today, Friday, June 19. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
2113 | 6:20 AM Amsterdam Centraal | 0h15 | 6:35 AM Haarlem station | 0 transfersDirect | |
4813 | 6:25 AM Amsterdam Centraal | 0h18 | 6:43 AM Haarlem station | 0 transfersDirect | |
2215 | 6:36 AM Amsterdam Centraal | 0h15 | 6:51 AM Haarlem station | 0 transfersDirect | |
5415 | 6:41 AM Amsterdam Centraal | 0h18 | 6:59 AM Haarlem station | 0 transfersDirect | |
2115 | 6:51 AM Amsterdam Centraal | 0h14 | 7:05 AM Haarlem station | 0 transfersDirect | |
4815 | 6:55 AM Amsterdam Centraal | 0h19 | 7:14 AM Haarlem station | 0 transfersDirect | |
2317 | 7:06 AM Amsterdam Centraal | 0h15 | 7:21 AM Haarlem station | 0 transfersDirect | |
5417 | 7:11 AM Amsterdam Centraal | 0h18 | 7:29 AM Haarlem station | 0 transfersDirect | |
2117 | 7:20 AM Amsterdam Centraal | 0h15 | 7:35 AM Haarlem station | 0 transfersDirect | |
4817 | 7:25 AM Amsterdam Centraal | 0h19 | 7:44 AM Haarlem station | 0 transfersDirect | |
2219 | 7:36 AM Amsterdam Centraal | 0h15 | 7:51 AM Haarlem station | 0 transfersDirect | |
5419 | 7:41 AM Amsterdam Centraal | 0h18 | 7:59 AM Haarlem station | 0 transfersDirect | |
2119 | 7:50 AM Amsterdam Centraal | 0h15 | 8:05 AM Haarlem station | 0 transfersDirect | |
4819 | 7:55 AM Amsterdam Centraal | 0h19 | 8:14 AM Haarlem station | 0 transfersDirect | |
2321 | 8:06 AM Amsterdam Centraal | 0h15 | 8:21 AM Haarlem station | 0 transfersDirect | |
5421 | 8:11 AM Amsterdam Centraal | 0h18 | 8:29 AM Haarlem station | 0 transfersDirect | |
2121 | 8:20 AM Amsterdam Centraal | 0h15 | 8:35 AM Haarlem station | 0 transfersDirect | |
4821 | 8:25 AM Amsterdam Centraal | 0h19 | 8:44 AM Haarlem station | 0 transfersDirect | |
2223 | 8:36 AM Amsterdam Centraal | 0h15 | 8:51 AM Haarlem station | 0 transfersDirect | |
5423 | 8:41 AM Amsterdam Centraal | 0h18 | 8:59 AM Haarlem station | 0 transfersDirect | |
2123 | 8:50 AM Amsterdam Centraal | 0h15 | 9:05 AM Haarlem station | 0 transfersDirect | |
4823 | 8:55 AM Amsterdam Centraal | 0h19 | 9:14 AM Haarlem station | 0 transfersDirect | |
2325 | 9:06 AM Amsterdam Centraal | 0h15 | 9:21 AM Haarlem station | 0 transfersDirect | |
5425 | 9:11 AM Amsterdam Centraal | 0h18 | 9:29 AM Haarlem station | 0 transfersDirect | |
2125 | 9:20 AM Amsterdam Centraal | 0h15 | 9:35 AM Haarlem station | 0 transfersDirect | |
4825 | 9:25 AM Amsterdam Centraal | 0h19 | 9:44 AM Haarlem station | 0 transfersDirect | |
2227 | 9:36 AM Amsterdam Centraal | 0h15 | 9:51 AM Haarlem station | 0 transfersDirect | |
5427 | 9:41 AM Amsterdam Centraal | 0h18 | 9:59 AM Haarlem station | 0 transfersDirect | |
2127 | 9:50 AM Amsterdam Centraal | 0h15 | 10:05 AM Haarlem station | 0 transfersDirect | |
4827 | 9:55 AM Amsterdam Centraal | 0h19 | 10:14 AM Haarlem station | 0 transfersDirect | |
2329 | 10:06 AM Amsterdam Centraal | 0h15 | 10:21 AM Haarlem station | 0 transfersDirect | |
5429 | 10:11 AM Amsterdam Centraal | 0h18 | 10:29 AM Haarlem station | 0 transfersDirect | |
2129 | 10:20 AM Amsterdam Centraal | 0h15 | 10:35 AM Haarlem station | 0 transfersDirect | |
4829 | 10:25 AM Amsterdam Centraal | 0h19 | 10:44 AM Haarlem station | 0 transfersDirect | |
2231 | 10:36 AM Amsterdam Centraal | 0h15 | 10:51 AM Haarlem station | 0 transfersDirect | |
5431 | 10:41 AM Amsterdam Centraal | 0h18 | 10:59 AM Haarlem station | 0 transfersDirect | |
2131 | 10:50 AM Amsterdam Centraal | 0h15 | 11:05 AM Haarlem station | 0 transfersDirect | |
4831 | 10:55 AM Amsterdam Centraal | 0h19 | 11:14 AM Haarlem station | 0 transfersDirect | |
2333 | 11:06 AM Amsterdam Centraal | 0h15 | 11:21 AM Haarlem station | 0 transfersDirect | |
5433 | 11:11 AM Amsterdam Centraal | 0h18 | 11:29 AM Haarlem station | 0 transfersDirect | |
2133 | 11:20 AM Amsterdam Centraal | 0h15 | 11:35 AM Haarlem station | 0 transfersDirect | |
4833 | 11:25 AM Amsterdam Centraal | 0h19 | 11:44 AM Haarlem station | 0 transfersDirect | |
2235 | 11:36 AM Amsterdam Centraal | 0h15 | 11:51 AM Haarlem station | 0 transfersDirect | |
5435 | 11:41 AM Amsterdam Centraal | 0h18 | 11:59 AM Haarlem station | 0 transfersDirect | |
2135 | 11:50 AM Amsterdam Centraal | 0h15 | 12:05 PM Haarlem station | 0 transfersDirect | |
4835 | 11:55 AM Amsterdam Centraal | 0h19 | 12:14 PM Haarlem station | 0 transfersDirect | |
| Saturday, June 20 | |||||
2385 | 12:06 AM Amsterdam Centraal | 0h15 | 12:21 AM Haarlem station | 0 transfersDirect | |
5485 | 12:11 AM Amsterdam Centraal | 0h18 | 12:29 AM Haarlem station | 0 transfersDirect | |
2185 | 12:20 AM Amsterdam Centraal | 0h15 | 12:35 AM Haarlem station | 0 transfersDirect | |
4885 | 12:25 AM Amsterdam Centraal | 0h19 | 12:44 AM Haarlem station | 0 transfersDirect | |
2287 | 12:36 AM Amsterdam Centraal | 0h15 | 12:51 AM Haarlem station | 0 transfersDirect | |
2389 | 1:06 AM Amsterdam Centraal | 0h15 | 1:21 AM Haarlem station | 0 transfersDirect | |
4889 | 1:25 AM Amsterdam Centraal | 0h19 | 1:44 AM Haarlem station | 0 transfersDirect | |
21452 | 2:46 AM Amsterdam Centraal | 0h13 | 2:59 AM Haarlem station | 0 transfersDirect | |
21456 | 3:49 AM Amsterdam Centraal | 0h13 | 4:02 AM Haarlem station | 0 transfersDirect | |
2211 | 5:36 AM Amsterdam Centraal | 0h15 | 5:51 AM Haarlem station | 0 transfersDirect | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Amsterdam to Haarlem by bus or train
Compare bus and train prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Jun 20
Jun 21
Jun 22
Jun 23
Jun 24
Jun 25
Jun 26
Jun 27
Jun 28
Jun 29
Jun 30
Jul 01
Jul 02
Jul 03
Jul 04
Jul 05
Jul 06
Jul 07
Jul 08
Jul 09
Jul 10
Why should you book Amsterdam to Haarlem trains with Omio?
Why book with Omio vs Intercity?
- Compare with other providers: On Omio, you can not only buy tickets for Intercity, but also compare tickets for the likes of NS International | IC Brussel, Intercity, NS | BUS or Deutsche Bahn to find the best option for your trip from Amsterdam to Haarlem.
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare Intercity with all available travel options, which are bus and train to ensure you get the best deal for traveling from Amsterdam to Haarlem.
Why book with Omio over Trainline or Wanderu?
- Compare with other providers: On Omio, you can also compare tickets for the likes of NS International | IC Brussel, Intercity, NS | BUS or Deutsche Bahn to find the best option for your trip from Amsterdam to Haarlem.
- Multiple modes of transport: Omio allows you to compare travel options including bus and train to find the ideal travel option from Amsterdam to Haarlem.
How far in advance should I book train tickets from Amsterdam to Haarlem?
Journey information
Overview: Train from Amsterdam to Haarlem
Trains from Amsterdam to Haarlem run on average 103 times per day, taking around 19m. Cheap train tickets for this journey start at $7 (€6) but you can travel from only $6 (€5) by bus.
There are 38 trains per day. The earliest train runs at 00:01, the last at 23:58. The fastest train covers the 10 miles (17 km) distance in 15m.
Distance 10 miles (17 km) |
Average train duration 19m |
Cheapest ticket price $7 (€6) |
Trains per day 103 |
Direct trains 38 |
Fastest train 15m |
First train 12:01 AM |
Last train 11:58 PM |
Cheapest Month May |
Cheapest Day Thu |
High Season Apr - Jun |
Low Season Jan - Mar |
Busiest Day Mon |
Least Busy Day Tue |
Best time to book 21 days |
Train companies: Intercity, NS International | IC Brussel, Deutsche Bahn, Nederlandse Spoorwegen (NS) from Amsterdam to Haarlem trainsIntercity, NS International | IC Brussel, Deutsche Bahn, Nederlandse Spoorwegen (NS) trains will get you between Amsterdam and Haarlem from $6 (€5). With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Intercity
NS International | IC Brussel
Deutsche Bahn
A Bordrestaurant (restaurant car) where you can sit and eat.
A Bordbistro (bistro bar) with snacks, hot meals, and drinks to-go.
At-seat service in 1st class: staff will take your order and serve food/drinks directly to your seat.
Regional trains (RE / RB / S-Bahn):
No onboard catering.
You’re welcome to bring your own food and drinks.
Not included by default.
You can add a seat reservation when booking (recommended for busy routes).
Costs around €4.90 per seat (or €5.90 if booked separately later).
First Class:
Yes, always included in the ticket price.
Allowed for free if they can fit in a transport box (max. size: hand luggage).
Must stay in the box for the entire journey.
Large dogs:
Require a separate (paid) ticket — typically half the price of a regular second-class ticket.
Must be leashed and wear a muzzle while on the train.
Cannot sit on seats.
Assistance dogs:
Travel free of charge.
Do not need a muzzle or leash if medically not required.
Allowed to accompany the passenger at all times.
Nederlandse Spoorwegen (NS)
FAQs: Trains from Amsterdam to Haarlem
Find answers to the most common questions about traveling from Amsterdam to Haarlem by train. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest train, the cheapest option, or tips for making the most of your visit at Haarlem, this guide helps you travel smarter and with confidence.

popular train stations
Popular train stations from Amsterdam to Haarlem
Most Amsterdam to Haarlem trains use the Amsterdam Centraal to Haarlem station pair, with some services arriving at Haarlem Spaarnwoude. Use this guide to compare Amsterdam and Haarlem train stations on this route, check city-centre transport, alongside checking practicalities like train station facilities and services.
Which Amsterdam station do trains to Haarlem leave from?
Getting to Amsterdam Centraal from Amsterdam city centre
Amsterdam Centraal train station facilities and services
Amsterdam Centraal has practical services for this route, including Wifi, Lockers, Parking, Dining, ATM, Taxis, Accessibility, WC, Hotel, Ticket Office, Bike Parking, Bike Rental, Car Rental, and Information Desk.
Food and drink
Food options include: De Broodzaak, Kyoto Sushi & Grill, Starbucks, The Doner Company, Wagamama, Wurst & Schnitzelhaus, Smullers, Burger King, Grand Café First Class, Burgerij, & many more
Wi-Fi and ATMs
Free WiFi in all station areas. ATMs are available at Amsterdam Centraal.
Tickets and information
Ticket office support is available at Amsterdam Centraal. Information desks are located in a small white building in front of the station's main entrance and at various points in the main passenger hall.
Luggage and lost property
Luggage storage is located on the ground floor near the front entrance in the eastern walkway, near the stairs to platform 2. Open daily from 07:00 to 01:00. .
Parking, taxis and toilets
Available at Amsterdam Centraal: Parking, Taxis, WC.
Bike and car services
Available at Amsterdam Centraal: Bike Parking, Bike Rental, Car Rental.
Accessibility
Accessibility facilities are available at Amsterdam Centraal: The station is fully accessible, including lifts to the platforms.
Shops, hotels and contact
Nearby hotels include NH Collection Amsterdam Barbizon Palace, Park Plaza Victoria Amsterdam, Art’otel Amsterdam.
Getting to Amsterdam Sloterdijk from Amsterdam city centre
Amsterdam Sloterdijk is 3 km from Amsterdam city centre. Public transport options include:
Amsterdam Sloterdijk train station facilities and services
Amsterdam Sloterdijk has practical services for this route, including Wifi, Lockers, Parking, Dining, ATM, Taxis, Accessibility, WC, Hotel, Lost and Found Office, Ticket Office, Bike Parking, Bike Rental, Car Rental, Information Desk, and Luggage Carts.
Food and drink
Food options include: Restaurant Helden, Grand Café Hermes
Wi-Fi and ATMs
Free. ATMs are available in the train station.
Tickets and information
Ticket office support is available at Amsterdam Sloterdijk. Information desks are located in the main hall.
Luggage and lost property
Luggage storage is available at Amsterdam Sloterdijk. Lost and found is available at the station.
Parking, taxis and toilets
Available at Amsterdam Sloterdijk: Parking, Taxis, WC.
Bike and car services
Available at Amsterdam Sloterdijk: Bike Parking, Bike Rental, Car Rental.
Accessibility
Accessibility facilities are available at Amsterdam Sloterdijk: Elevators, ramps.
Shops, hotels and contact
Nearby hotels include Holiday Inn Express Amsterdam - Sloterdijk, Mercure Hotel Amsterdam Sloterdijk Station, MEININGER Hotel Amsterdam City West.
Which Haarlem station do trains from Amsterdam arrive at?
Getting to Haarlem from Haarlem city centre
Haarlem train station facilities and services
Haarlem has practical services for this route, including Wifi, Lockers, Parking, Dining, ATM, Taxis, Accessibility, WC, Hotel, Lost and Found Office, Ticket Office, Bike Parking, Bike Rental, Car Rental, Information Desk, and Luggage Carts.
Food and drink
Food options include: Restaurant Morris, De Ripper
Wi-Fi and ATMs
Free. ATMs are available in the train station.
Tickets and information
Ticket office support is available at Haarlem. Information desks are located in the main hall.
Luggage and lost property
Luggage storage is available at Haarlem. Lost and found is available at the station.
Parking, taxis and toilets
Available at Haarlem: Parking, Taxis, WC.
Bike and car services
Available at Haarlem: Bike Parking, Bike Rental, Car Rental.
Accessibility
Accessibility facilities are available at Haarlem: Elevators, ramps.
Shops, hotels and contact
Nearby hotels include Amrâth Grand Hotel Frans Hals, Hotel Lion d'Or, Carlton Square Hotel.
Getting to Haarlem Spaarnwoude from Haarlem city centre
Haarlem Spaarnwoude is 2 km from Haarlem city centre. Public transport options include:
Haarlem Spaarnwoude train station facilities and services
Haarlem Spaarnwoude has practical services for this route, including Dining, ATM, Accessibility, and Bike Parking.
Food and drink
Food and drink options are available at Haarlem Spaarnwoude.
Wi-Fi and ATMs
ATMs are available at Haarlem Spaarnwoude.
Bike and car services
Available at Haarlem Spaarnwoude: Bike Parking.
Accessibility
Accessibility facilities are available at Haarlem Spaarnwoude.
Most popular train connections from Amsterdam
More options for your journey from Amsterdam to Haarlem
Here are some other resources that might have the information you need

