Timetable data last refreshed August 2026. Operators change schedules at short notice — always confirm when you book.
71 scheduled routes run from Selangor to Perak, operated by 16 coach companies. There are 173 departures a day, with fares from RM19.40.
- Departing from
- Selangor — 6 boarding points
- Arriving in
- Perak — 20 arrival points
- Operators
- 16 on this corridor
- Departures
- 173 a day
- Fares from
- RM19.40 one way
Book Selangor to Perak
Compare all 16 operators on this route with live seat availability.
Timetable and fares
Every scheduled service on this corridor is listed below, grouped by operator. Use the filter box to narrow a table to your boarding point, or click a column heading to sort by departure time or fare.
Please note: fares and timings are set by the operators and change at short notice. Everything here is a guide — reconfirm when you book.
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral Sani Bus Terminal | Lumut Bus Terminal | 5:00 PM | RM29.90 | 2+2 |
| Klang Sentral Sani Bus Terminal | Main Road, Ayer Tawar | 5:00 PM | RM27.40 | 2+2 |
| Klang Sentral Sani Bus Terminal | Seri Manjung Bus Terminal | 5:00 PM | RM29.20 | 2+2 |
| Klang Sentral Sani Bus Terminal | Stesen Bas Seri Iskandar (Bota) | 5:00 PM | RM25.50 | 2+2 |
| Klang Sentral Sani Bus Terminal | Terminal Amanjaya, Ipoh | 11:45 AM7:45 PM | RM21.60 | 2+2 |
| Klang Sentral Sani Bus Terminal | Terminal Bas Batu Gajah | 5:00 PM | RM20.60 | 2+2 |
| Terminal 17, Shah Alam | Lumut Bus Terminal | 5:30 PM | RM28.70 | 2+2 |
| Terminal 17, Shah Alam | Main Road, Ayer Tawar | 5:30 PM | RM26.20 | 2+2 |
| Terminal 17, Shah Alam | Seri Manjung Bus Terminal | 5:30 PM | RM27.90 | 2+2 |
| Terminal 17, Shah Alam | Stesen Bas Seri Iskandar (Bota) | 5:30 PM | RM24.40 | 2+2 |
| Terminal 17, Shah Alam | Terminal Amanjaya, Ipoh | 12:15 PM8:15 PM | RM20.40 | 2+2 |
| Terminal 17, Shah Alam | Terminal Bas Batu Gajah | 5:30 PM | RM19.40 | 2+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral Sani Bus Terminal | Kamunting Bus Terminal | 9:00 AM10:45 AM4:00 PM | RM50.00 | 1+2 |
| Klang Sentral Sani Bus Terminal | Kuala Kangsar Bus Terminal | 9:00 AM10:45 AM4:00 PM | RM50.00 | 1+2 |
| Klang Sentral Sani Bus Terminal | Simpang 4 Hutan Melintang | 3:30 PM9:15 PM | RM23.00 | 1+2 |
| Klang Sentral Sani Bus Terminal | Simpang Taiping | 9:00 AM10:45 AM4:00 PM | RM50.00 | 1+2 |
| Klang Sentral Sani Bus Terminal | Terminal Amanjaya, Ipoh | 9:00 AM10:45 AM4:00 PM | RM50.00 | 1+2 |
| Klang Sentral Sani Bus Terminal | Terminal Intan | 3:30 PM9:15 PM | RM23.00 | 1+2 |
| Terminal 17, Shah Alam | Kamunting Bus Terminal | 9:30 AM11:15 AM4:45 PM | RM50.00 | 1+2 |
| Terminal 17, Shah Alam | Kuala Kangsar Bus Terminal | 9:30 AM11:15 AM4:45 PM | RM50.00 | 1+2 |
| Terminal 17, Shah Alam | Simpang 4 Hutan Melintang | 3:00 PM8:30 PM | RM23.00 | 1+2 |
| Terminal 17, Shah Alam | Simpang Taiping | 9:30 AM11:15 AM4:45 PM | RM50.00 | 1+2 |
| Terminal 17, Shah Alam | Terminal Amanjaya, Ipoh | 9:30 AM11:15 AM4:45 PM | RM50.00 | 1+2 |
| Terminal 17, Shah Alam | Terminal Intan | 3:00 PM8:30 PM | RM23.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral | Bagan Serai | 8:30 AM12:30 PM3:00 PM10:00 PM | RM56.00 | 1+2 |
| Klang Sentral | Kamunting | 8:30 AM12:30 PM3:00 PM10:00 PM | RM51.00 | 1+2 |
| Klang Sentral | Parit Buntar | 8:30 AM12:30 PM3:00 PM10:00 PM | RM58.00 | 1+2 |
| Klang Sentral | Simpang Taiping | 8:30 AM12:30 PM3:00 PM | RM51.00 | 1+2 |
| Klang Sentral | Terminal Meru Raya (Ipoh Amanjaya) | 8:30 AM12:30 PM3:00 PM10:00 PM | RM40.00 | 1+2 |
| Terminal Shah Alam | Bagan Serai | 9:05 AM1:00 PM3:30 PM6:35 PM10:30 PM | RM54.00 | 1+2 |
| Terminal Shah Alam | Kamunting | 9:05 AM1:00 PM3:30 PM6:35 PM10:30 PM | RM50.00 | 1+2 |
| Terminal Shah Alam | Parit Buntar | 9:05 AM1:00 PM3:30 PM6:35 PM10:30 PM | RM56.00 | 1+2 |
| Terminal Shah Alam | Simpang Taiping | 9:05 AM1:00 PM3:30 PM6:15 PM | RM50.00 | 1+2 |
| Terminal Shah Alam | Terminal Meru Raya (Ipoh Amanjaya) | 9:05 AM1:00 PM3:30 PM6:35 PM10:30 PM | RM39.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral | Kamunting Bus Terminal | 9:45 AM9:30 PM | RM50.00 | 30s / 31S |
| Klang Sentral | Parit Buntar | 9:45 AM9:30 PM | RM60.00 | 30s / 31S |
| Klang Sentral | Terminal Meru Raya (Ipoh Amanjaya) | 9:45 AM9:30 PM | RM40.00 | 30s / 31S |
| Terminal Shah Alam | Kamunting Bus Terminal | 10:15 AM10:00 PM | RM50.00 | 30s / 31S |
| Terminal Shah Alam | Parit Buntar | 10:15 AM10:00 PM | RM55.00 | 30s / 31S |
| Terminal Shah Alam | Terminal Meru Raya (Ipoh Amanjaya) | 10:15 AM10:00 PM | RM38.00 | 30s / 31S |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral | Hentian Raya Bagan Serai | 6:30 PM | RM56.00 | 1+2 |
| Klang Sentral | Parit Buntar | 6:30 PM | RM51.00 | 1+2 |
| Klang Sentral | Simpang Taiping | 6:30 PM | RM53.00 | 1+2 |
| Terminal Shah Alam | Hentian Raya Bagan Serai | 7:15 PM | RM56.00 | 1+2 |
| Terminal Shah Alam | Parit Buntar | 7:15 PM | RM51.00 | 1+2 |
| Terminal Shah Alam | Simpang Taiping | 7:15 PM | RM53.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Kajang Bus Terminal | Gerik Bus Terminal | 9:30 AM9:30 PM | RM70.00 | 1+2 |
| Kajang Bus Terminal | Hentian Bas Kroh (Pengkalan Hulu) | 9:30 AM9:30 PM | RM75.00 | 1+2 |
| Terminal 17, Shah Alam | Gerik Bus Terminal | 9:00 AM9:00 PM | RM75.00 | 1+2 |
| Terminal 17, Shah Alam | Hentian Bas Kroh (Pengkalan Hulu) | 9:00 AM9:00 PM | RM78.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral | Simpang 4 Hutan Melintang | 10:15 AM3:00 PM5:30 PM8:30 PM | RM25.00 | 2+2 |
| Klang Sentral | Teluk Intan | 10:15 AM3:00 PM5:30 PM8:30 PM | RM25.00 | 2+2 |
| Terminal Shah Alam | Simpang 4 Hutan Melintang | 9:45 AM2:30 PM4:00 PM5:00 PM8:00 PM | RM25.00 | 1+2 / 2+2 |
| Terminal Shah Alam | Teluk Intan | 9:45 AM2:30 PM4:00 PM5:00 PM8:00 PM | RM25.00 | 1+2 / 2+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Kajang | Parit Buntar | 5:00 PM | RM55.00 | 1+2 |
| Kajang | Simpang Taiping | 3:45 PM5:00 PM | RM46.00 | 1+2 |
| Kajang | Terminal Meru Raya (Ipoh Amanjaya) | 3:45 PM5:00 PM | RM36.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral | Terminal Meru Raya (Ipoh Amanjaya) | 9:30 AM3:00 PM11:00 PM | RM35.00 | 1+2 |
| Terminal Shah Alam | Terminal Meru Raya (Ipoh Amanjaya) | 10:00 AM3:30 PM11:30 PM | RM35.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral Sani Bus Terminal | Terminal Amanjaya, Ipoh | 9:00 AM9:00 PM | RM45.00 | 1+2 |
| Terminal 17, Shah Alam | Terminal Amanjaya, Ipoh | 9:30 AM9:30 PM | RM45.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral Sani Bus Terminal | Terminal Amanjaya, Ipoh | 8:30 AM12:00 PM3:15 PM5:00 PM | RM44.00 | 1+2 |
| Terminal 17, Shah Alam | Terminal Amanjaya, Ipoh | 9:00 AM12:30 PM3:45 PM5:30 PM | RM42.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Klang Sentral | Terminal Meru Raya (Ipoh Amanjaya) | 11:00 AM9:00 PM | RM34.00 | SVIP 30 SEATER |
| Terminal Shah Alam | Terminal Meru Raya (Ipoh Amanjaya) | 11:30 AM9:30 PM | RM34.00 | SVIP 30 SEATER |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Terminal Shah Alam | Simpang 4 Hutan Melintang | 10:45 AM4:25 PM | RM25.00 | 1+2 |
| Terminal Shah Alam | Teluk Intan | 10:45 AM4:25 PM | RM25.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Terminal 17, Shah Alam | Gerik Bus Terminal | 9:30 AM9:30 PM | RM56.00 | 2+2 |
| Terminal 17, Shah Alam | Hentian Bas Kroh (Pengkalan Hulu) | 9:30 AM9:30 PM | RM65.00 | 2+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Terminal 17, Shah Alam | Parit Buntar Bus Terminal | 11:45 AM12:15 PM10:45 PM11:30 PM | RM55.00 | 1+2 |
| Boarding point | Arrival point | Departure times | Fare from | Seating |
|---|---|---|---|---|
| Kajang Bus Terminal | Terminal Amanjaya, Ipoh | 10:05 PM | RM30.00 | SVIP |
Boarding points in Selangor
- Terminal 17, Shah Alam
- Terminal Shah Alam
- Klang Sentral
- Klang Sentral Sani Bus Terminal
- Kajang
- Kajang Bus Terminal
Arrival points in Perak
- Terminal Amanjaya, Ipoh
- Terminal Meru Raya (Ipoh Amanjaya)
- Simpang Taiping
- Parit Buntar
- Simpang 4 Hutan Melintang
- Kamunting Bus Terminal
- Teluk Intan
- Gerik Bus Terminal
- Hentian Bas Kroh (Pengkalan Hulu)
- Terminal Intan
- Kuala Kangsar Bus Terminal
- Hentian Raya Bagan Serai
- Kamunting
- Bagan Serai
- Seri Manjung Bus Terminal
- Stesen Bas Seri Iskandar (Bota)
- Terminal Bas Batu Gajah
- Lumut Bus Terminal
- Main Road, Ayer Tawar
- Parit Buntar Bus Terminal
Frequently asked questions
How much is the bus from Selangor to Perak?
Fares start from RM19.40 one way. 16 operators run this route, so prices vary with coach class and departure time.
Which companies run buses from Selangor to Perak?
What time is the first and last bus from Selangor to Perak?
The earliest scheduled departure is 8:30 AM and the last is 11:30 PM. Exact times vary by operator and boarding point.