thumb|Mikko Hirvonen w prywatnym Fordzie Focusie WRC podczas Rajdu Grecji w 2005 roku Pod koniec 2003 roku Hirvonen zmienił zespół i 15 grudnia wraz z pilotem Lehtinenem podpisał kontrakt z fabryczną ekipą Subaru, 555 Subaru World Rally Team. W sezonie 2004 miał zastąpić rodaka Tommiego Mäkinena kończącego karierę i stał się drugim kierowcą zespołu obok Norwega Pettera Solberga. Swój debiut w Subaru zaliczył w styczniu 2004 roku w Rajdzie Monte Carlo. Jednak, podobnie jak rok wcześniej, nie ukończył go na 9. odcinku specjalnym z powodu wypadku i uszkodzeń auta. Kończąc Rajd Meksyku na 5. pozycji zdobył swoje pierwsze punkty jako kierowca Subaru. Natomiast w Rajdzie Argentyny był 4. za Carlosem Sainzem, Sébastienem Loebem i François Duvalem, osiągając swój najlepszy wynik w sezonie, jak i w karierze. W sezonie 2004 powtórzył go jeszcze w ostatnim rajdzie sezonu, Rajdzie Australii. Ogółem w sezonie wystartował w 16 rajdach, w których zdobył 29 punktów i zajął 7. pozycję. Zespół Subaru nie przedłużył z nim jednak kontraktu na sezon 2005.