Antara tahun 1981 dan 2010, St. Gallen mengalami rata-rata 141 hari hujan atau salju setiap tahun, dengan curah hujan 1,248 milimeter (49.1 in). Bulan terbasah adalah Juli, dengan curah hujan rata-rata 172 milimeter (6.8 inci) di St. Gallen. Curah hujan turun rata-rata 13.8 hari di bulan ini. Bulan-bulan dengan curah hujan terbesar adalah Juni dan Juli Mei. Februari adalah bulan terkering dalam setahun, dengan curah hujan rata-rata 57 milimeter (2.2 inci) selama 9.1 hari.
St Gallen terletak di Swiss utara di lembah 700 meter (2,300 kaki) di atas permukaan laut. Karena ini adalah salah satu kota tertinggi di Swiss, banyak salju yang turun di musim dingin. Kota ini terletak di antara Danau Constance dan Pegunungan Alpen Appenzell (puncak tertingginya adalah Säntis dengan ketinggian 2,502 meter (8,209 kaki)). Akibatnya, ia memiliki peluang rekreasi yang baik di dekatnya.
Semua bangunan di tingkat lembah harus didirikan di atas tumpukan karena pusat kota terletak di atas tanah berumput yang tidak stabil (penciptanya, Gallus, sedang mencari tempat pertapaan, bukan kota). Seluruh fondasi stasiun kereta api dan alun-alun, misalnya, dibangun di atas ratusan tiang pancang.
St. Gallen memiliki luas total 39.3 km2 pada tahun 2006. (15.2 sq mi). 31.1 persen dari tanah ini digunakan untuk pertanian, sementara 28.9 persennya adalah hutan. Sebagian besar lahan adalah pemukiman (bangunan atau jalan) dan sisanya (1.7 persen) tidak produktif (sungai atau danau).
St. Gallen memiliki tingkat pengangguran 2.69 persen pada tahun 2007. Pada tahun 2005, ada 336 orang yang bekerja di sektor ekonomi utama, dan sekitar 95 perusahaan aktif di bidang ini. Di sektor sekunder, 11,227 orang bekerja, dan 707 perusahaan beroperasi. Sektor tersier mempekerjakan 48,729 orang dan menampung 4,035 bisnis.
Tingkat pengangguran rata-rata pada Oktober 2009 adalah 4.5 persen. Di kotamadya terdapat 4857 usaha, 689 di antaranya berada di sektor sekunder ekonomi dan 4102 di sektor ketiga. Pada tahun 2000, ada 28,399 penduduk yang bekerja di kotamadya, 8,927 yang bekerja di luar St. Gallen, dan 31,543 yang pulang-pergi ke kotamadya.
Helvetia Insurance adalah perusahaan besar yang berbasis di St. Gallen.