In den kantonalen Parlamentswahlen erzielten die Sozialdemokraten insgesamt 22 zusätzliche Sitze: acht in St. Gallen, sieben in Basel-Stadt, vier in Schwyz, drei in Schaffhausen und einen im Thurgau; in Uri mussten sie einen Sitz abtreten. In den Regierungsratswahlen in Basel-Stadt ersetzte Eva Herzog (sp) den zurücktretenden Liberalen Ueli Vischer, in St. Gallen verdrängte Heidi Hanselmann (sp) den Christlichdemokraten Anton Grüninger, und in Uri schaffte die SP mit Markus Züst nach 1999 wieder den Sprung in die Regierung.

Flächendeckende Gewinne für die SP bei den kantonalen Wahlen 2004