Swoją działalność polityczną rozpoczął jako członek młodzieżówki Czeskiej Partii Socjaldemokratycznej. W latach 2002–2006 był jej przewodniczącym, wchodził też w skład władz europejskiej młodzieżówki socjalistycznej ECOSY. W latach 2005–2006 zajmował stanowisko doradcy premiera Jiříego Paroubka ds. zagranicznych[2].
W wyborach w 2006 uzyskał mandat deputowanego do Izby Poselskiej. Został członkiem Komisji ds. Zagranicznych i Komisji ds. Europejskich. W wyborach w 2010 utrzymał mandat. Objął stanowisko wiceprzewodniczącego komisji spraw zagranicznych i wiceprzewodniczącego frakcji deputowanych socjaldemokratów. W 2012 został wiceprzewodniczącym Izby Poselskiej. W kolejnych wyborach parlamentarnych w 2013, zakończonych zwycięstwem Czeskiej Partii Socjaldemokratycznej, uzyskał reelekcję[2]. 27 listopada tego samego roku wybrano go na przewodniczącego niższej izby czeskiego parlamentu[3], funkcję tę pełnił przez całą kadencję. W 2017 ponownie wszedł w skład Izby Poselskiej[4], po czym został jej pierwszym wiceprzewodniczącym.
W lutym 2018 został wybrany na przewodniczącego Czeskiej Partii Socjaldemokratycznej[5]. Kierowane przez niego ugrupowanie ostatecznie zdecydowało się na koalicję rządową z ANO 2011, dla której poparcie w parlamencie zadeklarowała Komunistyczna Partia Czech i Moraw[6]. 27 czerwca 2018 Jan Hamáček został pierwszym wicepremierem oraz ministrem spraw wewnętrznych w drugim rządzie Andreja Babiša. Dodatkowo jako p.o. objął obowiązki ministra spraw zagranicznych[7][8] (z uwagi na zablokowanie nominacji oficjalnego kandydata socjaldemokratów przez prezydenta Miloša Zemana[6]). Resortem spraw zagranicznych czasowo kierował do października 2018[9], gdy na jego czele stanął Tomáš Petříček. Ponownie pełniącym obowiązki ministra spraw zagranicznych był w kwietniu 2021[10].
W wyniku wyborów z października 2021 socjaldemokraci utracili poselską reprezentację, nie przekraczając wyborczego progu. W tym samym miesiącu Jan Hamáček zrezygnował z kierowania partią[11]. W grudniu 2021 zakończył pełnienie funkcji rządowych.
Życie prywatne
Dwukrotnie żonaty[12]; ma dwóch synów: Lukáša i Matyáša[1].