4.9 stars on
(309,614 reviews)

Vietnam invites you to explore a tapestry woven from vibrant culture, rich history, and stunning landscapes. Imagine wandering through the lively streets of Hanoi, where the aroma of sizzling street food fills the air, or cruising on the tranquil waters of Ha Long Bay, surrounded by emerald islands. This enchanting country has earned its fame not only for its mouthwatering cuisine—think of the delightful pho and crispy banh mi—but also for its iconic sites.
Did you know Hoi An, a UNESCO World Heritage site, dazzles with its well-preserved architecture and enchanting lantern festivals? Nature lovers will find a paradise in the terraced rice fields of Sapa and the breathtaking mountains of the north, while the lush Mekong Delta reveals a vibrant ecosystem ripe for exploration. An astonishing fact: Vietnam houses Son Doong, the world's largest cave, where you can discover an entire ecosystem within its depths!
With TripWays, uncover the heart of Vietnam through immersive experiences, from bustling markets to artisanal workshops. Affordable multi-day tours make it easier than ever to create your perfect journey. So grab your backpack—Vietnam awaits with adventures around every bend!

The Best Tours Activities Transportation Day Tours Things To Do Events Festivals in Vietnam

Multi-Day Tours

(0)
3 days
3 Nights and 2 Days Sapa Trekking Tour by Train from Hanoi
(0)
2 days
From Hanoi to Sapa 2 days Tour by Cabin Bus - 3 * Hotel Overnight
(4)
2 days
From Hanoi: 2-Day Sa Pa Homestay Trekking Tour by Cabin Bus
(0)
3 days
Hanoi Sapa 3 Days Trekking Tour by Cabin Bus, Hotel & Homestay
(5)
2 days
Sapa 2 Days 1 Night from Hanoi By Cabin Bus + 4 * Hotel Overnight
(0)
3 days
From Hanoi: Ninh Binh Tour and Ha Long Bay Cruise 3-Day Trip
(0)
2 days
From Hanoi: Ninh Binh Tour and Ha Long Bay Cruise 2-Day Trip
Chat Icon

Login

' ); // Store reference to the popup window.googleSignInPopup = tempPopup; // Fetch the Google auth URL via AJAX var xhr = new XMLHttpRequest(); xhr.open('GET', authUrl, true); xhr.onreadystatechange = function() { if (xhr.readyState === 4) { if (xhr.status === 200) { try { var response = JSON.parse(xhr.responseText); if (response.success && response.data && response.data.redirect_url) { // Redirect the popup to the Google auth URL tempPopup.location.href = response.data.redirect_url; // Focus the popup tempPopup.focus(); // Start polling for navigation events var popupCheckInterval = setInterval(function() { if (!tempPopup || tempPopup.closed) { clearInterval(popupCheckInterval); // If the popup closed and we haven't received a message, // but we've set the googleSignInSuccess flag, refresh the page if (window.googleSignInSuccess && !window.googleSignInMessageReceived) { console.log('Popup closed with successful login, refreshing page'); window.location.reload(); } return; } try { // Check if popup URL contains accounts.youtube.com/accounts/SetSID // or if it contains /account - both indicate successful auth var popupUrl = tempPopup.location.href; if (popupUrl.includes('accounts.youtube.com/accounts/SetSID') || popupUrl.includes('/account')) { console.log('Detected successful auth via URL check'); // This indicates successful authentication window.googleSignInSuccess = true; // Force close the popup tempPopup.close(); // Refresh the page setTimeout(function() { window.location.reload(); }, 500); // Clear the interval clearInterval(popupCheckInterval); } } catch (e) { // This will throw a security error when the popup navigates to a different domain // Just ignore it - it's expected behavior } }, 500); // Set a timeout to clear the interval after 2 minutes setTimeout(function() { if (popupCheckInterval) { clearInterval(popupCheckInterval); } }, 120000); } else { console.error('Invalid AJAX response:', response); tempPopup.close(); alert('Error: Could not connect to Google. Please try again.'); } } catch (e) { console.error('Error parsing AJAX response:', e); tempPopup.close(); alert('Error: Could not connect to Google. Please try again.'); } } else { console.error('AJAX request failed:', xhr.status); tempPopup.close(); alert('Error: Could not connect to Google. Please try again.'); } } }; xhr.send(); } // Listen for messages from the popup window.addEventListener('message', function(event) { if (event.data && event.data.type === 'GOOGLE_SIGNIN_RESULT') { console.log('Received message from popup:', event.data); window.googleSignInMessageReceived = true; if (event.data.success) { window.googleSignInSuccess = true; // Refresh the page setTimeout(function() { window.location.reload(); }, 500); } } }, false);