Vigan is one of those places that looks almost too well preserved to be real, and the first question most people ask once they have decided to go is a boringly practical one: how do you actually get from Manila to Vigan? The honest answer is that there is no fast, elegant way to do it. Vigan has no commercial airport, so every route involves a long stretch of road no matter how much you spend. The good news is that the overnight bus is genuinely decent, the highways north have improved a lot, and you can do the whole trip for less than the price of a nice dinner in Makati.
Here is every option, what each one really costs, and which one I would pick depending on how much time you have.

The short version: your four realistic options
There are four ways people actually make this trip. Direct bus from Manila, which takes roughly 8 to 10 hours. Flying to Laoag and coming back down by land, which takes about 5 hours door to door but costs several times more. Driving yourself, which is around 7 to 8 hours if the traffic gods are kind. Or breaking the journey with a night somewhere along the coast, which is slower but far more pleasant.
Most travellers take the overnight bus, and for good reason. It is cheap, it runs constantly, and it converts a travel day into a night of imperfect sleep instead.
Option 1: Direct bus from Manila to Vigan
This is the default and it works well. Several operators run the route daily, and between them there are departures roughly every hour or two around the clock.
The main names to look for are Partas, Farinas Transit, Dominion Bus Lines and Viron. Partas is the one most travellers end up on, partly because it has the most departures and partly because its deluxe buses are the most comfortable of the bunch. Farinas is the old Ilocos workhorse and perfectly fine. Dominion runs a solid service too.
Terminals are spread around Metro Manila, which trips people up. Partas has terminals in Cubao (Quezon City) and Pasay, and there is also an Aurora Boulevard terminal. Farinas operates out of Sampaloc in Manila. Dominion is in Sampaloc as well. Check which terminal your ticket is actually for before you book a Grab, because getting to the wrong one costs you an hour you do not have.
Journey time: around 8 to 10 hours. Overnight departures tend to be quicker because Manila traffic is not eating the first two hours.
Fare: roughly PHP 800 to 1,100 depending on whether you take regular air conditioned or deluxe. Deluxe buses have fewer, wider seats and are worth the extra couple of hundred pesos on an overnight run.
Booking: you can book Partas and several others online, and for weekends, holidays and the Christmas period you absolutely should. On a random Tuesday you can usually just turn up.
Option 2: Fly to Laoag, then travel down to Vigan
Vigan itself has no commercial flights. The nearest airport with regular service is Laoag International in Ilocos Norte, about 80 kilometres north.
Philippine Airlines and Cebu Pacific both fly Manila to Laoag, and the flight is short, around 1 hour 15 minutes. From Laoag you then travel south to Vigan by bus or van, which takes roughly 2 hours and costs around PHP 200 to 300. Buses running the Laoag to Vigan stretch are frequent, and you can also arrange a private van or car if you are in a group.
Add the airport transfer, the check in buffer and the wait, and realistically you are looking at 5 hours or so from your Manila hotel to Vigan. That is a real saving over the bus, but only about 3 to 4 hours, and you will pay several times the bus fare for it.
When it makes sense: if you are planning to see Laoag, Pagudpud and the far north anyway, flying in and working your way south to Vigan is a genuinely good itinerary. If Vigan is your only stop, the maths is unconvincing.

Option 3: Driving yourself
The route north has become much less painful thanks to the expressway network. You take NLEX, then SCTEX, then TPLEX, which now runs all the way up to Rosario in La Union. From there it is the national highway along the coast through San Fernando, Candon and into Ilocos Sur.
Journey time: around 7 to 8 hours of actual driving, more if you stop properly for meals. Budget PHP 700 to 900 in expressway tolls plus fuel.
The advantage is obvious: you can stop at Hundred Islands, the surf towns of La Union, or Candon on the way, and you have a car in Vigan for day trips to Bantay, Santa Maria Church and the Baluarte area. The disadvantage is that you are driving eight hours on a highway shared with buses that overtake with a great deal of confidence.
Option 4: Break the trip along the coast
This is the option nobody plans and everybody enjoys. Instead of grinding out the whole thing in one go, stop overnight in San Juan, La Union, which is about 5 to 6 hours from Manila. Sleep, surf or eat, then continue the remaining 3 hours or so to Vigan the next morning in daylight.
You see the coastline, you arrive in Vigan able to function, and you have effectively added a destination for the cost of one night in a guesthouse. If you have the days to spare, this is what I would do.
Cost comparison at a glance
Direct bus: roughly PHP 800 to 1,100 one way. Around 8 to 10 hours. Cheapest and simplest.
Fly to Laoag plus land transfer: flight fares swing wildly, from around PHP 1,800 on a promo to PHP 5,000 or more at short notice, plus roughly PHP 200 to 300 for the onward leg. Around 5 hours total. Fastest.
Self drive: around PHP 700 to 900 in tolls plus fuel, so realistically PHP 3,000 to 4,000 for the car for the trip. Around 7 to 8 hours. Most flexible.
Split journey via La Union: bus fares in two legs, roughly the same total as direct, plus a night of accommodation from around PHP 1,500. Most enjoyable.
Which option should you choose
If you are on a normal budget and have a weekend, take the overnight deluxe bus on Friday, wake up in Vigan on Saturday, spend two nights, and bus back on Sunday night. That is the trip most people take and it works.
If you have money and not much time, fly to Laoag, but only if you will also see something in Ilocos Norte. Flying just to shave three hours off a Vigan trip is a poor trade.
If there are three or four of you, driving starts to look sensible on a per person basis, and it unlocks the entire Ilocos coast rather than just one town.

Practical things worth knowing before you go
Bring a jacket on the bus. Filipino long distance buses treat air conditioning as a competitive sport, and at 3am you will be grateful. A neck pillow and an eye mask genuinely change the overnight experience.
Buses make one or two comfort stops, usually at highway complexes with decent food. Do not count on being able to buy a real meal at 2am, so pack something.
Vigan bus terminals are a short tricycle ride from the heritage district, around PHP 50 to 80. Calle Crisologo itself is pedestrianised in the evenings, so your driver will drop you at the edge.
If you are continuing north or east afterwards, Vigan connects easily to Laoag, Pagudpud and inland to Abra. Once you are in Vigan, our guide to the best things to do in Vigan covers what is actually worth your time.
Quick FAQ
How long does the bus from Manila to Vigan take? Around 8 to 10 hours. Overnight services are usually at the faster end because they skip Manila traffic.
Is there an airport in Vigan? No commercial one. The nearest airport with regular flights is Laoag International, about 2 hours north of Vigan by road.
How much is the Manila to Vigan bus fare? Roughly PHP 800 to 1,100 one way, with deluxe buses at the upper end of that range.
Should I take a day bus or an overnight bus? Overnight if you want to save a day and do not mind sleeping upright. Day bus if you want to actually see the coastline, which is worth seeing.


