ScotRail
Avanti West Coast

Prices from hundreds of train and coach companies

Go contactless with digital tickets on your phone

Travel to thousands of destinations in 45 countries

Dundee to Perth by train

It takes an average of 24m to travel from Dundee to Perth by train, over a distance of around 18 miles (30 km). There are normally 34 trains per day travelling from Dundee to Perth and tickets for this journey start from £9.20 when you book in advance.
Journey timeFrom 20m
PriceFrom £9.20
Distance18 miles (30 km)
Frequency34 trains per day
First train04:48
Last train22:49
Departure stationDundee
Arrival stationPerth
ChangesDirect trains available
Train operatorsScotRail

Dundee to Perth train times

Check out the next trains departing from Dundee to Perth for Tuesday 28th June 2022 using our handy timetable below, including platform and live travel information. You can view the full day timetable or search for a different date here.
DepartsArrivesDuration
08:50 09:10 20m, direct
09:42 11:04 1h 22m, 1 change
10:55 11:17 22m, direct
12:15 12:38 23m, direct
12:53 13:16 23m, direct
13:40 15:13 1h 33m, 1 change
14:58 15:18 20m, direct
15:15 15:40 25m, direct
16:47 17:07 20m, direct
17:40 19:10 1h 30m, 1 change

Travel from Dundee to Perth by train in 20m

Want to find out more about taking the train from Dundee to Perth? Look no further.

On average, it takes around 24m to travel from Dundee to Perth by train, and you'll usually find 21 trains running along the route daily for 18 miles (30 km). Good news! There are direct trains available on this route, so you can just make yourself comfortable as soon as you board the train and just enjoy the journey. This route is operated by ScotRail, which offers plenty of amenities on board, including free WiFi, power sockets and an at-seat catering service. You can reach your destination in just 20m on the fastest services.

Want to get the best train deals? Travel Off-Peak – we’ll highlight the cheapest Off-Peak train tickets from Dundee to Perth in our Journey Planner. If you’re travelling by train quite frequently, why not get a Railcard – you'll save up to 1/3 on eligible journeys for a whole year.

If you’re feeling ready to book, start a search for cheap train tickets with us today. Want to check if trains are running? Use our timetable to view live train times from Dundee to Perth.

Journey details

Want to know more about your journey from Dundee to Perth? We've compiled some of the most frequently asked questions by our customers to help you plan your journey.

How long does the train from Dundee to Perth take?

The average journey time by train between Dundee and Perth is 24 minutes, with around 34 trains per day. The journey time may be longer on weekends and holidays, so use our Journey Planner on this page to search for a specific travel date.

What's the fastest journey time between Dundee and Perth by train?

The fastest journey time by train from Dundee to Perth is 20 minutes.

How much does the train from Dundee to Perth cost?

Train ticket prices from Dundee to Perth can start from as little as £9.20 when you book in advance. The cost of tickets can vary depending on the time of day, route and class you book and are usually more expensive if you book on the day.

Is there a direct train from Dundee to Perth?

Yes, it is possible to travel from Dundee to Perth without having to change trains. There are 34 direct trains from Dundee to Perth each day. Though there may be fewer direct services available depending on your exact departure date.

What time does the first train from Dundee to Perth leave?

The first train from Dundee to Perth leaves at 04:48. Times and services may vary during weekends and holidays.

What time does the last train from Dundee to Perth leave?

The last train from Dundee to Perth leaves at 22:49. Trains that depart in the early morning hours or very late evening may be sleeper services, time and services may also vary during weekends and holidays.

What's the distance between Dundee and Perth by train?

Trains travelling from Dundee to Perth cover a distance of around 18 miles (30 km) during the journey.

Looking for more information?

If you’re looking for the return train journey, check out trains from Perth to Dundee.

Cheap train tickets from Dundee to Perth

Train tickets from Dundee to Perth start at £9.20 one way for a Standard Class ticket if you book in advance. As most UK train companies increase their prices as the departure date approaches, we’ll help you find the cheapest tickets.

Book in advance

Look out for Advance tickets – they usually come out up to 12 weeks before the departure date and can be cheaper than buying on the day. If you’re here a tad early, sign up for our Advance ticket alert today to get notified when your tickets are released.

Consider a Season Ticket

If you catch this train more than 3 times per week, you could save money with a Season Ticket. With annual, monthly and weekly options available, find out if a season ticket for Dundee to Perth is right for you.

Use your Railcard

National Railcards offer a 1/3 off eligible train tickets in the UK and can be a great investment if you travel a few times or more in a year. Find out how you can save with a National Railcard here.

Split your tickets

Download our app to find split tickets — courtesy of SplitSave, our handy feature which 'splits' your train tickets where possible to find you a better deal. Learn more about the clever tech behind split tickets, and how to spot SplitSave discounts in our app.

For more money-saving tips on UK and European train travel, read our cheap train tickets guide.

Advance adult single fare. Excludes booking fee. Prices seen by Trainline customers in the last 30 days. Availability limited.
Average savings on fares booked prior to day of travel vs full price fares on day of travel in the UK. Subject to availability. Excludes coach.

Europe’s leading train and coach app

We help customers across Europe make more than 172,000 smarter journeys every day.