Johor Bahru in 8 Hours: A Day Trip from Singapore by Bus
- Mario Ng
- 12 minutes ago
- 10 min read

1. Planning our short JB getaway 🗓️
While surfing TikTok, as we all do, my feed started showing more about Johor Bahru (JB) trips and how easy it is to get into JB by public bus. I have always travelled by car when entering Malaysia, and there was only once when I took the KTM train to JB. It was so fast, and I enjoyed that trip, but booking it is notoriously difficult due to the immense demand for train tickets. Hence, I always put off travelling to JB. After being convinced by TikTok that it was really easy, we decided to do it on a Saturday morning. The plan was then set in motion: wake up really early so that we would hopefully avoid the massive human traffic at the immigration counters. Here we go!
2. Crossing from Woodlands to JB: Step-by-Step Guide 🚌
5.30 am: Rise and shine!
6.15 am: We left home before the sun rose and took the MRT train to Woodlands MRT station. Thereafter, we walked to Woodlands Bus Interchange (the basement air-conditioned bus interchange) and took bus service 911 from Berth B12 to Woodlands Train Checkpoint.
7.00 am: We arrived at Woodlands Train Checkpoint bus stop. From here, we set out on a stroll to the immigration counters. It was clear that we were not in a rush. We saw everyone around us brisk walking while we were on a relatively relaxed pace. We kept to the left while the faster folks breezed past us. Thankfully, the experience at the immigration counters at Singapore’s side was quick and painless. We scanned our passports at the automated counters, and we were through in seconds. The experience was identical to what we would usually experience at Changi Airport.
We took the escalator down to the buses waiting to pick up passengers for the trip to Malaysia. As it was our first time, we started wandering towards the SMRT buses, but the queue was shocking. We decided to head to the other side, where the queue for Causeway Link buses was. The queue was empty, but the buses were nearly full and ready to move off. One staff member motioned for us to board a bus, and we managed to get on before it drove off.

Being on a bus, we were able to travel on the bus lane, and the journey to the Malaysian side took all of two minutes. And then we were off the bus. Everyone around us started rushing up the escalator, and we slowly walked up as well. Thankfully, the counters were empty and there was no queue at all. Phew! We headed to the automated counters and seconds later, we were officially in Malaysia!
7.25 am: The entire journey from the Woodlands Train Checkpoint bus stop to entering Malaysia took all of 25 minutes. I was extremely impressed with how fast it took. Having said that, we entered on a “normal” weekend, and we also entered really early to beat the jam. Now we know! We will probably try this again sometime in the future! Now to hunt for breakfast!
We crossed the overhead bridges to KOMTAR JBCC and booked a Grab to our breakfast destination.
3. Breakfast Stop #1: Gim Cheng Dim Sum Restaurant 🥢
8.00 am: We arrived at Gim Cheng Dim Sum! I usually head here for breakfast whenever I enter Malaysia, and this trip was no different. There is something unique about having a Chinese breakfast early in the morning, just as the sunniest sunshine hits you while you enjoy your breakfast, and the steam from the various dim sum dishes in the open-air kitchen blows against you.
Grab cost: RM28.12 (S$8.77 via credit card)
The dim sum place here works like this: You arrive at the store, and the staff will find you a seat. After you are seated, you head inside the store to order your items. The food is segregated into steamed and deep-fried items, with a special section at the cashier where you can request additional items. If it is your first time here, it might take some getting used to. I was initially lost until the staff kindly guided us through the ordering process. After we had decided, the staff quickly placed the baskets onto the tray. No fear if you have no idea what the various items are named besides har kao and siew mai. Simply point to the baskets, which was just what we did. They also helpfully lift some baskets so you can see more options. After you are done, they will also ask if you want some porridge. While I usually love having porridge at a dim sum place, I gave it a miss this time as I was trying not to overeat at one place that day.
And so, with six baskets of steamed dim sum, we were pretty satisfied. Of course, we had to order a pot of Chinese tea as well, as the weather was evidently not warm enough. Surprisingly, we had slightly more room in our stomachs, so we went for one more round, ordering a basket of char siew baos and chives dumplings. After consuming the second round, we were done! A great local breakfast to start our Saturday right!
Total cost: RM65.85 (cash)
Name of restaurant: Gim Cheng Dim Sum Restaurant
Google Maps: Gim Cheng Dim Sum Restaurant
Address: 2, Jalan Sagu 36, Taman Daya, 81100 Johor Bahru, Johor Darul Ta'zim, Malaysia
8.30 am: By the time we finished our breakfast, the queue was beginning to form. Thankfully, we were already done with breakfast. As the saying goes about early birds… Now, it was time to head for some well-needed caffeine!
We booked a Grab to a cafe that we chanced upon on Google Maps.
Grab cost: RM12.67 (S$3.94 via credit card)
4. Coffee Stop #2: Grind.jb ☕
9 am: We arrived at Grind.jb, a beautiful cafe situated amongst the landed properties at Jalan Sutera. I have no idea how I chanced upon this cafe, but I was glad I did. We were, in fact, the first customers that day, and we appreciated the cool air conditioning as we entered the cafe.
The cafe's decor was beautiful, and we felt very at home there, which could be the point, as it appeared to be in a landed property! A house cat was roaming around the cafe, and it clearly enjoyed the attention. Unfortunately, one guest who arrived later was afraid of cats, and the owner brought the cat to a locked area where it could not escape.

The cafe had different types of pastries, and as someone with a weakness for cakes and pastries — basically products made from flour — I had to choose just one to enjoy. That morning, they had items like lemon pound cake, choco banana, Earl Grey pound cake, and an orange pound cake. They also had croissants and bagels. We decided on a slice of orange pound cake. It was light and not too dense, and went perfectly with my cup of hot Americano. My partner had a Matcha Tonic, and it was delicious as well. It was a refreshing way to start the day, and as someone who enjoys fizzy drinks, the Matcha Tonic was perfect.
The ambience was fantastic as we chatted away, relaxed while looking at our phones, and took the time to sip our drinks. It was so welcoming that, with regret, we had to leave after we finished our cake and drinks. We will be back at this lovely cafe!
Total cost: RM40.70
Name of cafe: Grind.jb
Google Maps: Grind.jb
Address: 222, Jalan Sutera, Taman Sentosa, 80150 Johor Bahru, Johor Darul Ta'zim, Malaysia
Instagram: https://www.instagram.com/grind.jb/
5. Massage Stop #3: Thai Odyssey (Mid Valley Southkey) 💆♀️
10 am: After relaxing for an hour in air-conditioned comfort, we left the cafe and headed to Mid Valley Southkey. Upon arriving, we headed straight to Thai Odyssey for a well-needed massage. It was a Saturday, and that was reason enough for a relaxing massage. There is not much to say, except that we enjoyed a fantastic Thai Traditional Massage. And just like that, time flew by, and it was time for lunch.
Grab cost: RM7.52 (S$2.34 via credit card)
Total cost of massage: RM302.40 (S$94.24 via credit card)
Name of massage parlour: Thai Odyssey (Mid Valley Southkey)
Google Maps: Thai Odyssey @ The Mall, Mid Valley Southkey
Address: Lot No. TM-011, Third Mezzanine Floor, The Mall, Mid Valley Megamall, Southkey, 80150 Johor Bahru, Johor Darul Ta'zim, Malaysia
Website: https://thaiodyssey.com/
Facebook: https://www.facebook.com/ThaiOdyssey/
Instagram: https://www.instagram.com/thaiodyssey/
6. Lunch Stop #4: Flame & Fern Cafe 🥩
12:30 pm: We booked a Grab and headed to Flame and Fern Cafe, a great place that I found on Google Maps again. I did some research beforehand and saw that they served steaks. With plenty of reviews praising it as a great place for a meal, we were sold.
Grab cost: RM6.49 (S$2.02 via credit card)
12.45 pm: After a short Grab ride, we arrived. As it was lunch time, the place was packed! We had to queue for a while, but thankfully, we did not have to wait too long before the staff found us a place. We scanned the menu but did not need to consider too much, as we already knew what we wanted: the Steak and Eggs. It did not take too long before we were served with lunch. Cooked perfectly, we absolutely loved the affordable and reasonably-priced steaks. Served with a side salad that came with cherry tomatoes, crispy potato straws, and two perfectly cooked sunny-side-ups, it was probably the best meal of that day. But that is my opinion: someone who enjoys steaks and eggs, whether eaten separately or together. Béarnaise sauce is served as well, so if you need more flavour to your steak, by all means, dip it into some béarnaise sauce. The salad was fresh and refreshing, while the eggs were cooked perfectly. We loved the straw fries, and that is something that we do not often see in Singapore. There is much to learn from the great folks in Malaysia. The steak was obviously the star of the meal, and we enjoyed every single bite of the red meat.

While eating, we also looked around at other tables to see what they were eating. The brunch option, such as the Ultimate Big Breakfast, definitely looked good. Comprising sausage, mushrooms, straw fries, tomato, scrambled eggs, avocado, and bread, that is an American’s dream breakfast. I know that is my dream breakfast. Not that I am American, though!
Looking through the menu, there are just so many options to try. The Philly Cheese Steak Sandwich sounds good, while the Australian Wagyu Beef Burger and Woodfire Grilled Lamb Ribs feel like great options. We have to be back here again!
Total cost: RM150.80 (S$47.00 via credit card)
Name of restaurant: Flame & Fern Cafe
Google Maps: Flame & Fern Cafe
Address: 61, Jalan Chengai, Taman Melodies, 80250 Johor Bahru, 80250 Johor, Johor Darul Ta'zim, Malaysia
Instagram: https://www.instagram.com/flame_and_fern/
7. Afternoon Coffee Stop #5: Antipodean Gold (KOMTAR JBCC) ☕
1.30 pm: Not gonna lie, but we were starting to feel the effects of such an early morning already. Even though it was only 1.30 pm, our eyelids began to feel heavy. We decided to book a Grab and head back to Komtar JBCC so we could prepare to head home.
Grab cost: RM14.73 (S$4.59 via credit card)
1.50 pm: Of course, we only had a cup of coffee that day. That means it was time for a second cup of coffee. We saw Antipodean Gold and thought to try something new. I mean, Starbucks taste the same everywhere, anyway.

We ordered another cup of hot Americano and a glass of orange soda. I saw they were serving pound cakes and decided to have a slice of the blueberry pound cake. I was already missing the orange pound cake we had earlier at Grind.jb. Unfortunately, the blueberry pound cake did not taste that good. It was very dense and did not taste freshly made. Perhaps the one at Grind.jb had set the standards so high that almost anything other than their pound cakes was doomed not to taste as good. The coffee at Antipodean Gold was decent, and we enjoyed our drinks, though. We also saw plenty of guests enjoying the cafe's various food options. We may try out their main lunch options the next time we are here! I am sure we will enjoy their lunch menu!
Total cost: RM39.45 (S$12.30 via credit card)
Name of restaurant: Antipodean Gold
Google Maps: Antipodean Gold - Pork Free
Address: Lot G08-09, Ground floor, City Centre, KOMTAR, Bandar Johor Bahru, 80000 Johor Bahru, Johor, Malaysia
8. Returning to Singapore 🇸🇬
3 pm: After relaxing for an entire hour and finishing up our coffee, it was really time to head back home. We were getting too tired and we could not sustain our trip up north any longer. We started our long walk back towards the immigration.
3.25 pm: Within a short span of 25 minutes, we cleared the Malaysian customs, took the Causeway Link bus back to Singapore immigration, and cleared it as well! What a fast and efficient way to travel between Singapore and JB! We then joined the queue for CW1, the Causeway Link bus that brings people to Kranji MRT station, a short drive from the causeway.
3.35 pm: In ten minutes, we arrived at Kranji MRT station! This was definitely the fastest we had ever travelled between Singapore and JB. It is incredibly rare to achieve such fast times driving across the causeway. Unless you are really fortunate to meet no traffic jams at both the Singapore and Malaysian customs, it will usually take you a considerable amount of time to drive into Malaysia. On a weekend no less!
9. Post-Trip Thoughts & Lessons Learnt 💭
It was our first time heading to JB by public transport, and we learnt a lot of lessons. One of them: not heading to JB so early. Nevertheless, it was a fulfilling and fun trip, and we definitely gained more confidence to head back to JB again in the near future for another weekend trip. Next time, we will stay a night in JB as well, so we can enjoy more food options over the weekend. Till next time!
10. 💰 Cost Breakdown of Our 8-Hour Trip
Category | Amount (RM) | Amount (S$) |
Grab rides | 69.53 | 21.66 |
Food (Cash) | 106.55 | 31.80 (Approx) |
Food (Card) | 190.25 | 59.30 |
Massage | 302.40 | 94.24 |
Total | 668.73 | 207.00 |
Please note that this article may contain links to websites, where any subsequent purchases made may provide straitstravellers with a referral commission. This in turn helps support the running of this website. We appreciate your support thus far. Thank you!





























Comments