Op de huidige plek van het stadhuis van Haarlem op de Grote Markt stond eerst het jachtslot voor de Graven van Holland, gebouwd in 1250. Graaf Floris V gebruikte dit jachtslot als woonhuis wanneer hij naar Haarlem kwam om belastinggeld te innen. Zijn vader Willem II koos Den Haag als vaste woonplaats, waarna hij het slot aan de stad schonk. Het jachtslot deed dienst als militair en bestuurlijk centrum. Na een grote stadsbrand in 1351 brandde het slot bijna helemaal af.
Na de herbouw werd het gebouw in gebruik genomen als stadhuis. Het stadhuis is een rechthoekig gebouw bestaande uit het Zaalgebouw en de Gravenzaal, met kantelen en een toren, werd in 1370 op dezelfde plaats opgericht. In de eeuwen daarop werden diverse verbouwingen uitgevoerd. De stadhuistoren werd tussen 1465 en 1468 opgetrokken, maar werd in 1772 afgebroken en pas in 1913 herbouwd.