// Adds dimensions UUID, Author and Topic into GA4
Tuesday, June 16, 2026
30 C
Singapore

Less than 1 hour travel time back to Singapore from JB as Easter long weekend winds down

SINGAPORE: Following days of heavy congestion as Singaporeans flocked to the other side of the Causeway during the Good Friday-Easter long weekend, traffic has finally eased along the Woodlands and Tuas checkpoints.

Travellers could return to Singapore in less than an hour, as Easter Sunday wound down, from around 7.30 pm onwards.

According to the Checkpoint.sg mobile application, the estimated travel time from Johor Bahru to Woodlands checkpoint on Sunday (9 Mar) at 7.30 pm ranged from 110 minutes to 170 minutes. The travel time during the same period for those arriving at the Tuas second link ranged from 50 to 75 minutes.

The land border crossings were more hectic just hours before. Photos posted by netizens showed snaking queues around 5 pm, but the traffic surge was nothing compared to the congestion commuters faced on Thursday and Friday.

Heavy congestion at Tuas and Woodlands checkpoints continues with 5-hour jam on Good Friday

Massive 3.5-hour jam along Woodlands and Tuas checkpoints on Good Friday eve

- Advertisement -

Hot this week

60-year-old man charged after allegedly dismantling neighbours’ CCTVs and throwing it from the 12th floor

A man in his sixties played pranks on his neighbor, removing the CCTV camera outside the neighbor's door and throwing it from the 12th floor. He also smashed a window with a glass ball, causing the...

‘Singapore stands ready to assist’ — PM Lawrence Wong expresses ‘condolences on tragic loss of lives and destruction caused by earthquake in Philippines’

Prime Minister Lawrence Wong extends solidarity to the Philippines as Singapore monitors the aftermath and prepares to assist if needed

Popular Categories

document.addEventListener("DOMContentLoaded", () => { const trigger = document.getElementById("ads-trigger"); if ('IntersectionObserver' in window && trigger) { const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { lazyLoader(); // You should define lazyLoader() elsewhere or inline here observer.unobserve(entry.target); // Run once } }); }, { rootMargin: '800px', threshold: 0.1 }); observer.observe(trigger); } else { // Fallback setTimeout(lazyLoader, 3000); } });
// //
Enable Notifications OK No thanks