Frankfurt am Main to Heidelberg by train Find train times and tickets

Prices explained

Prices explained

At Loco2 we believe in price transparency. We use real data from Loco2 searches to estimate the cheapest fares you should be able to find for your journey.

The cheapest price is the lowest fare we've ever found for this journey. These prices can usually be found by searching when booking opens but they vary due to availability, which depends on factors like the day of the week or time of year.

More popular journeys include 30 day advance and 7 day advance prices. These are updated every two weeks using prices we've found by searching exactly 7 or 30 days from the most recent Thursday (we picked Thursday because this is when average prices are usually found).

30 day and 7 day prices fluctuate based on demand and availability at the time of search. For example, the 7-day price in summer is likely to be more expensive than the same journey in winter.

Prices are sourced in GBP and converted to other currencies using the daily market exchange rate.

We're always seeking to improve how price-checking works, and we welcome feedback on how we can make it better.

More advice about how to find the cheapest tickets can be found in our infographic.

  1. Cheapest Price $23.14
  2. 30 day advance $23.14
  • First train
    05:20
  • Last train
    00:09
  • Avg changes
    0
  • Fastest journey
    48m

Travelling from Frankfurt am Main to Heidelberg by train

Fast trains from Frankfurt am Main to Heidelberg take around 48 minutes, covering a distance of approximately 78 kilometres. There are frequent services on the rail route between Frankfurt am Main and Heidelberg.

Are there direct trains from Frankfurt am Main to Heidelberg?

Direct trains from Frankfurt am Main to Heidelberg have been found.

We usually find around 36 direct trains on the route from Frankfurt am Main to Heidelberg every weekday.

Trains are typically more frequent on weekends, when we found around 40 departures.

How long is the train journey from Frankfurt am Main to Heidelberg?

The Frankfurt am Main to Heidelberg train travel time is normally about 48 minutes, whatever time you make the journey.

What are the Frankfurt am Main to Heidelberg train times and schedule?

On weekdays the earliest direct train to Heidelberg is usually scheduled to depart Frankfurt am Main around 05:20 and the last train is around 00:09. At weekends the first train of the day leaves Frankfurt am Main around 04:20, and the last at 00:09.

What's the Frankfurt am Main to Heidelberg train price?

The cheapest tickets we've found for trains from Frankfurt am Main to Heidelberg are $23.14, and there isn't much difference in price depending on when you book.

Trains departing 30 days in advance will cost around $23, and when booking 7 days in advance the price is usually the same. Booking on the day of travel may be more expensive.

When to book Frankfurt am Main to Heidelberg train tickets?

Trains in Germany usually open for booking around 6 months in advance. If booking is not yet open for your dates then you can set a booking alert to receive an email on the day that the cheapest tickets are released for your journey from Frankfurt am Main to Heidelberg by train.

Which train companies operate between Frankfurt am Main and Heidelberg?

More than one train company operates on the route from Frankfurt am Main to Heidelberg, so you’ll be travelling with one or more of the following rail operators:

  • Eurocity (EC)
  • Intercity
  • Intercity-Express (ICE)
  • Regional-Express
  • Regionalbahn

You can check which train you’ll be travelling on by looking for the train name in search results.

Find journey information for Heidelberg to Frankfurt am Main

Other journeys to Heidelberg View all journeys to Heidelberg

Search accommodation in Heidelberg

Country guide

Trains to Germany

Read our country guide

Child and youth passengers

The definition of "Child" and "Youth" varies by country and operator. This is why we ask for the age of young passengers.

Sometimes children below a certain age can travel without a seat for free. If you want to guarantee a seat for child passengers, enter '6' as the age of the child.

Read more about child and youth passenger ages. See also youth discounts and railcards.

Log in / Register

  1. We'd love to send you (occasional) emails with travel tips, sales and special offers. You can change your preferences at any time.
  1. By registering you agree with our privacy policy.