Sezon 2012 Hirvonen rozpoczął od zajęcia 4. miejsca w Rajdzie Monte Carlo. W lutowym Rajdzie Szwecji po raz trzeci z rzędu stanął na podium. Zajął 2. miejsce przegrywając o 16,6 sekundy z rodakiem Jarim-Mattim Latvalą. W marcu wystąpił w Rajdzie Meksyku i zajął w nim drugie miejsce, przegrywając jedynie z Loebem. Na początku kwietnia Hirvonen zwyciężył w Rajdzie Portugalii. W kilka godzin po tym rajdzie komisja FIA zdyskwalifikowała Fina w związku z nieprzepisowymi elementami w jego samochodzie, takimi jak sprzęgło i koło w turbinie. Zwycięzcą rajdu został więc Norweg Mads Østberg. Zespół Citroëna złożył w tej sprawie odwołanie, jednak dyskwalifikacja fińskiego kierowcy została utrzymana. W kwietniowym Rajdzie Argentyny Hirvonen był drugi. Przegrał jedynie z Loebem. Podobna sytuacja miała miejsce w kolejnych trzech rajdach. Zarówno w Rajdzie Grecji, Rajdzie Nowej Zelandii, jak i Rajdzie Finlandii Hirvonen przyjeżdżał na metę jako drugi za Loebem. W Rajdzie Niemiec był trzeci, a w Rajdzie Wielkiej Brytanii piąty. W październikowym Rajdzie Sardynii Hirvonen objął prowadzenie po 3. odcinku specjalnym. Ostatecznie wygrał ten rajd z przewagą ponad minutę nad Rosjaninem Jewgienijem Nowikowem. Było to tym samym piętnaste w karierze zwycięstwo Fina. W ostatnim rajdzie sezonu, Rajdzie Hiszpanii, był trzeci za Loebem i Latvalą. Wywalczył tym samym swoje czwarte w karierze wicemistrzostwo świata.